
stevezzau/plex_generate_vid_previews为Plex媒体服务器提供GPU加速的视频预览缩略图生成功能。
问题:Plex内置的预览生成速度极慢。
解决方案:本工具利用GPU加速和并行处理技术,将预览生成速度提升5-10倍。
| 特性 | 描述 |
|---|---|
| 多GPU支持 | 兼容NVIDIA、AMD、Intel及Windows GPU |
| 并行处理 | 可配置GPU和CPU工作线程数 |
| GPU到CPU fallback | 可选CPU工作线程,用于GPU解码失败时的 fallback |
| 硬件加速 | 支持CUDA、VAAPI、D3D11VA、VideoToolbox |
| 库过滤 | 可指定处理特定Plex媒体库 |
| 质量控制 | 可调节缩略图质量(1-10) |
| Docker就绪 | 预构建的GPU支持镜像 |
| Web控制台 | 管理任务、调度和状态 |
| 自动化调度 | 支持Cron和基于时间间隔的自动化 |
| Radarr/Sonarr集成 | Webhook集成,实现导入时自动处理 |
bashdocker run -d \ --name plex-generate-previews \ --restart unless-stopped \ -p 8080:8080 \ --device /dev/dri:/dev/dri \ -e PUID=1000 \ -e PGID=1000 \ -v /path/to/media:/media:ro \ -v /path/to/plex/config:/plex:rw \ -v /path/to/app/config:/config:rw \ stevezzau/plex_generate_vid_previews:latest
然后打开 [***],从容器日志中获取认证令牌,完成设置向导。
bashdocker logs plex-generate-previews | grep "Token:"
或通过 -e WEB_AUTH_TOKEN=你的密码 设置固定令牌。
| 容器路径 | 用途 | 权限 |
|---|---|---|
/media | 媒体文件 | ro(只读) |
/plex | Plex应用数据(BIF文件存储位置) | rw |
/config | 应用设置、调度任务、任务历史 | rw |
yamlservices: plex-previews: image: stevezzau/plex_generate_vid_previews:latest container_name: plex-generate-previews restart: unless-stopped ports: - "8080:8080" # Intel / AMD GPU (VAAPI) devices: - /dev/dri:/dev/dri # NVIDIA: 移除上方'devices'配置,取消下方注释 # deploy: # resources: # reservations: # devices: # - driver: nvidia # count: all # capabilities: [gpu] environment: # NVIDIA专用(使用NVIDIA时取消注释): # - NVIDIA_VISIBLE_DEVICES=all # - NVIDIA_DRIVER_CAPABILITIES=compute,video,utility - PUID=1000 - PGID=1000 volumes: - /path/to/your/media:/media:ro - /path/to/plex/config:/plex:rw - /path/to/app/config:/config:rw
yamlservices: plex-previews: image: stevezzau/plex_generate_vid_previews:latest container_name: plex-generate-previews restart: unless-stopped ports: - "8080:8080" environment: - GPU_THREADS=0 - CPU_THREADS=8 - PUID=1000 - PGID=1000 volumes: - /path/to/your/media:/media:ro - /path/to/plex/config:/plex:rw - /path/to/app/config:/config:rw
| GPU类型 | 平台 | 加速方式 | Docker标志 |
|---|---|---|---|
| NVIDIA | Linux | CUDA/NVENC | --gpus all |
| AMD | Linux | VAAPI | --device /dev/dri |
| Intel | Linux | QuickSync/VAAPI | --device /dev/dri |
| 所有类型 | Windows | D3D11VA | 仅原生支持 |
| Apple Silicon | macOS | VideoToolbox | 仅原生支持 |
前提条件:安装NVIDIA驱动和NVIDIA Container Toolkit。
bashdocker run -d \ --gpus all \ -e NVIDIA_VISIBLE_DEVICES=all \ -e NVIDIA_DRIVER_CAPABILITIES=compute,video,utility \ -p 8080:8080 \ -v /path/to/media:/media:ro \ -v /path/to/plex/config:/plex:rw \ -v /path/to/app/config:/config:rw \ stevezzau/plex_generate_vid_previews:latest
将CPU工作线程设为0,CPU Fallback工作线程设为1(或更高),可使主要处理在GPU上进行,同时允许CPU重试不支持的编解码器。
所有设置可在Web界面(设置页面)配置。环境变量为可选覆盖项。
| 变量 | 默认值 | 描述 |
|---|---|---|
PLEX_URL | (向导设置) | Plex服务器URL(例如 [***]) |
PLEX_TOKEN | (向导设置) | Plex认证令牌(通过OAuth向导自动设置) |
PLEX_CONFIG_FOLDER | (向导设置) | Plex配置文件夹路径 |
GPU_THREADS | 1 | GPU工作线程数(0-32) |
CPU_THREADS | 1 | CPU工作线程数(0-32) |
FALLBACK_CPU_THREADS | 0 | GPU失败时的CPU fallback工作线程数(0-32) |
THUMBNAIL_QUALITY | 4 | 预览质量1-10(2=最高) |
PLEX_BIF_FRAME_INTERVAL | 5 | 预览图像间隔秒数(1-60) |
PLEX_LIBRARIES | 所有 | 逗号分隔的库名称或ID |
PUID | 1000 | 用户ID(Unraid: 99) |
PGID | 1000 | 组ID(Unraid: 100) |
WEB_PORT | 8080 | Web服务器端口 |
WEB_AUTH_TOKEN | 自动生成 | 固定认证令牌 |
LOG_LEVEL | INFO | 日志级别:DEBUG、INFO、WARNING、ERROR |
TMP_FOLDER | 系统默认 | 处理用临时文件夹 |
PLEX_TIMEOUT | 60 | Plex API超时秒数 |
在Community Applications中搜索"plex-generate-previews",或手动运行:
bashdocker run -d \ --name plex-generate-previews \ --restart unless-stopped \ -p 8080:8080 \ --device /dev/dri:/dev/dri \ -e WEB_AUTH_TOKEN=我的密码 \ -e PUID=99 \ -e PGID=100 \ -v /mnt/user/data/plex:/data/plex:ro \ -v "/mnt/cache/appdata/plex/Library/Application Support/Plex Media Server":/plex:rw \ -v /mnt/user/appdata/plex-generate-previews:/config:rw \ stevezzau/plex_generate_vid_previews:latest
| GPU线程 | CPU线程 | 适用场景 |
|---|---|---|
| 1 | 1 | 默认配置(适用于所有硬件) |
| 4 | 2 | 平衡配置(中端系统) |
| 8 | 4 | 高端系统 |
| 0 | 8 | 仅CPU模式 |
可在Web界面的设置中配置。
init: true:此容器使用s6-overlay,init: true会导致故障。localhost,请使用[***],而非http://localhost:32400。完整文档请参见GitHub:
MIT许可证。详情参见LICENSE。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务