Executing vainfo in the container space returns this:
Trying display: drm
libva info: VA-API version 1.19.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_19
libva error: /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so init failed
libva info: va_openDriver() returns 1
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_19
libva error: /usr/lib/jellyfin-ffmpeg/lib/dri/i965_drv_video.so init failed
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
vainfo on the main device sudo vainfo --display drm --device /dev/dri/card0 returns the same thing even though this command should work on headless servers.
because I am using the Linuxserver.io version of jellyfin.
Starting a show with hardware encoding then enables (VAAPI or QSV) results in "This client isn't compatible with the media and the server isn't sending a compatible media format." so hardware encoding definitely isn't working.
After a lot of debuging, giving up, and starting again recently. I noticed that intel GuC was loading on start but HuC was not. I ended up having to download the entire linux firmware git repo, extracting the i915 folder and dropping it in my /usr/lib/firmware/.
Try the official jellyfin Docker image. I had issues with hardware acceleration on the Linuxserver image that immediately went away with the official image.
Does anyone have any idea if this is because I don't have a display driver installed?
I have an A770 and vaapi seems to work fine headless for me. However, I don't know if this is related, but OneAPI/IPEX won't work until I have a Wayland session active.
Nah it's an AI library for Intel, completly unrelated to Jellyfin, but seems to have similar issues to what you're facing with vaapi where it struggles to find the GPU.
After a lot of debuging, giving up, and starting again recently. I noticed that intel GuC was loading on start but HuC was not. I ended up having to download the entire linux firmware git repo, extracting the i915 folder and dropping it in my /usr/lib/firmware/.