跳至主内容
非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

硬件加速

Jellyfin 服务器可通过集成或独立显卡(GPU)实现实时视频转码卸载,高效加速此类工作负载而无需占用 CPU 资源。

支持的加速方式

Jellyfin 服务器使用定制版 FFmpeg 作为转码器,即 jellyfin-ffmpeg。这使 Jellyfin 能够访问已安装 GPU 厂商和操作系统提供的固定功能视频编解码器、视频处理器及 GPGPU 计算接口。

经测试支持的视频硬件加速(HWA)方案包括:

  • Intel Quick Sync Video (QSV)

  • NVIDIA NVDEC/NVENC (NVENC)

  • AMD Advanced Media Framework (AMF)

  • Intel/AMD Video Acceleration API (VA-API,仅限 Linux)

  • Apple Video Toolbox (仅限 macOS)

  • Rockchip RKMPP (仅限 Linux)

完全加速与部分加速

转码流程通常包含多个阶段,可简化为:

  • 视频解码

  • 视频去隔行扫描(可选)

  • 视频缩放与格式转换(可选)

  • 视频 HDR/DV 色调映射(可选)

  • 视频字幕烧录(可选)

  • 视频编码

  • 上述阶段的零拷贝传输

备注

部分阶段因软件、硬件或驱动程序限制无法启用 GPU 加速。

部分加速可能导致 CPU 占用升高和转码速度下降。

Jellyfin 支持完全加速的场景:

  • Windows/Linux 平台主流 Intel 和 Nvidia GPU

  • Linux 平台通过 VA-API 和 Vulkan 互操作的 AMD Polaris 及以上架构 GPU

  • Windows 平台旧款 AMD GPU

  • RK3588/3588S 的 Rockchip VPU

  • macOS 12 及以上平台的 Intel 和 Apple Silicon 芯片

强烈建议搭配使用 jellyfin-ffmpeg,其版本号带有 -Jellyfin 后缀。

$ /usr/lib/jellyfin-ffmpeg/ffmpeg

ffmpeg version 6.0.1-Jellyfin Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (crosstool-NG 1.25.0.90_cf9beb1)
...
注意

使用其他来源的 FFmpeg 二进制文件将导致部分加速失效。

jellyfin-ffmpeg 通常随 deb 安装包、官方 Docker 镜像和 Windows 安装程序提供。

唯一例外是便携版安装或不受支持的系统发行版,此时需手动下载并在 Jellyfin 中配置。

配置与验证硬件加速

启用硬件加速前需完成若干准备工作。

具体配置步骤因 GPU 厂商、安装方式和操作系统而异。

Linux 系统可通过 lspci 命令检测可用 GPU:

lspci -nn | grep -Ei "3d|display|vga"

或使用 lshw

lshw -C display

请参考下表为您的硬件选择最佳加速方案:

GPU VendorWindowsmacOSLinux
AMDAMF (Windows)VideoToolboxVAAPI (AMD)
AppleN/AVideoToolboxN/A
IntelQSV (Windows)VideoToolboxQSV (Linux)
NvidiaNVENC (Windows)N/ANVENC (Linux)
RockchipN/AN/ARKMPP

远程硬件加速

若您的 Jellyfin 服务器不支持硬件加速,但您拥有另一台支持此功能的机器,可通过 rffmpeg 将转码任务委派给远程设备。

备注

当前仅支持 Linux 系统,需满足以下条件:

  • 机器间建立 SSH 连接
  • 媒体文件和 Jellyfin 数据目录使用共享存储

硬件加速色调映射

Jellyfin 支持 HDR10 和 HLG 到 SDR 的硬件加速色调映射。

Dolby Vision(P5 和 P8)到 SDR 的色调映射在 Jellyfin 10.8 版本起支持,需使用 jellyfin-ffmpeg 5.0.1-5 或更高版本。

备注
  • Linux 平台下 Intel QSV 和 VA-API 支持 Intel VPP HDR10 色调映射
  • 若同时启用多种色调映射选项,将优先使用 VPP
  • Rockchip RKMPP 在 Jellyfin 10.11 及以上版本中支持 Dolby Vision 色调映射

硬件加速实用技巧

  • 避免使用 H.264/AVC 10-bit 视频

    提示

    当前所有 Intel/NVIDIA/AMD GPU 均不支持 H.264/AVC 10-bit(High 10 配置)视频的硬件解码,仅 Apple Silicon 和 Rockchip 芯片支持。若无可用硬件解码器,Jellyfin 将自动切换至软件解码。建议将此类型视频升级至 H.265/HEVC 10-bit(Main 10 配置)。

  • iGPU/APU 建议搭配双通道内存

    提示

    集成显卡需占用部分系统内存作为显存,采用双通道内存可使显存带宽翻倍。该配置在处理硬件级 HDR/DV 色调映射等高负载任务时效果显著。

  • 使用 SSD 或内存盘缓存数据

    提示

    现代 GPU 的视频转码峰值吞吐量可能受限于机械硬盘 I/O 速度。此时可采用 SSD 或内存盘缓存转码生成的临时视频分段。

  • 调整编码器预设平衡质量与速度

    提示

    硬件编码器预设值显著影响编码速度。您可在 Jellyfin 控制面板中:

    • 降低预设值:牺牲画质换取最大转码速度
    • 提高预设值:在性能过剩的 GPU 上优化画质

Raspberry Pi 硬件加速支持弃用说明

Jellyfin 10.8 曾通过 OpenMAX OMX 支持 Raspberry Pi 硬件加速,10.9 版本通过 V4L2 提供部分支持。但该支持始终未达到其他加速方案的成熟度。由于缺乏完整的硬件加速能力,多数操作仍依赖本已性能不足的 CPU 处理。随着最新 Raspberry Pi 5 发布(完全未配备硬件编码器),针对此平台的硬件加速开发已失去实际意义。

因此我们遗憾决定弃用 Raspberry Pi 的 V4L2 支持。虽然当前版本可能仍可运行,但未来 Linux 内核或 FFmpeg 的更新可能导致功能中断,我们将不再修复相关问题。若后续 Raspberry Pi 型号重新引入硬件编码器,此决定可能被撤销。