2024-05-20, 07:51 PM
(This post was last modified: 2024-05-20, 11:20 PM by mrrichardcranium. Edited 2 times in total.)
I bought and installed the intel Arc A380 on some old rig I had lying around but I cannot seem to get hardware transcoding working correctly. When selecting QSV it defaults to using the integrated graphics on the intel chip, and when set to VAAPI specifying the A380 device it still doesn't appear to be using the graphics card. A few indicators being all 4 CPU cores at 100%, and the "intel_gpu_top" command showing no activity. Ive looked through the docs and forum and everything Ive seen suggests that my setup should work, but I am barely seeing playable frame rates for one 4k stream on the local network.
Im hoping to get some suggestions as to what could be wrong with the configuration.
Software details:
Jellyfin version: 10.9.2
OS: Ubuntu Server 24.04 LTS (6.8.0-31-generic kernel)
Jellyfin FFmpeg6 version: 6.0.1-6-noble
intel-opencl-icd: 23.43.27642.40-1ubuntu3
System hardware:
CPU: Intel Core i5-6600K
GPU: Intel Arc A380
RAM: 16gb
Storage: 240GB ssd
Clients:
Web client on macOS. Both Firefox and Safari
vainfo output:
Trying display: drm
libva info: VA-API version 1.21.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_21
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.21 (libva 2.21.0)
vainfo: Driver version: Intel iHD driver for Intel® Gen Graphics - 24.2.1 (0593864)
vainfo: Supported profile and entrypoints...
Checking OpenCL runtime status from docs:
[AVHWDeviceContext @ 0x59be1a617300] libva: VA-API version 1.21.0
[AVHWDeviceContext @ 0x59be1a617300] libva: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x59be1a617300] libva: Found init function __vaDriverInit_1_21
[AVHWDeviceContext @ 0x59be1a617300] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x59be1a617300] Initialised VAAPI connection: version 1.21
[AVHWDeviceContext @ 0x59be1a617300] VAAPI driver: Intel iHD driver for Intel® Gen Graphics - 24.2.1 (0593864).
[AVHWDeviceContext @ 0x59be1a617300] Driver not found in known nonstandard list, using standard behaviour.
[AVHWDeviceContext @ 0x59be1a6177c0] 0.0: Intel® OpenCL Graphics / Intel® Arc A380 Graphics
[AVHWDeviceContext @ 0x59be1a6177c0] Intel QSV to OpenCL mapping function found (clCreateFromVA_APIMediaSurfaceINTEL).
[AVHWDeviceContext @ 0x59be1a6177c0] Intel QSV in OpenCL acquire function found (clEnqueueAcquireVA_APIMediaSurfacesINTEL).
[AVHWDeviceContext @ 0x59be1a6177c0] Intel QSV in OpenCL release function found (clEnqueueReleaseVA_APIMediaSurfacesINTEL).
After attempting to play a video with VAAPI targeting the A380 this is the jellyfin logs:
[2024-05-20 19:35:01.043 +00:00] [INF] WS "192.168.10.97" request
[2024-05-20 19:35:11.274 +00:00] [INF] User policy for "username". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2024-05-20 19:35:11.590 +00:00] [INF] Current HLS implementation doesn't support non-keyframe breaks but one is requested, ignoring that request
[2024-05-20 19:35:11.593 +00:00] [INF] "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-dump_attachment:t \"\" -y -i file:\"/mount/media/Movies/Pearl (2022)/Pearl (2022) Remux-2160p.mkv\" -t 0 -f null null"
[2024-05-20 19:35:12.044 +00:00] [INF] ffmpeg attachment extraction completed for "file:\"/mount/media/Movies/Pearl (2022)/Pearl (2022) Remux-2160p.mkv\"" to "/var/cache/jellyfin/attachments/50f4498daf5a729e20ee7af0502d1dc4"
[2024-05-20 19:35:12.044 +00:00] [INF] "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-analyzeduration 200M -probesize 1G -init_hw_device vaapi=vadev/dri/renderD129,driver=iHD -noautorotate -i file:\"/mount/media/Movies/Pearl (2022)/Pearl (2022) Remux-2160p.mkv\" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:0 -codec:v:0 h264_vaapi -rc_mode VBR -b:v 120016060 -maxrate 120016060 -bufsize 240032120 -sei -a53_cc -force_key_frames:0 \"expr:gte(t,n_forced*3)\" -filter_complex \"[0:3]scale=-1:2160:fast_bilinear,scale,crop,pad=max(3840\,iw):max(2160\,ih)ow-iw)/2oh-ih)/2:black@0,crop=3840:2160[sub];[0:0]setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(3840\,2160*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(3840/a\,2160))/2)*2,format=nv12[main];[main][sub]overlay=eof_action=pass:repeatlast=0,hwupload_vaapi\" -start_at_zero -codec:a:0 libfdk_aac -ac 2 -ab 256000 -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type fmp4 -hls_fmp4_init_filename \"47b5461cedf691bd94b2218a226ed896-1.mp4\" -start_number 0 -hls_segment_filename \"/var/cache/jellyfin/transcodes/47b5461cedf691bd94b2218a226ed896%d.mp4\" -hls_playlist_type vod -hls_list_size 0 -y \"/var/cache/jellyfin/transcodes/47b5461cedf691bd94b2218a226ed896.m3u8\""
Im hoping to get some suggestions as to what could be wrong with the configuration.
Software details:
Jellyfin version: 10.9.2
OS: Ubuntu Server 24.04 LTS (6.8.0-31-generic kernel)
Jellyfin FFmpeg6 version: 6.0.1-6-noble
intel-opencl-icd: 23.43.27642.40-1ubuntu3
System hardware:
CPU: Intel Core i5-6600K
GPU: Intel Arc A380
RAM: 16gb
Storage: 240GB ssd
Clients:
Web client on macOS. Both Firefox and Safari
vainfo output:
Trying display: drm
libva info: VA-API version 1.21.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_21
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.21 (libva 2.21.0)
vainfo: Driver version: Intel iHD driver for Intel® Gen Graphics - 24.2.1 (0593864)
vainfo: Supported profile and entrypoints...
Checking OpenCL runtime status from docs:
[AVHWDeviceContext @ 0x59be1a617300] libva: VA-API version 1.21.0
[AVHWDeviceContext @ 0x59be1a617300] libva: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x59be1a617300] libva: Found init function __vaDriverInit_1_21
[AVHWDeviceContext @ 0x59be1a617300] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x59be1a617300] Initialised VAAPI connection: version 1.21
[AVHWDeviceContext @ 0x59be1a617300] VAAPI driver: Intel iHD driver for Intel® Gen Graphics - 24.2.1 (0593864).
[AVHWDeviceContext @ 0x59be1a617300] Driver not found in known nonstandard list, using standard behaviour.
[AVHWDeviceContext @ 0x59be1a6177c0] 0.0: Intel® OpenCL Graphics / Intel® Arc A380 Graphics
[AVHWDeviceContext @ 0x59be1a6177c0] Intel QSV to OpenCL mapping function found (clCreateFromVA_APIMediaSurfaceINTEL).
[AVHWDeviceContext @ 0x59be1a6177c0] Intel QSV in OpenCL acquire function found (clEnqueueAcquireVA_APIMediaSurfacesINTEL).
[AVHWDeviceContext @ 0x59be1a6177c0] Intel QSV in OpenCL release function found (clEnqueueReleaseVA_APIMediaSurfacesINTEL).
After attempting to play a video with VAAPI targeting the A380 this is the jellyfin logs:
[2024-05-20 19:35:01.043 +00:00] [INF] WS "192.168.10.97" request
[2024-05-20 19:35:11.274 +00:00] [INF] User policy for "username". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2024-05-20 19:35:11.590 +00:00] [INF] Current HLS implementation doesn't support non-keyframe breaks but one is requested, ignoring that request
[2024-05-20 19:35:11.593 +00:00] [INF] "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-dump_attachment:t \"\" -y -i file:\"/mount/media/Movies/Pearl (2022)/Pearl (2022) Remux-2160p.mkv\" -t 0 -f null null"
[2024-05-20 19:35:12.044 +00:00] [INF] ffmpeg attachment extraction completed for "file:\"/mount/media/Movies/Pearl (2022)/Pearl (2022) Remux-2160p.mkv\"" to "/var/cache/jellyfin/attachments/50f4498daf5a729e20ee7af0502d1dc4"
[2024-05-20 19:35:12.044 +00:00] [INF] "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-analyzeduration 200M -probesize 1G -init_hw_device vaapi=vadev/dri/renderD129,driver=iHD -noautorotate -i file:\"/mount/media/Movies/Pearl (2022)/Pearl (2022) Remux-2160p.mkv\" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:0 -codec:v:0 h264_vaapi -rc_mode VBR -b:v 120016060 -maxrate 120016060 -bufsize 240032120 -sei -a53_cc -force_key_frames:0 \"expr:gte(t,n_forced*3)\" -filter_complex \"[0:3]scale=-1:2160:fast_bilinear,scale,crop,pad=max(3840\,iw):max(2160\,ih)ow-iw)/2oh-ih)/2:black@0,crop=3840:2160[sub];[0:0]setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(3840\,2160*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(3840/a\,2160))/2)*2,format=nv12[main];[main][sub]overlay=eof_action=pass:repeatlast=0,hwupload_vaapi\" -start_at_zero -codec:a:0 libfdk_aac -ac 2 -ab 256000 -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type fmp4 -hls_fmp4_init_filename \"47b5461cedf691bd94b2218a226ed896-1.mp4\" -start_number 0 -hls_segment_filename \"/var/cache/jellyfin/transcodes/47b5461cedf691bd94b2218a226ed896%d.mp4\" -hls_playlist_type vod -hls_list_size 0 -y \"/var/cache/jellyfin/transcodes/47b5461cedf691bd94b2218a226ed896.m3u8\""