top


Vidwall Hub

Release Downloads Homebrew macOS 26+

简体中文 • Vidwall • Contact & Support • Changelog

Vidwall Hub AppStore

minimum OS requirement: macOS Tahoe 26+

Vidwall Hub

Vidwall Hub

Vidwall Hub is a tool that lets you import videos (mp4, mov, m4v) into the system wallpaper service and use them as lock screen animations in System Settings → Wallpaper. It supports macOS 26 and macOS 27.

When trying to implement both dynamic wallpapers and dynamic lock screens through the Vidwall app, this feature could not be realized due to macOS sandbox restrictions. Therefore, I created a standalone version of the tested code and provide it for free, as a complement to Vidwall. macOS does not provide a public API for setting a dynamic lock screen. Vidwall Hub registers videos in the system Aerial wallpaper catalog and writes the current wallpaper configuration; after import you can also view or switch them in System Settings.

Brew install

# Installation (automatically installs to /Applications)
$ brew install --cask jaywcjlove/tap/vidwall-hub

URL Scheme

Vidwall Hub allows activating the tool via URL and automatically importing a video based on the file path parameter in the URL.

vidwallhub://open?file=/file/to/path/video.mp4

Lock Screen (macOS 26 / macOS 27)

macOS has no public API for setting a dynamic lock screen. Vidwall Hub still uses the system Aerial wallpaper path (user-level, no administrator privileges). The directories are the same as on macOS 26:

~/Library/Application Support/com.apple.wallpaper/aerials/manifest/entries.json
~/Library/Application Support/com.apple.wallpaper/aerials/videos/<UUID>.mov
~/Library/Application Support/com.apple.wallpaper/aerials/thumbnails/<UUID>.png
~/Library/Application Support/com.apple.wallpaper/Store/Index.plist

Import only patches Vidwall’s own category and asset entries. It does not rewrite the entire system Aerial catalog.

Shared workflow:

  1. Load system manifest: Read entries.json (parse only; do not rewrite the whole file).
  2. Create Vidwall category (first time): If the Vidwall category does not exist, create a Vidwall Videos category and its subcategory.
  3. Generate asset entries: Create an asset for each imported video and patch it into entries.json (video URLs use the file:// scheme).
  4. Write thumbnails: Generate a PNG thumbnail from the first video frame.
  5. Write video files: See the OS-specific notes below.
  6. Set as current wallpaper: Write Store/Index.plist so the imported assetID is com.apple.wallpaper.choice.aerials.
  7. Refresh wallpaper services: Restart WallpaperAgent and the related Aerial extensions so the system reloads the assets.
  8. Delete: Remove the entry and its files. If the deleted item is the current wallpaper, retarget to another Vidwall video or a built-in Aerial so System Settings does not keep a ghost item or wipe the default wallpaper list.

macOS 26:

macOS 27:

WallpaperAerialsExtension on macOS 27 requires HEVC temporal scalability (tscl / tsas). Typical user videos do not include these sample groups, so the lock screen freezes or goes black after the first unlock.

Resource usage notes:

macOS 15 is not supported yet

/Library/Application Support/com.apple.idleassetsd/Customer/4KSDR240FPS
/Library/Application Support/com.apple.idleassetsd/Customer/entries.json