XanderYe的个人小站

Jellyfin 开启 Intel Quick Sync 提升性能

2021.11.23 建议查看教程:为 jellyfin 开启 VPP 和 openCL 色调映射


2021.11.17 编译了docker镜像: xanderye/linuxserver-jellyfin:10.7.7


2021.11.11 更新编译ffmpeg 4.4.1,解决HDR播放问题。github大佬编译了ffmpeg4.4.1-1支持色调映射,建议使用大佬的。

https://wp.xanderye.cn/wp-content/uploads/2021/11/未标题-1.jpg
VAAPI和QSV性能对比

之前用3617xs黑群晖没有核显,就没关注过jellyfin/jellyfinlinuxserver/jellyfin的区别,经查询,有以下区别:

  • jellyfin/jellyfin 基于Debian 10,只有几个 unstable 的 intel-media-va-driver-non-free 驱动,装上也不一定能用,可能需要自己编译。
  • linuxserver/jellyfin 基于Ubuntu 20.04,自带源上就有3个intel-media-va-driver-non-free的驱动,安装配置方便。

一般安装jellyfin后,配置的硬件加速都是VAAPI。看大佬实测 VAAPI 的性能可能连 Quick Sync 的一半都没有。VAAPI 对 HDR 色调映射的支持也不好弄,而且性能也差很多。Quick Sync 是 Intel 的专有技术,所以开源软件包是不会预装的,只能自己装。 Quick Sync是 Quick Sync/NVENC/AMF 硬解三剑客中最能打的,所以尝试看看性能。

部署Jellyfin

docker pull linuxserver/jellyfin:version-10.7.7-1目前我买了威联通TS-453Dmini,CPU为J4125,核显UHD600,性能很强。注意:jellyfin/jellyfinlinuxserver/jellyfin 数据文件夹路径不一致:

  • jellyfin/jellyfin的环境变量: Environment Variables: ["[JELLYFIN_CACHE_DIR, /cache]", "[JELLYFIN_MEDIA_DIR, /media]", "[JELLYFIN_FFMPEG, /usr/lib/jellyfin-ffmpeg/ffmpeg]", "[JELLYFIN_WEB_DIR, /jellyfin/jellyfin-web]", "[JELLYFIN_CONFIG_DIR, /config/config]", "[JELLYFIN_LOG_DIR, /config/log]", "[DOTNET_SYSTEM_GLOBALIZATION_INVARIANT, 1]", "[JELLYFIN_DATA_DIR, /config]"]
  • linuxserver/jellyfin的环境变量: Environment Variables: ["[JELLYFIN_DATA_DIR, /config/data]", "[JELLYFIN_CONFIG_DIR, /config]", "[JELLYFIN_CACHE_DIR, /config/cache]", "[JELLYFIN_LOG_DIR, /config/log]"]

尝试无损迁移失败了,重新弄吧。本次使用的镜像是: linuxserver/jellyfin:version-10.7.7-1,使用docker-compose方式创建容器。

version: '3'
services: 
  jellyfin: 
    image: linuxserver/jellyfin:version-10.7.7-1
    volumes: 
      - /share/docker/jellyfin/config:/config
      - /share/video:/video
    devices: 
      - /dev/dri:/dev/dri
    environment: 
      - PUID=0
      - PGID=0
      - TZ=Asia/Shanghai
    extra_hosts: 
      - "www.themoviedb.org:54.230.19.54"
      - "www.themoviedb.org:54.230.19.63"
      - "www.themoviedb.org:54.230.19.117"
      - "www.themoviedb.org:54.230.19.114"
      - "image.tmdb.org:54.192.58.9"
      - "image.tmdb.org:54.192.58.86"
      - "image.tmdb.org:54.192.58.100"
      - "image.tmdb.org:54.192.58.108"
      - "api.themoviedb.org:99.84.173.16"
      - "api.themoviedb.org:99.84.173.22"
      - "api.themoviedb.org:99.84.173.57"
      - "api.themoviedb.org:99.84.173.79"
    network_mode: host
    privileged: true
    restart: always
    container_name: jellyfin

如果你的jellyfin用了自带的刮削器而不能刮削数据,去 www.ipaddress.com 搜下最新ip修改hosts。

升级jellyfin-ffmpeg

当前镜像ffmpeg版本为4.3.1,最好升级到4.3.2。去jellyfin官方软件仓库根据 版本 (cat /etc/lsb-release) 和 架构 (uname -a) 下载对应的软件包版本并安装

 curl -LO https://sgp1.mirror.jellyfin.org/releases/server/ubuntu/versions/jellyfin-ffmpeg/4.3.2-1/jellyfin-ffmpeg_4.3.2-1-focal_amd64.deb && dpkg -i jellyfin-ffmpeg_4.3.2-1-focal_amd64.deb

执行 /usr/lib/jellyfin-ffmpeg/ffmpeg 查看版本号。

https://wp.xanderye.cn/wp-content/uploads/2021/09/image-12.png

安装驱动

修改源为阿里源:sed -i s/archive.ubuntu.com/mirrors.aliyun.com/g /etc/apt/sources.list

执行命令 apt update ,等待执行完成后,执行 apt install -y intel-media-va-driver-non-free vainfo

完成之后输入vainfo,查看驱动是否安装成功。

https://wp.xanderye.cn/wp-content/uploads/2021/09/image-11.png

配置Jellyfin

访问 http://ip:8096/,按向导初始化系统。打开控制台->播放, 如果你也是J4125的话可以和我一样把这些全部钩上。

https://wp.xanderye.cn/wp-content/uploads/2021/09/image-13-1024x724.png

很不巧,正要测试4kHEVC解码能力时,碰到视频不能解码的情况。经查询是ffmpeg解码HDR问题,打算用emby去了。

https://wp.xanderye.cn/wp-content/uploads/2021/11/image-2.png

https://wp.xanderye.cn/wp-content/uploads/2021/09/image-14.png
其他博主的图片
赞赏

发表回复

textsms
account_circle
email
24 + 3 = ?
verified user

 

  • 123 未知

    太强了

    3 年前 回复
    • 达文牛 未知

      @123: 更新ffmpeg4.4-1,修复了VAAPI的VPP不支持部分4KHDR的问题。

      3 年前 回复
      • HSA 未知

        @达文牛: 我也遇到不能解码4k HDR问题,国内基本没人提这事,我核显是HD630,按道理应该支持硬解HDR 10BIT,但是解不了。看到国外有帖子说了这个事,应该是jellyfin自带的ffmpeg没配置好,自己也不会升级。看到国外有个插件,但是需要自己操作编译,苦于没有LINUX和相关编译环境,又不是专业从事码农行业。大佬可以发个更新ffmpeg的教程吗,附个国外的解决HDR硬解方法,有兴趣可以试试https://github.com/so-rose/fast-hdr。

        3 年前 回复
        • xander博主 未知

          @HSA: 今天花了点时间编译了下ffmpeg4.4,能解码HDR了但是色调映射有问题。Ubuntu20.04下编译ffmpeg

          3 年前 回复
          • 达文牛 未知

            @xander: 更新ffmpeg后,色调映射选VPP,如果openCL要加一个驱动。

            3 年前
          • xander博主 未知

            @达文牛: 我也早就用emby了,折腾来折腾去都不如emby直接用方便,解码性能也不如emby

            3 年前
  • 二狄 未知

    问一下 Intel Quick Sync下用sudo intel_gpu_top看不到Video/0 有占用是不是走了软解啊

    3 年前 回复
    • 二狄 未知

      @二狄: waapi下面才能跑硬解 i3的10105

      3 年前 回复
    • xander博主 未知

      @二狄: 播放4k/HDR视频的时候 ps -ef|grep ffmpeg 看下,vaapi是-hwaccel vaapi,Intel Quick Sync是-c:v hevc_qsv -hwaccel qsv

      3 年前 回复
      • 二狄 未知

        @xander: 在smzdm上面找了个教程解决了,ffmpeg版本的问题。还有个色调映射的驱动要装

        3 年前 回复
        • HSA 未知

          @二狄: 我现在ffmpeg版本是最新那个unstable,能解4K HDR了,但是帧率感人。另外色调映射也存在问题

          3 年前 回复
          • 二狄 未知

            @HSA: 我开了好像还行,虽然是能运行了。但要搭配一下才能用https://post.m.smzdm.com/p/ar65vrp7/?zdm_ss=Android_1614372198_&send_by=1614372198&from=other&invite_code=zdm26dwgqzinv

            3 年前
          • 达文牛 未知

            @HSA: 找开发者的ffmpeg4.4.1-1更新,色调映射选VPP。如果选QSV,帧率有bug,选VAAPI,如果一定要用openCL,你可以顺便装上驱动就可以。不过openCL现在还不支持PGS字幕,等待开发者更新。

            3 年前
    • 二狄 未知

      @二狄: plex真香,黑五50刀到手,jellyfin拜拜了

      3 年前 回复
  • 达文牛 未知

    不存在吧。ubuntu focal 下 intel 21.1.1以上的驱动(现在是21.3.3吧)更新ffmpeg4.4-1或ffmpeg4.4.1-1 肯定已经解决VAAPI/QSV部分HDR不能转码的问题了。只剩下QSV下面转码有点小问题。

    3 年前 回复
  • lemmo 未知

    请问博主,我用Docker装的「linuxserver/emby」 cpu是8600t(HD630)。播放hevc片源时使用vappi能调用硬解,但是使用qsv时就只能软件解码,这个问题可以通过更新ffmpeg来解决吗?

    3 年前 回复
    • xander博主 未知

      @lemmo: emby?确定不是jellyfin吗?可以尝试更新驱动和ffmpeg试试,看第一行的教程

      3 年前 回复
  • 65566 未知

    I9 12900T UNRAID平台,QSV一直转圈,VAAPI正常

    3 年前 回复

XanderYe的个人小站

Jellyfin 开启 Intel Quick Sync 提升性能
2021.11.23 建议查看教程:为 jellyfin 开启 VPP 和 openCL 色调映射 2021.11.17 编译了docker镜像: xanderye/linuxserver-jellyfin:10.7.7 2021.11.11 更新编译ffmpe…
扫描二维码继续阅读
2021-09-24