Plex Intel Arrow Lake VAAPI Hardware Transcoding Fix (Docker / Proxmox LXC)

If Plex can see /dev/dri/renderD128 but still falls back to CPU transcoding on an Intel Arrow Lake GPU, this workaround may help.

I found two separate causes:

  1. Plex’s bundled Intel media driver was too old for the Arrow Lake GPU.

  2. The Plex server process lost access to the render-device group during startup, even though manual VAAPI tests inside the container worked.

The fix uses a newer Intel media driver built for Plex’s bundled musl environment, mounts it persistently in the container, and gives the actual Plex process access to the render-device GID.

I confirmed the result with real Plex playback: 4K HEVC hardware decoding, VAAPI zero-copy processing, and H.264 hardware encoding all worked. Plex displayed (hw) and CPU usage dropped substantially.

Tested configuration:

  • Intel Arrow Lake-P GPU (8086:7d51)

  • Proxmox VE 9.2.18 → unprivileged Debian 13 LXC → Docker Compose

  • Official plexinc/pms-docker image

  • Plex Media Server 1.43.4.10903-e5521bd8c

  • Intel media-driver 26.1.6

  • VAAPI ABI 1.22

The repository includes the full Docker Compose setup, checksummed prebuilt x86-64 binaries, a pinned-source Docker build, verification scripts, and rollback steps:

Plex Arrow Lake hardware-transcoding guide

This is an unofficial community workaround. Check the compatibility notes and back up your Plex configuration before applying it. The source-build path is available if you prefer not to use prebuilt binaries.