LXC w/ Docker Container PLEX Media Server CPU Spikes

Server Version#: 1.43.0.10231
Player Version#: Plex for android tv 10.30.6.4151

A while back (early 2025) I migrated my Plex docker container from Ubuntu on a physical machine to a Proxmox LXC running Debian with docker in the container. The PVE machine is running an AMD Epyc 7413 with 256GB RAM. I’ve dedicated 4 CPUs and 4GB RAM and 80GB disk to the container. I had an Arc 380 GPU passed through and working. I no longer see it transcoding when others stream from my server. I’m not sure if that’s related to my current issue, though.

Every couple days in the evenings the CPU usage of only the “Plex Media Server" process spikes. Tonight I saw two processes at over 1000%. Yes over 1000%. This causes the web interface and Player clients to spin and never load. The only way to fix this is to restart the container. Then its a toss up whether the server continues to work or the CPU spikes again. I can’t collect logs while this is happening. I’m not sure where to go from here. I do not share out any 4K libraries, so I can’t imagine transcoding is the issue. Any help would be appreciated.

I finally had some time to work on Plex on my Proxmox LXC container. At one point, I had manually ran commands in the container to add the “render” group as GID 104. I then added the “video” and “render” groups to the plex user and Plex was able to successfully transcode. Those manual changes don’t survive updates or possibly the way that I run updates:

#!/bin/bash
COMPOSE_FILE=/docker/main-compose.yaml
COMPOSE_PROFILES=all docker compose -f /docker/main-compose.yaml rm -s --force
COMPOSE_PROFILES=all docker system prune --force --volumes --all
COMPOSE_PROFILES=all docker compose -f /docker/main-compose.yaml pull
COMPOSE_PROFILES=all docker compose -f /docker/main-compose.yaml up -d

So I had to figure out a way to get transcoding working again. I came up with a script I run from compose.yaml:

include:
  - ../networks.yaml

services:

  plex:
      container_name: plex-container
      image: plexinc/pms-docker:plexpass
      restart: always
      network_mode: host
      volumes:
        - /docker/plex/database:/config
        - /docker/plex/transcode:/transcode
        - /docker/plex/media:/data
        - /docker/plex/scripts:/scripts
      environment:
        - TZ=America/Denver
        - HOSTNAME=HomePlex01
        - PLEX_CLAIM=claim-TOKEN
        - PLEX_UID=2092
        - PLEX_GID=2092
        - GID=104
      devices:
        - /dev/dri:/dev/dri
      command: [ "/scripts/./render_group.sh" ]

I had to add the /docker/plex/scripts:/scripts section and the command: section. Here is the script that is ran on every boot:

#!/bin/bash
# I had to write this script because the Plex server service was going to 1000%+
# I think this had to do with the way I update the Plex container
# My docker container update script deletes the current container (but keeps the volumes with config)
# When this happens, I think the 'render' group is deleted.  This script adds it back and adds that group to the plex user.
# Must add tail command at the end of each if.  If you don't the container continuously restarts.
# From https://stackoverflow.com/questions/44884719/exited-with-code-0-docker
if [ $(getent group render) ]; then
  echo "Group render exists."
  tail -f /dev/null
else
  echo "Group render does not exist."
  echo "Adding render group as GID 104."
  groupadd -g 104 render
  echo "Adding video and render groups as supplementary groups to plex user."
  usermod -aG video,render plex
  /./plex_service.sh -r # -d for down, -u for up, -r for restart
  tail -f /dev/null
fi

This has fixed the issue I had with transcoding. When I look at intel_gpu_top on the LXC, I can see that the Plex Transcoder using the GPU. Awesome!

However, I’m still getting very high CPU usage when this happens. I’ve tried different 4K videos. Some are 4K HLG and have audio that are AAC stereo audio (CPU usage around 200-500%):

Another is 4K DoVi/HDR10 with TrueHD 7.1 audio:

I see this when that video starts to transcode:

Then the CPU usage jumps around 200% and I’ve seen up to 648%. I’m not sure what is going on here. Here are the resources I’ve assigned to the container:

Here are the logs from the 4K DoVi/HDR10 to 720p High Quality transcode:

Nov 08, 2025 13:26:04.417 [134213517187896] WARN - [Req#21fa/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:26:04.444 [134213470698296] INFO - [Req#2234/Transcode/b8b41dd7-c935-44e4-837c-485afd6c1c54] Preparing driver imd for GPU Intel DG2 [Arc A380]
Nov 08, 2025 13:26:05.375 [134213463989048] INFO - [Req#22af/Transcode/b8b41dd7-c935-44e4-837c-485afd6c1c54] Preparing driver imd for GPU Intel DG2 [Arc A380]
Nov 08, 2025 13:29:23.481 [134213474917176] INFO - [Req#2c52/Transcode/b8b41dd7-c935-44e4-837c-485afd6c1c54] Preparing driver imd for GPU Intel DG2 [Arc A380]
Nov 08, 2025 13:29:58.266 [134213474917176] INFO - [Req#2ed2/Transcode/b8b41dd7-c935-44e4-837c-485afd6c1c54] Preparing driver imd for GPU Intel DG2 [Arc A380]
Nov 08, 2025 13:30:03.343 [134213517187896] WARN - [Req#2fb4/Transcode/b8b41dd7-c935-44e4-837c-485afd6c1c54] Transcode runner appears to have died.
Nov 08, 2025 13:30:05.217 [134213463989048] WARN - [Req#2fef] QueryParser: Invalid field 'contentDirectoryID' found, ignoring.
Nov 08, 2025 13:30:05.217 [134213463989048] WARN - [Req#2fef] QueryParser: Invalid field 'pinnedContentDirectoryID' found, ignoring.
Nov 08, 2025 13:30:05.248 [134213470698296] WARN - [Req#2ff2] QueryParser: Invalid field 'contentDirectoryID' found, ignoring.
Nov 08, 2025 13:30:05.248 [134213470698296] WARN - [Req#2ff2] QueryParser: Invalid field 'pinnedContentDirectoryID' found, ignoring.
Nov 08, 2025 13:30:05.351 [134213470698296] WARN - [Req#2ff2] SLOW QUERY: It took 270.000000 ms to retrieve 50 items.
Nov 08, 2025 13:30:13.970 [134213470698296] ERROR - [Req#3046/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:13.970 [134213470698296] WARN - [Req#3046/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:13.970 [134213470698296] ERROR - [Req#3046/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:13.970 [134213470698296] WARN - [Req#3046/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:13.970 [134213470698296] ERROR - [Req#3046/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:13.970 [134213470698296] WARN - [Req#3046/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:13.970 [134213470698296] ERROR - [Req#3046/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:13.970 [134213470698296] WARN - [Req#3046/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:13.970 [134213470698296] ERROR - [Req#3046/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:13.970 [134213470698296] WARN - [Req#3046/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:13.970 [134213470698296] WARN - [Req#3046/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:30:21.721 [134213517187896] ERROR - [Req#30a3/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.721 [134213517187896] WARN - [Req#30a3/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.721 [134213517187896] ERROR - [Req#30a3/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.721 [134213517187896] WARN - [Req#30a3/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.721 [134213517187896] ERROR - [Req#30a3/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.721 [134213517187896] WARN - [Req#30a3/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.721 [134213517187896] ERROR - [Req#30a3/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.721 [134213517187896] WARN - [Req#30a3/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.721 [134213517187896] ERROR - [Req#30a3/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.721 [134213517187896] WARN - [Req#30a3/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.721 [134213517187896] WARN - [Req#30a3/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:30:21.960 [134213470698296] ERROR - [Req#309a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.960 [134213470698296] WARN - [Req#309a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.960 [134213470698296] ERROR - [Req#309a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.960 [134213470698296] WARN - [Req#309a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.960 [134213470698296] ERROR - [Req#309a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.960 [134213470698296] WARN - [Req#309a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.960 [134213470698296] ERROR - [Req#309a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.960 [134213470698296] WARN - [Req#309a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.960 [134213470698296] ERROR - [Req#309a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:30:21.960 [134213470698296] WARN - [Req#309a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:30:21.960 [134213470698296] WARN - [Req#309a/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:30:21.986 [134213517187896] INFO - [Req#30e4/Transcode/72dff61a-0f78-4acd-92d3-a3fc94a87d93] Preparing driver imd for GPU Intel DG2 [Arc A380]
Nov 08, 2025 13:30:23.139 [134213470698296] INFO - [Req#311b/Transcode/72dff61a-0f78-4acd-92d3-a3fc94a87d93] Preparing driver imd for GPU Intel DG2 [Arc A380]
Nov 08, 2025 13:32:21.241 [134213543775032] WARN - [Req#3731] QueryParser: Invalid field 'contentDirectoryID' found, ignoring.
Nov 08, 2025 13:32:21.241 [134213543775032] WARN - [Req#3731] QueryParser: Invalid field 'pinnedContentDirectoryID' found, ignoring.
Nov 08, 2025 13:32:21.335 [134213543775032] WARN - [Req#3731] SLOW QUERY: It took 280.000000 ms to retrieve 50 items.
Nov 08, 2025 13:32:30.599 [134213470698296] ERROR - [Req#376a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.599 [134213470698296] WARN - [Req#376a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.599 [134213470698296] ERROR - [Req#376a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.599 [134213470698296] WARN - [Req#376a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.599 [134213470698296] ERROR - [Req#376a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.599 [134213470698296] WARN - [Req#376a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.599 [134213470698296] ERROR - [Req#376a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.599 [134213470698296] WARN - [Req#376a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.599 [134213470698296] ERROR - [Req#376a/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.599 [134213470698296] WARN - [Req#376a/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.599 [134213470698296] WARN - [Req#376a/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:32:30.746 [134213474917176] ERROR - [Req#36d7/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.746 [134213474917176] WARN - [Req#36d7/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.746 [134213474917176] ERROR - [Req#36d7/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.746 [134213474917176] WARN - [Req#36d7/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.747 [134213474917176] ERROR - [Req#36d7/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.747 [134213474917176] WARN - [Req#36d7/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.747 [134213474917176] ERROR - [Req#36d7/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.747 [134213474917176] WARN - [Req#36d7/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.747 [134213474917176] ERROR - [Req#36d7/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:32:30.747 [134213474917176] WARN - [Req#36d7/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:32:30.747 [134213474917176] WARN - [Req#36d7/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:33:09.748 [134213470698296] ERROR - [Req#394c/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.748 [134213470698296] WARN - [Req#394c/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.748 [134213470698296] ERROR - [Req#394c/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.748 [134213470698296] WARN - [Req#394c/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.748 [134213470698296] ERROR - [Req#394c/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.748 [134213470698296] WARN - [Req#394c/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.748 [134213470698296] ERROR - [Req#394c/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.748 [134213470698296] WARN - [Req#394c/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.748 [134213470698296] ERROR - [Req#394c/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.748 [134213470698296] WARN - [Req#394c/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.748 [134213470698296] WARN - [Req#394c/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:33:09.943 [134213470698296] ERROR - [Req#397e/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.943 [134213470698296] WARN - [Req#397e/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.943 [134213470698296] ERROR - [Req#397e/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.943 [134213470698296] WARN - [Req#397e/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.943 [134213470698296] ERROR - [Req#397e/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.943 [134213470698296] WARN - [Req#397e/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.943 [134213470698296] ERROR - [Req#397e/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.943 [134213470698296] WARN - [Req#397e/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.943 [134213470698296] ERROR - [Req#397e/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:09.943 [134213470698296] WARN - [Req#397e/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:09.943 [134213470698296] WARN - [Req#397e/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:33:18.369 [134213543775032] ERROR - [Req#3a07/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.369 [134213543775032] WARN - [Req#3a07/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.369 [134213543775032] ERROR - [Req#3a07/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.369 [134213543775032] WARN - [Req#3a07/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.369 [134213543775032] ERROR - [Req#3a07/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.369 [134213543775032] WARN - [Req#3a07/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.369 [134213543775032] ERROR - [Req#3a07/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.369 [134213543775032] WARN - [Req#3a07/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.369 [134213543775032] ERROR - [Req#3a07/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.369 [134213543775032] WARN - [Req#3a07/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.369 [134213543775032] WARN - [Req#3a07/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:33:18.520 [134213474917176] WARN - [Req#3a2e/Transcode/bca165aa-5860-4646-a355-d0960e2f9346] Transcode runner appears to have died.
Nov 08, 2025 13:33:18.603 [134213470698296] ERROR - [Req#3a4f/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.603 [134213470698296] WARN - [Req#3a4f/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.603 [134213470698296] ERROR - [Req#3a4f/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.603 [134213470698296] WARN - [Req#3a4f/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.603 [134213470698296] ERROR - [Req#3a4f/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.603 [134213470698296] WARN - [Req#3a4f/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.603 [134213470698296] ERROR - [Req#3a4f/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.603 [134213470698296] WARN - [Req#3a4f/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.603 [134213470698296] ERROR - [Req#3a4f/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.603 [134213470698296] WARN - [Req#3a4f/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.603 [134213470698296] WARN - [Req#3a4f/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read
Nov 08, 2025 13:33:18.629 [134213543775032] INFO - [Req#3a52/Transcode/bca165aa-5860-4646-a355-d0960e2f9346] Preparing driver imd for GPU Intel DG2 [Arc A380]
Nov 08, 2025 13:33:18.675 [134213517187896] ERROR - [Req#3a63/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.675 [134213517187896] WARN - [Req#3a63/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=mp3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.675 [134213517187896] ERROR - [Req#3a63/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.675 [134213517187896] WARN - [Req#3a63/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=ac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.675 [134213517187896] ERROR - [Req#3a63/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.675 [134213517187896] WARN - [Req#3a63/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=eac3&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.675 [134213517187896] ERROR - [Req#3a63/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.675 [134213517187896] WARN - [Req#3a63/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=dca&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.675 [134213517187896] ERROR - [Req#3a63/Transcode] ClientProfileExtra: missing or invalid type parameter
Nov 08, 2025 13:33:18.675 [134213517187896] WARN - [Req#3a63/Transcode] ClientProfileExtra: ignoring directive: add-transcode-target-codec(scope=videoTranscodeTarget&scopeName=opus&scopeType=audioCodec&context=all&protocol=http)
Nov 08, 2025 13:33:18.675 [134213517187896] WARN - [Req#3a63/Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read

I’m not sure what’s supposed to be normal or not. Anyone have any ideas? Thanks!

Its been 13 days since I made the changes above. In that time, I’ve made two changes. I know I shouldn’t have done that, but I really wanted to not have to worry about this again. I have upped the CPU count to 8 and increased the drive from 80GB to 100GB. The second change was running a script on Plex container startup. Here is the Plex Docker Compose file. This compose is called from a main compose for the container.

include:
  - ../networks.yaml

services:

  plex:
      container_name: plex-container
      image: plexinc/pms-docker:plexpass
      restart: always
      network_mode: host
      volumes:
        - /docker/plex/database:/config
        - /docker/plex/transcode:/transcode
        - /docker/plex/media:/data
        - /docker/plex/scripts:/scripts
      environment:
        - TZ=America/Denver
        - HOSTNAME=HomePlex01
        - PLEX_CLAIM=claim-CTiVabQXtsJNWL1RQHsR
        - PLEX_UID=2092
        - PLEX_GID=2092
        - GID=104
      devices:
        - /dev/dri:/dev/dri
      command: [ "/scripts/./render_group.sh" ]

This is the script that is ran on every Plex start:

#!/bin/bash
# I had to write this script because the Plex server service was going to 1000%+
# I think this had to do with the way I update the Plex container
# My docker container update script deletes the current container (but keeps the volumes with config)
# When this happens, I think the 'render' group is deleted.  This script adds it back and adds that group to the plex user.
if [ $(getent group render) ]; then
  echo "Group render exists."
  tail -f /dev/null
else
  echo "Group render does not exist."
  echo "Adding render group as GID 104."
  groupadd -g 104 render
  echo "Adding video and render groups as supplementary groups to plex user."
  usermod -aG video,render plex
  /./plex_service.sh -r # -d for down, -u for up, -r for restart
  tail -f /dev/null
fi

I’m not sure if the Plex container updates are what caused the plex user to lose the render and video group membership. But so far, things have been working. You’ll notice that at the end of the if and else statements there is a tail -f /dev/null. I discovered that when you run a script inside the container, as soon as the script is done, it actually stops the container. And since I have the Plex container set for restart: always the container was in a reboot loop. Adding the tail command fixes that.

Tonight I upgraded Proxmox to 9.1 and the Plex container’s Debian Bookworm LXC (staying on Bookworm for now). After the reboot, the Intel GPU was still passed through to the LXC, and the container’s plex user was still a member of video and render. I even saw a user streaming tonight and using HW transcoding, so I’m very happy!