media-preview-generator

media-preview-generator

Docker-Anwendung from stevezau's Repository

Übersicht

Generate video preview thumbnails for Plex, Emby and Jellyfin with GPU acceleration support. One FFmpeg pass writes the right format for each server (Plex BIF bundle, Emby sidecar BIF, Jellyfin trickplay tiles).

This template seeds a Plex connection below; add Emby/Jellyfin servers (any mix) from the web UI after first start.

Features:

  • Web UI with setup wizard for easy configuration
  • Plex OAuth authentication (no manual token needed)
  • GPU acceleration (NVIDIA, Intel QuickSync, AMD)
  • Background processing with job queue
  • Real-time progress display
  • Scheduled generation via cron expressions
  • Browser notifications when jobs complete

The web interface is available at http://[IP]:8080 after starting the container.
A setup wizard will guide you through connecting to your Plex server.

IMPORTANT - NETWORKING:
If your Plex container uses a custom network (like br1 or macvlan), this container
must use the SAME network to communicate with Plex. Change the Network Type setting
to match your Plex container's network.

For Intel QuickSync, /dev/dri is passed through automatically (see GPU Device below).

For NVIDIA GPU support, you must:

  1. Install NVIDIA driver and nvidia-container-toolkit on Unraid
  2. Add --runtime=nvidia to Extra Parameters
  3. Or use the Nvidia-Driver and nvidia-container-toolkit plugins from Community Applications
  4. Add NVIDIA_DRIVER_CAPABILITIES=all to the environment variables below (the 'graphics' capability is required for Dolby Vision Profile 5 thumbnails; 'compute,video,utility' alone only covers NVDEC and nvidia-smi).

Laufzeit-Argumente

Web-UI
http://[IP]:[PORT:8080]/
Netzwerk
bridge
Shell
bash
Privilegiert
false
Extra Params
--restart=unless-stopped

Konfiguration der Vorlage

Web UI PortPorttcp

Port for the web interface

Ziel
8080
Standard
8080
Wert
8080
Plex URLVariable

URL to your Plex Media Server (use IP address, not localhost)

Ziel
PLEX_URL
Standard
http://192.168.1.100:32400
Plex TokenVariable

Plex authentication token. Find it at: https://support.plex.tv/articles/204059436-finding-an-authentication-token-x-plex-token/ (or use OAuth via Web UI)

Ziel
PLEX_TOKEN
Media PathPathro

Path to your media files on Unraid (read-only)

Ziel
/media
Standard
/mnt/user/media
Wert
/mnt/user/media
Plex Data PathPathrw

Path to Plex application data where previews will be stored

Ziel
/plex
Standard
/mnt/user/appdata/plex/Library/Application Support/Plex Media Server
Wert
/mnt/user/appdata/plex/Library/Application Support/Plex Media Server
Config PathPathrw

Path to store configuration, schedules, and job history

Ziel
/config
Standard
/mnt/user/appdata/media-preview-generator
Wert
/mnt/user/appdata/media-preview-generator
Local Videos PathVariable

How this container sees media (usually /media)

Ziel
PLEX_LOCAL_VIDEOS_PATH_MAPPING
Standard
/media
Wert
/media
Plex Videos PathVariable

How Plex sees media (if different from this container's path)

Ziel
PLEX_VIDEOS_PATH_MAPPING
Frame Interval (seconds)Variable

Seconds between each preview frame (default: 5). Migrated to settings.json on first start.

Ziel
PLEX_BIF_FRAME_INTERVAL
Standard
5
Wert
5
Thumbnail QualityVariable

Preview image quality 1-10, higher = better quality but larger files (default: 4). Migrated to settings.json on first start.

Ziel
THUMBNAIL_QUALITY
Standard
4
Wert
4
CPU ThreadsVariable

Number of parallel CPU workers for fallback (default: 1). Migrated to settings.json on first start. GPU config (enable/disable, workers per GPU) is in Web UI Settings.

Ziel
CPU_THREADS
Standard
1
Wert
1
Auth Token OverrideVariable

Optional: Override the authentication token. If empty, use the token set during the setup wizard (or auto-generated if skipped)

Ziel
WEB_AUTH_TOKEN
Web PortVariable

Internal port for web server (usually matches Web UI Port)

Ziel
WEB_PORT
Standard
8080
Wert
8080
PUIDVariable

User ID for file permissions (99 = nobody on Unraid)

Standard
99
Wert
99
PGIDVariable

Group ID for file permissions (100 = users on Unraid)

Standard
100
Wert
100
UMASKVariable

File permission mask

Standard
022
Wert
022
Intel GPU DeviceDevice

Pass through Intel GPU for QuickSync acceleration

Ziel
/dev/dri
Standard
/dev/dri
Wert
/dev/dri
NVIDIA Driver CapabilitiesVariable

NVIDIA driver capabilities to inject into the container. Use 'all' (recommended) so the 'graphics' capability is included — this is required for Dolby Vision Profile 5 thumbnails (libplacebo Vulkan tone-mapping). 'compute,video,utility' alone only covers CUDA/NVDEC and will NOT give you DV5 support. Only applied if you also set --runtime=nvidia in Extra Parameters.

Ziel
NVIDIA_DRIVER_CAPABILITIES
Standard
all
Wert
all
NVIDIA Visible DevicesVariable

Which NVIDIA GPUs to expose (e.g. 'all', or a specific UUID). Only applied if you also set --runtime=nvidia in Extra Parameters.

Ziel
NVIDIA_VISIBLE_DEVICES
Log LevelVariable

Logging level: DEBUG, INFO, WARNING, ERROR

Ziel
LOG_LEVEL
Standard
INFO
Wert
INFO

Einzelheiten

Repository
stevezzau/media_preview_generator:latest
Zuletzt aktualisiert2026-05-31
Erstmals gesehen2026-05-27

Führen Sie media-preview-generator auf Unraid aus.

media-preview-generator ist gelistet in Community Apps für Unraid OS. Erkunden Sie Unraid, um einen flexiblen Heimserver, ein NAS oder ein Heimlabor aufzubauen.