2025-07-02, 05:00 AM
I'm trying to diagnose why Trickplay stopped generating images. There error I'm getting from ffmpeg on trying to generate them is:
vainfo reports:
So as you can see, vainfo seems to correctly identify that it needs to use /usr/lib64/dri/i965_drv_video but I don't see jellyfin-ffmpeg trying to use the same thing.
Any ideas what is going wrong here?
Code:
# sudo -u jellyfin bash -c "/usr/libexec/jellyfin-ffmpeg/ffmpeg -loglevel error -init_hw_device vaapi=va:/dev/dri/card0,driver=i965 -i file:\"/video/mythvideo/Movies/[redacted] WEBRip-1080p.mkv\" -an -sn -vf \"fps=0.10000000149011612,setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*(a*sar))\,320)/2)*2:trunc(ow/(a*sar)/2)*2:out_range=pc,format=nv12,hwupload_vaapi\" -threads 1 -c:v mjpeg_vaapi -global_quality:v 91 -fps_mode passthrough -f image2 \"/tmp/jellyfin/564b5be3230d4cb8af42b79ae3cd481c/%08d.jpg\""
failed to open /usr/lib64/dri/hybrid_drv_video.so
Not using hybrid_drv_video.so
[AVHWDeviceContext @ 0x558db3d2cdc0] libva: /usr/lib64/dri/iHD_drv_video.so init failed
failed to open /usr/lib64/dri/hybrid_drv_video.so
Not using hybrid_drv_video.so
[AVHWDeviceContext @ 0x7ffbac012c00] libva: /usr/lib64/dri/iHD_drv_video.so init failed
failed to open /usr/lib64/dri/hybrid_drv_video.so
Not using hybrid_drv_video.so
Impossible to convert between the formats supported by the filter 'Parsed_hwupload_vaapi_4' and the filter 'auto_scale_0'
[vf#0:0 @ 0x558db3d567c0] Error reinitializing filters!
[vf#0:0 @ 0x558db3d567c0] Task finished with error code: -38 (Function not implemented)
[vf#0:0 @ 0x558db3d567c0] Terminating thread with return code -38 (Function not implemented)
[vost#0:0/mjpeg_vaapi @ 0x558db3d2d540] Could not open encoder before EOF
[vost#0:0/mjpeg_vaapi @ 0x558db3d2d540] Task finished with error code: -22 (Invalid argument)
[vost#0:0/mjpeg_vaapi @ 0x558db3d2d540] Terminating thread with return code -22 (Invalid argument)
[out#0/image2 @ 0x558db3d1b300] Nothing was written into output file, because at least one of its streams received no packets.
vainfo reports:
Code:
# sudo -u jellyfin bash -c "vainfo"
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: can't connect to X server!
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
libva info: va_openDriver() returns 1
libva info: Trying to open /usr/lib64/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_11
failed to open /usr/lib64/dri/hybrid_drv_video.so
Not using hybrid_drv_video.so
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.22 (libva 2.11.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Haswell Desktop - 2.4.1
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264MultiviewHigh : VAEntrypointVLD
VAProfileH264MultiviewHigh : VAEntrypointEncSlice
VAProfileH264StereoHigh : VAEntrypointVLD
VAProfileH264StereoHigh : VAEntrypointEncSlice
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
VAProfileJPEGBaseline : VAEntrypointVLD
So as you can see, vainfo seems to correctly identify that it needs to use /usr/lib64/dri/i965_drv_video but I don't see jellyfin-ffmpeg trying to use the same thing.
Any ideas what is going wrong here?