Skip to content

Choosing Engines

Taiizor edited this page Jun 19, 2026 · 4 revisions

Choosing Engines

Sucrose renders each wallpaper through one of eight separate rendering engines, and you decide which engine handles each wallpaper type on the Settings → Wallpaper page. This page is the task-oriented guide to picking an engine per type and to the cross-engine global toggles (Hardware Acceleration, Stay Awake, Stretch, Loop, Shuffle, Background Image, Input) that live on the same page. For the deep technical breakdown of every engine, see Engines Overview; for the per-setting reference table, see Settings Wallpaper.

Contents

Why the engine matters

A wallpaper has a type (Gif, Url, Web, Video, YouTube, Application). Sucrose maps each type to a configurable engine; the chosen engine .exe is launched as a child process and draws into the desktop behind your icons. Different engines use different underlying technologies (libmpv, WebView2, CEF, WPF MediaElement, in-house GIF decoders, or external process embedding), so the engine you pick affects:

  • Compatibility — which file formats and features work.
  • Performance — CPU/GPU/RAM cost.
  • Interactivity — only the browser engines forward mouse/keyboard and inject the Audio API / System API data.
  • Runtime requirements — some engines need an extra runtime (WebView2 runtime, VC++ redistributable) or a minimum Windows version.

Changing an engine selection (like most wallpaper settings) is applied live — Sucrose kills and restarts the running engine. Expect a brief flicker when you switch.

The six types and their selectable engines

Each type only offers the engines that can render it. The Portal UI only lists compatible engines, so you cannot accidentally pick an incompatible one.

Type Selectable engines Default engine
Gif Vexana, Xavier, WebView, CefSharp, MpvPlayer, VlcPlayer MpvPlayer
Video Nebula, WebView, CefSharp, MpvPlayer, VlcPlayer MpvPlayer
Url WebView, CefSharp CefSharp
Web WebView, CefSharp CefSharp
YouTube WebView, CefSharp CefSharp
Application Aurora (only) Aurora

The underlying EngineType enum order is AuroraLive, NebulaLive, VexanaLive, XavierLive, WebViewLive, CefSharpLive, MpvPlayerLive, VlcPlayerLive. Per-type sub-enums restrict which engines a given type may use.

flowchart LR
    subgraph Types
      G["Gif"]
      V["Video"]
      U["Url"]
      W["Web"]
      Y["YouTube"]
      A["Application"]
    end
    subgraph Engines
      Mpv["MpvPlayer"]
      Vlc["VlcPlayer"]
      Neb["Nebula"]
      Vex["Vexana"]
      Xav["Xavier"]
      WV["WebView"]
      Cef["CefSharp"]
      Aur["Aurora"]
    end
    G -->|default| Mpv
    G --> Vex
    G --> Xav
    G --> WV
    G --> Cef
    V -->|default| Mpv
    V --> Neb
    V --> WV
    V --> Cef
    G --> Vlc
    V --> Vlc
    U -->|default| Cef
    U --> WV
    W -->|default| Cef
    W --> WV
    Y -->|default| Cef
    Y --> WV
    A -->|default| Aur
Loading

Changing an engine per type

  1. Open the Portal.
  2. Click the Settings button in the top toolbar, then open the Wallpaper settings page.
  3. Each type has its own engine ComboBox:
    • Gif Player (Gif key, in the Extensions area)
    • Video Player (Video key, in the Extensions area)
    • Url Player (Url key, in the Engines area)
    • Web Player (Web key, in the Engines area)
    • YouTube Player (YouTube key, in the Engines area)
    • Application Player (Application key, in the Engines area)
  4. Pick the engine you want. The change is saved to Engine.json and the live wallpaper restarts with the new engine.

📷 Screenshot needed: Portal → Settings → Wallpaper page showing the per-type engine selector ComboBoxes (Gif/Video/Url/Web/YouTube/Application Player).

Default engines

Out of the box:

  • Gif and Video → MpvPlayer. MpvPlayer (libmpv) is the most format-robust and ships its own native libmpv-{arch}.dll, so it needs no external install (requires Windows 10 1607 / Anniversary Update or newer).
  • Url, Web, and YouTube → CefSharp. CefSharp (Chromium Embedded Framework) is the default browser engine and serves the theme through a built-in local HTTP server.
  • Application → Aurora. Aurora is the only engine that can embed an external program/game as a wallpaper.

Defaults are platform-conditional and resolved from Sucrose.Shared.Space.Manage.Internal (GifEngine = MpvPlayer, VideoEngine = MpvPlayer, UrlEngine = CefSharp, WebEngine = CefSharp, YouTubeEngine = CefSharp, ApplicationEngine = Aurora).

Global wallpaper toggles

The same Settings → Wallpaper page also exposes cross-engine options that apply regardless of which engine you choose. All keys are stored in Engine.json.

Setting Key Default Options / effect
Hardware Acceleration HardwareAcceleration true GPU-accelerates rendering. ON → MpvPlayer hwdec=auto-safe, WebView --enable-gpu, CefSharp enable-gpu=1. OFF disables GPU per engine.
Stay Awake StayAwake false Prevents the system from sleeping / showing the screensaver while a wallpaper is running.
Stretch Mode StretchType UniformToFill None, Fill, Uniform, UniformToFill — how media is scaled to the screen.
Loop Mode WallpaperLoop true Loops video/GIF playback.
Shuffle Mode WallpaperShuffle true Shuffles when multiple sources are available.
Background Image BackgroundImage false Also sets/resets the static desktop wallpaper (a fallback image behind the live wallpaper).
Input Mode InputType MouseKeyboard Close, OnlyMouse, OnlyKeyboard, MouseKeyboard — which input is forwarded to interactive wallpapers.
Input module InputModuleType RawInput Only RawInput is available (the Native option is disabled in current builds).
Input on desktop InputDesktop false Forwards input only when the desktop is shown.
Screen Layout ScreenType DisplayBound How the wallpaper maps to the display(s).
Crash Mode CrashExplorer false Restart Explorer if the engine crashes.

Input matters for interactivity. Mouse/keyboard input is only forwarded by the browser engines (WebView, CefSharp) and by Aurora — the GIF and pure-video engines (MpvPlayer for media playback, VlcPlayer, Nebula, Vexana, Xavier) are non-interactive renderers.

For the complete annotated table of every Wallpaper-page setting, see Settings Wallpaper.

Runtime auto-download prompts

Two browser/video engines depend on an external runtime and will offer to download it if it is missing:

  • WebView needs the Microsoft Edge WebView2 runtime ≥ 131.0.2903.70. If it is missing or older, the engine shows a dialog (Continue / Download / Remember / Close); Download silently installs the WebView2 bootstrapper, Remember snoozes the prompt for 1 day.
  • CefSharp needs the Visual C++ Redistributable ≥ 14.40.33816.0. If too old, the engine shows the same Continue / Download / Remember / Close dialog and can fetch VC_redist.{arch}.exe.
  • MpvPlayer does not download anything (it ships its own libmpv) but requires Windows 10 1607 (Anniversary Update) or newer; on older Windows it shows a warning and closes.

See Runtime Dependencies for the full list and download links.

Quick recommendations

  • Most GIFs/videos: keep the default MpvPlayer — it is the most format-robust and ships its own codec stack.
  • A video format MpvPlayer struggles with, or you want a lighter player: try Nebula (WPF MediaElement, uses OS codecs) — note it can only play formats Windows already supports.
  • A self-contained video/GIF engine as an alternative to libmpv: try VlcPlayer (bundles libVLC; same role as MpvPlayer, handy if a format misbehaves under one of them).
  • Pure WPF GIF playback without Chromium/libmpv: Vexana (in-house frame parser) or Xavier (XamlAnimatedGif, can also stream remote GIFs).
  • Interactive / audio-reactive / system-data web wallpapers: these must be the Web type rendered by WebView or CefSharp — no other engine injects live data into content.
  • WebView vs CefSharp: WebView is the everything-capable browser (Gif/Url/Web/Video/YouTube via file:/// serving and the evergreen Edge runtime); CefSharp is the default for Url/Web/YouTube and serves via a local HTTP server. Choose WebView if you would rather not install the VC++ redistributable; choose CefSharp if WebView2 is unavailable on your machine.
  • Run a game/app/screensaver as a wallpaper: Application type → Aurora (one instance per monitor).

See also

Home

Getting Started

Wallpaper Types

Using Sucrose

Settings Reference

Creating Wallpapers

Engine Reference

Automation & Command Line

Architecture & Internals

Data, Files & Diagnostics

Building & Contributing

Help & Support

Clone this wiki locally