2024-07-19, 05:01 PM
(This post was last modified: 2024-07-19, 05:07 PM by Jade. Edited 2 times in total.)
Hello everyone,
I am running Jellyfin in a k3s environment on TrueNAS Scale and have set up two GPU devices within the container: an integrated GPU (iGPU) and an Arc A380 graphics card, both supporting QSV. These devices are recognized within the Jellyfin container as /dev/dri/renderD128 (iGPU) and /dev/dri/renderD129 (Arc A380). Currently, Jellyfin automatically selects the iGPU (renderD128) for video transcoding. I would like to configure Jellyfin to use the QSV on the Arc A380 (renderD129) instead.
Could anyone guide me on how to configure Jellyfin or the container settings to force the use of the renderD129 device for hardware-accelerated transcoding? Are there specific environment variables or settings in the configuration files that I need to adjust?
Additionally, here are the results of executing commands within the container to check the devices:
Thank you for any help or guidance you can provide!
I am running Jellyfin in a k3s environment on TrueNAS Scale and have set up two GPU devices within the container: an integrated GPU (iGPU) and an Arc A380 graphics card, both supporting QSV. These devices are recognized within the Jellyfin container as /dev/dri/renderD128 (iGPU) and /dev/dri/renderD129 (Arc A380). Currently, Jellyfin automatically selects the iGPU (renderD128) for video transcoding. I would like to configure Jellyfin to use the QSV on the Arc A380 (renderD129) instead.
Could anyone guide me on how to configure Jellyfin or the container settings to force the use of the renderD129 device for hardware-accelerated transcoding? Are there specific environment variables or settings in the configuration files that I need to adjust?
Additionally, here are the results of executing commands within the container to check the devices:
Code:
/usr/lib/jellyfin-ffmpeg/ffmpeg -v verbose -init_hw_device vaapi=va:/dev/dri/renderD128 -init_hw_device opencl@va
ffmpeg version 6.0.1-Jellyfin Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12 (Debian 12.2.0-14)
configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --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-opencl --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-libsvtav1 --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --arch=amd64 --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
libavutil 58. 2.100 / 58. 2.100
libavcodec 60. 3.100 / 60. 3.100
libavformat 60. 3.100 / 60. 3.100
libavdevice 60. 1.100 / 60. 1.100
libavfilter 9. 3.100 / 9. 3.100
libswscale 7. 1.100 / 7. 1.100
libswresample 4. 10.100 / 4. 10.100
libpostproc 57. 1.100 / 57. 1.100
[AVHWDeviceContext @ 0x5564ed4e5480] libva: VA-API version 1.21.0
[AVHWDeviceContext @ 0x5564ed4e5480] libva: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x5564ed4e5480] libva: Found init function __vaDriverInit_1_21
[AVHWDeviceContext @ 0x5564ed4e5480] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x5564ed4e5480] Initialised VAAPI connection: version 1.21
[AVHWDeviceContext @ 0x5564ed4e5480] VAAPI driver: Intel iHD driver for Intel(R) Gen Graphics - 24.2.3 (7c1c775).
[AVHWDeviceContext @ 0x5564ed4e5480] Driver not found in known nonstandard list, using standard behaviour.
[AVHWDeviceContext @ 0x5564ed517500] 1.0: Intel(R) OpenCL Graphics / Intel(R) UHD Graphics 730
[AVHWDeviceContext @ 0x5564ed517500] Intel QSV to OpenCL mapping function found (clCreateFromVA_APIMediaSurfaceINTEL).
[AVHWDeviceContext @ 0x5564ed517500] Intel QSV in OpenCL acquire function found (clEnqueueAcquireVA_APIMediaSurfacesINTEL).
[AVHWDeviceContext @ 0x5564ed517500] 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'
Code:
I have no name!@jellyfin-868949cf78-ktmpn:/dev/dri$ /usr/lib/jellyfin-ffmpeg/ffmpeg -v verbose -init_hw_device vaapi=va:/dev/dri/renderD129 -init_hw_device opencl@va
ffmpeg version 6.0.1-Jellyfin Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12 (Debian 12.2.0-14)
configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --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-opencl --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-libsvtav1 --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --arch=amd64 --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
libavutil 58. 2.100 / 58. 2.100
libavcodec 60. 3.100 / 60. 3.100
libavformat 60. 3.100 / 60. 3.100
libavdevice 60. 1.100 / 60. 1.100
libavfilter 9. 3.100 / 9. 3.100
libswscale 7. 1.100 / 7. 1.100
libswresample 4. 10.100 / 4. 10.100
libpostproc 57. 1.100 / 57. 1.100
[AVHWDeviceContext @ 0x563508d7a480] libva: VA-API version 1.21.0
[AVHWDeviceContext @ 0x563508d7a480] libva: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x563508d7a480] libva: Found init function __vaDriverInit_1_21
[AVHWDeviceContext @ 0x563508d7a480] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x563508d7a480] Initialised VAAPI connection: version 1.21
[AVHWDeviceContext @ 0x563508d7a480] VAAPI driver: Intel iHD driver for Intel(R) Gen Graphics - 24.2.3 (7c1c775).
[AVHWDeviceContext @ 0x563508d7a480] Driver not found in known nonstandard list, using standard behaviour.
[AVHWDeviceContext @ 0x563508dabbc0] 0.0: Intel(R) OpenCL Graphics / Intel(R) Arc(TM) A380 Graphics
[AVHWDeviceContext @ 0x563508dabbc0] Intel QSV to OpenCL mapping function found (clCreateFromVA_APIMediaSurfaceINTEL).
[AVHWDeviceContext @ 0x563508dabbc0] Intel QSV in OpenCL acquire function found (clEnqueueAcquireVA_APIMediaSurfacesINTEL).
[AVHWDeviceContext @ 0x563508dabbc0] 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}...
Thank you for any help or guidance you can provide!