Running Plex Media Server (1.43.1.10540, via plexinc/pms-docker:beta) on Docker with an Intel Core Ultra 7 255H (Arrow Lake-P, Xe2/Battlemage integrated graphics). PlexPass hardware transcoding is enabled and the correct GPU is selected in Settings → Transcoder. The /dev/dri device is passed through to the container and permissions are correct.
Plex detects the device (8086:7d51, Arrow Lake-P [Intel Graphics]) but fails to initialize VAAPI:
TPU: hardware transcoding: enabled, but no hardware decode accelerator found
TPU: hardware transcoding: final decoder: , final encoder:
The host system’s VAAPI stack works correctly — vainfo with LIBVA_DRIVER_NAME=iHD reports full H.264 and HEVC encode/decode support via intel-media-va-driver-non-free 25.2.4. The issue appears to be that Plex’s bundled libva cannot load the system iHD driver regardless of LIBVA_DRIVER_NAME or LIBVA_DRIVERS_PATH environment variables. This may be related to the MUSL vs glibc build of Plex’s internal libraries.
Related thread: Battlemage support - is there a fix or workaround for Xe2/Arrow Lake specifically?
Update: I also tested rolling back to 1.43.0.10492 following reports that 1.43.1.10540 introduced a QuickSync regression. The rollback did not resolve the issue for me - the same “no hardware decode accelerator found” error seems to persist on 1.43.0. This suggests Arrow Lake iGPU users may be dealing with two separate problems: the 1.43.1 regression affecting previously-working Intel hardware, and a pre-existing VAAPI incompatibility with Xe2/Battlemage that exists across all Plex versions. The rollback which fixes older Intel generations does not apply here.