Wallpaper Engine Wiki
Advertisement

You can control Wallpaper Engine with command line arguments to, for example, pause or stop all wallpapers, change wallpapers or even change settings of running wallpapers.

Make sure Wallpaper Engine is already running and then send a command to it by running the main process of the program, wallpaper32.exe (or wallpaper64.exe), with any of the command arguments listed below. You can find the process in the installation folder, by default it is located here: C:\Program Files (x86)\Steam\steamapps\common\wallpaper_engine\wallpaper32.exe.

💡 Pro tip: You can run the command from a shortcut, a macro binding or any script/code of your choice.


Commands

All commands are issued as a value for the -control parameter. For example, the pause command would be run like this:

wallpaper32.exe -control pause


Make sure to use the double quote " character for strings that have spaces in them:

wallpaper32.exe -control openWallpaper -file "C:\Program Files (x86)\Steam\steamapps\common\wallpaper_engine\projects\myprojects\myWallpaper\project.json"


Pause

Pauses all wallpapers.

-control pause

Stop

Stops all wallpapers.

-control stop

Play

Resumes all wallpapers from pause or stop.

-control play

Mute

Mutes all wallpapers.

-control mute

Unmute

Mutes all wallpapers.

-control unmute

Open Wallpaper

Loads a new wallpaper for a given monitor or the first monitor if none was specified. You can use either the location or monitor parameter to choose which monitor to load the wallpaper on, or open a wallpaper in a window with the playInWindow parameter.

-control openWallpaper -file <string> [-location <string>] [-monitor <number>]
        [-playInWindow <string>] [-width <number>] [-height <number>]
        [-x <number>] [-y <number>] [-preset <string>]
  • file: Path to the project.json of the wallpaper you want to open or direct path to wallpaper file (.mp4 etc).
  • location (optional): Internal identifier of the monitor. You can find these in the config.json file and they are generated by your PC.
  • monitor (optional): Index of the monitor to load the wallpaper on, begins with 0.
  • preset (optional): Name of the local preset to load, the local preset must have been created and saved by you before.
  • playInWindow (optional): Name of the window if you want to open/control multiple wallpapers in a window.
  • width (optional): Width of window.
  • height (optional): Height of window.
  • x (optional): Horizontal position of window.
  • y (optional): Vertical position of window.

Open Playlist

Loads a new wallpaper for a given monitor or the first monitor if none was specified. You can use either the location or monitor parameter to choose which monitor to load the wallpaper on.

-control openPlaylist -playlist <string> [-location <string>] [-monitor <number>]
  • playlist: Name of the playlist you have created and saved in Wallpaper Engine.
  • location (optional): Internal identifier of the monitor. You can find these in the config.json file and they are generated by your PC.
  • monitor (optional): Index of the monitor to load the playlist on, begins with 0.

Close Wallpaper

Closes a wallpaper on given monitor or window or all wallpapers.

-control closeWallpaper [-location <string>] [-monitor <number>]
  • location (optional): Internal identifier of the monitor or the window name you specified.
  • monitor (optional): Index of the monitor to close the wallpaper from, begins with 0.

Apply Properties

Applies wallpaper properties on-the-fly to a given wallpaper or all wallpapers. This allows you to dynamically change any properties while the program is running without opening the wallpaper browser and manually changing them. You can find a list of available properties in the browser easily by clicking on Share JSON on the right side of any wallpaper.

-control applyProperties -properties <JSON> [-location <string>] [-monitor <number>]
  • properties: Properties defined as JSON string to be applied. The String must be specially escaped with RAW~( and )~END as delimiters - see examples below!
  • location (optional): Internal identifier of the monitor or the window name you specified.
  • monitor (optional): Index of the monitor to update the properties on, begins with 0.

Examples

Change the playback rate to 10 like this:

-control applyProperties -properties RAW~({"rate":10})~END

Change the scheme color to red like this:

-control applyProperties -properties RAW~({"schemecolor":"1 0 0"})~END

Next Wallpaper

Skips to the next wallpaper of a given monitor or all monitors if none specified.

-control nextWallpaper [-location <string>] [-monitor <number>]

Hide Icons

Hides the desktop icons.

-control hideIcons

Show Icons

Shows the desktop icons.

-control showIcons


Advertisement