HW Transcoding issue under docker (Ubuntu 18.04 Server)

Server Version#: 1.19.3.2764
Player Version#: N/A

I’m running Plex Server inside a docker container; host OS is Ubuntu 18.04 LTS Server. The host processor is an Intel Celeron J4105 (Gemini Lake). I’ve had hardware encoding working for some time but there is one constant, nagging issue: Every time I pull a new version of the docker container (from linuxserver.io) I have to manually enter the container and delete one of the two Intel encoder drivers:

$ docker container exec -it <container_number> /bin/bash

$ rm /usr/lib/plexmediaserver/lib/dri/iHD_drv_video.so

$ exit

After I restart the container ($ docker container restart <container_number> the transcoder works flawlessly.

The Gemini Lake processor requires the driver file i965_drv_video.so, not iHD_drv_video.so.

Is there any way to patch Plex Server to use the correct codec based on the host processor so I can avoid this manual step each time I pull a new update?

There is an alternative method.

  1. Edit Preferences.xml in vi or other Linux editor.
  2. Add VaapiDriver="i965" before the closing /> on the last line.
3 Likes

Okay… Edit made. Let’s see if it persists after the next update!

If it doesn’t, I will beat on it! :smiling_imp:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.