Jellyfin Forum
SOLVED: Hardware accelerated transcoding works on Plex but not on Jellyfin (docker) - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: SOLVED: Hardware accelerated transcoding works on Plex but not on Jellyfin (docker) (/t-solved-hardware-accelerated-transcoding-works-on-plex-but-not-on-jellyfin-docker)



Hardware accelerated transcoding works on Plex but not on Jellyfin (docker) - soy_titooo - 2023-07-02


ISSUE:
Hardware accelerated transcoding works fine in Plex (docker) but it doesn't with Jellyfin. 'This client isn't compatible with the media and the server isn't sending a compatible media format.'
I tried VAAPi and QSV but same resulg

docker exec -it jellyfin /usr/lib/jellyfin-ffmpeg/vainfo 

Code:
Trying display: drm
libva info: VA-API version 1.18.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_18
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.18 (libva 2.18.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.1.6 (8589406)
vainfo: Supported profile and entrypoints
      VAProfileNone                  : VAEntrypointVideoProc
      VAProfileNone                  : VAEntrypointStats
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileH264Main              : VAEntrypointVLD
      VAProfileH264Main              : VAEntrypointEncSlice
      VAProfileH264Main              : VAEntrypointFEI
      VAProfileH264Main              : VAEntrypointEncSliceLP
      VAProfileH264High              : VAEntrypointVLD
      VAProfileH264High              : VAEntrypointEncSlice
      VAProfileH264High              : VAEntrypointFEI
      VAProfileH264High              : VAEntrypointEncSliceLP
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileJPEGBaseline          : VAEntrypointVLD
      VAProfileJPEGBaseline          : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline: VAEntrypointFEI
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileVP8Version0_3          : VAEntrypointEncSlice
      VAProfileHEVCMain              : VAEntrypointVLD
      VAProfileHEVCMain              : VAEntrypointEncSlice
      VAProfileHEVCMain              : VAEntrypointFEI


docker exec -it jellyfin /usr/lib/jellyfin-ffmpeg/ffmpeg -v verbose -init_hw_device vaapi=va -init_hw_device opencl@va

Code:
ffmpeg version 5.1.3-Jellyfin Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 10 (Debian 10.2.1-6)
  configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-libs=-lfftw3f --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-ptx-compression --disable-static --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-shared --enable-gmp --enable-gnutls --enable-chromaprint --enable-libdrm --enable-libass --enable-libfreetype --enable-libfribidi --enable-libfontconfig --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libopenmpt --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --arch=amd64 --enable-libsvtav1 --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libmfx --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
  libavutil      57. 28.100 / 57. 28.100
  libavcodec    59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter    8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample  4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
[AVHWDeviceContext @ 0x55e1c1a24100] Trying to use DRM render node for device 0.
[AVHWDeviceContext @ 0x55e1c1a24100] libva: VA-API version 1.18.0     
[AVHWDeviceContext @ 0x55e1c1a24100] libva: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x55e1c1a24100] libva: Found init function __vaDriverInit_1_18
[AVHWDeviceContext @ 0x55e1c1a24100] libva: va_openDriver() returns 0 
[AVHWDeviceContext @ 0x55e1c1a24100] Initialised VAAPI connection: version 1.18
[AVHWDeviceContext @ 0x55e1c1a24100] VAAPI driver: Intel iHD driver for Intel(R) Gen Graphics - 23.1.6 (8589406).
[AVHWDeviceContext @ 0x55e1c1a24100] Driver not found in known nonstandard list, using standard behaviour.
[AVHWDeviceContext @ 0x55e1c1a457c0] 0.0: Intel(R) OpenCL HD Graphics / Intel(R) HD Graphics 530 [0x1912]
[AVHWDeviceContext @ 0x55e1c1a457c0] Intel QSV to OpenCL mapping function found (clCreateFromVA_APIMediaSurfaceINTEL).                       
[AVHWDeviceContext @ 0x55e1c1a457c0] Intel QSV in OpenCL acquire function found (clEnqueueAcquireVA_APIMediaSurfacesINTEL).                 
[AVHWDeviceContext @ 0x55e1c1a457c0] Intel QSV in OpenCL release function found (clEnqueueReleaseVA_APIMediaSurfacesINTEL).                 
Hyper fast Audio and Video encoder                                   
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

Transcode log: 
https://paste.watn3y.de/?ad456fd423009abd#HY1dPYUxNHKYzJc5nHRf3ssGQ4W6v6L2pHaX9kzDHnVT


RE: Hardware accelerated transcoding works on Plex but not on Jellyfin (docker) - nyanmisaka - 2023-07-02

Quote:[hevc @ 0x5601940418c0] No support for codec hevc profile 2.
[hevc @ 0x5601940418c0] Failed setup for format vaapi: hwaccel initialisation returned error.

[AVHWDeviceContext @ 0x55e1c1a457c0] 0.0: Intel® OpenCL HD Graphics / Intel® HD Graphics 530 [0x1912]


Your iGPU HD 530 has no support for HEVC 10-bit decoding. HDR tone-mapping can be very slow.

Please disable the "HEVC 10-bit decoding" in Dashboard->Playback and try again.


RE: Hardware accelerated transcoding works on Plex but not on Jellyfin (docker) - soy_titooo - 2023-07-10

It was that simple! Thank you.
It's a shame that my Hetzner server can't do "HEVC 10-bit decoding" but at least I know now!