4K HDR Hardware Transcode

Yes, all the ICR drivers are up to date.

I’m using Unraid 6.9.2 and got working hw transcode on everything, except for HDR tone mapping. I’m using this container Docker Hub and this has worked all year since the last problem with the HDR tone mapping this spring.

I only noticed high CPU’s today, after I checked the history for a user yesterday, that tried to play a 4K HDR movie to there chromecast…

1 Like

meaning a i5-9600K is not supported? and I should just disable this option ?

@LukePOLO

I did not say that.

Specifically, Hardware transcoding of video is supported for:

  1. -2xxx, -3xxx, -4xxx, -5xxx CPUs - up to 1080p H264
  2. -6xxx CPUs - add 2160p H.264 and SDR (8 bit) HEVC 1080p & 2160p
  3. -7xxx CPUs - add HDR
  4. -8xxx CPUs are the KabyLake refresh (improved image processing)
  5. -9xxx CPUs use the revised QSV interface circuits with further improved image processing
  6. -10xxx and -11xxx have a completely new QSV interface (Intel Compute Runtime) while also improving the video processing speeds and quality.
1 Like

I just want to join the conversation and say there is definitely something wrong with 4K HDR hardware transcoding. It use to work and now it stopped.

1 Like

If you uninstall the current and reload a slightly older version, does it work?

( Regression verification is a viable method to confirm “first failure” )

This method forms the basis of " Works in version X but fails in version X+1 "

IF this is the case –

a. One version works
b. The next newer version fails,

PLEASE do the following -

  1. Recreate the failure (DEBUG logging) and download that ZIP file
  2. Get the media info portion of the XML (from <media></media> markers
  3. If possible, also please include enough of a sample (using dd to cut off a snippet which reproduces the problem)
  4. Attach all in the same post.

Older version works.

1.25.1.5286-34f965be8-ls91 To be exact

2 Likes

As I requested,

May I see the DEBUG logging of the failure
and have a sample of the file so I can recreate here?

Plex Media Server Logs_2021-12-25_20-34-43.zip (3.1 MB)

> Media id="7974" duration="8874880" bitrate="18583" width="3840" height="2160" aspectRatio="1.78" audioChannels="6" audioCodec="eac3" videoCodec="hevc" videoResolution="4k" container="mkv" videoFrameRate="24p" videoProfile="main 10">

Part accessible="1" exists="1" id="7992" key="/library/parts/7992/1640238457/file.mkv" duration="8874880" file="/movies/The Matrix Resurrections (2021)/The Matrix Resurrections.mkv" size="20617510069" container="mkv" deepAnalysisVersion="6" requiredBandwidths="25070,24476,22779,20643,19363,18981,18981,18981" videoProfile="main 10">
Stream id="42984" streamType="1" default="1" codec="hevc" index="0" bitrate="17815" bitDepth="10" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="2160" codedWidth="3840" colorPrimaries="bt2020" colorRange="tv" colorSpace="bt2020nc" colorTrc="smpte2084" frameRate="23.976" height="2160" level="150" profile="main 10" refFrames="1" requiredBandwidths="24302,23708,22011,19875,18595,18222,18222,18222" width="3840" displayTitle="4K (HEVC Main 10 HDR)" extendedDisplayTitle="4K (HEVC Main 10 HDR)"> </Stream>
Stream id="42985" streamType="2" selected="1" default="1" codec="eac3" index="1" channels="6" bitrate="768" language="English" languageTag="en" languageCode="eng" audioChannelLayout="5.1(side)" requiredBandwidths="768,768,768,768,768,768,768,768" samplingRate="48000" displayTitle="English (EAC3 5.1)" extendedDisplayTitle="English (EAC3 5.1)"> </Stream>
Stream id="42986" streamType="3" codec="srt" index="2" bitrate="0" language="English" languageTag="en" languageCode="eng" requiredBandwidths="1,1,1,1,1,1,1,1" displayTitle="English (SRT)" extendedDisplayTitle="English (SRT)"> </Stream>
Stream id="42987" streamType="3" codec="srt" index="3" bitrate="0" language="English" languageTag="en" languageCode="eng" requiredBandwidths="1,1,1,1,1,1,1,1" title="SDH" displayTitle="English (SRT)" extendedDisplayTitle="SDH (English SRT)"> </Stream>
<Stream id="42988" streamType="3" codec="srt" index="4" bitrate="0" language="Spanish" languageTag="es" languageCode="spa" requiredBandwidths="1,1,1,1,1,1,1,1" title="Latin American" displayTitle="Spanish (SRT)" extendedDisplayTitle="Latin American (Spanish SRT)"> /Stream>
/Part>
/Media>

Im not sure what you were asking for #3

For item #3,

I am requesting just enough of the file, usually only 5-10 MB worth from the beginning of it, to recreate the failure.

If it’s failing further into the file then we’ll make arrangements to get just enough of it.

The goal here is to launch a playback session, using that same file, and catch the failure if that’s what it takes.

If you notice here, at the bottom of this log file excerpt, the “Segmentation Fault” (error -11)

Dec 25, 2021 20:33:07.349 [0x14a07bd7ab38] DEBUG - Completed: [127.0.0.1:35304] 204 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress?status=startup (11 live) 0ms 203 bytes (pipelined: 2) (range: bytes=0-) 
Dec 25, 2021 20:33:07.349 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress?status=opening (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.349 [0x14a07bd7ab38] DEBUG - Completed: [127.0.0.1:35304] 204 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress?status=opening (11 live) 0ms 203 bytes (pipelined: 3) (range: bytes=0-) 
Dec 25, 2021 20:33:07.350 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress?status=opened (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.350 [0x14a07bd57b38] DEBUG - Completed: [127.0.0.1:35304] 204 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress?status=opened (11 live) 0ms 203 bytes (pipelined: 4) (range: bytes=0-) 
Dec 25, 2021 20:33:07.350 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/stream?index=0&id=0&codec=hevc&type=video (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.350 [0x14a07bd57b38] DEBUG - Completed: [127.0.0.1:35304] 200 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/stream?index=0&id=0&codec=hevc&type=video (11 live) 0ms 195 bytes (pipelined: 5) (range: bytes=0-) 
Dec 25, 2021 20:33:07.350 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/stream?index=1&id=0&codec=eac3&type=audio (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.350 [0x14a07bd57b38] DEBUG - Completed: [127.0.0.1:35304] 200 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/stream?index=1&id=0&codec=eac3&type=audio (11 live) 0ms 195 bytes (pipelined: 6) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=0&id=0&codec=hevc&type=video&profile=Main%2010&width=3840&height=2160&interlaced=0&level=150&frameRate=23.976&disp_default=1 (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07bd7ab38] DEBUG - Completed: [127.0.0.1:35304] 200 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=0&id=0&codec=hevc&type=video&profile=Main%2010&width=3840&height=2160&interlaced=0&level=150&frameRate=23.976&disp_default=1 (11 live) 0ms 195 bytes (pipelined: 7) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=1&id=0&codec=eac3&type=audio&language=eng&channels=6&layout=5.1%28side%29&sampleRate=48000&disp_default=1 (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07bd7ab38] DEBUG - Completed: [127.0.0.1:35304] 200 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=1&id=0&codec=eac3&type=audio&language=eng&channels=6&layout=5.1%28side%29&sampleRate=48000&disp_default=1 (11 live) 0ms 195 bytes (pipelined: 8) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=2&id=0&codec=subrip&type=subtitle&language=eng (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07bd7ab38] DEBUG - Completed: [127.0.0.1:35304] 200 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=2&id=0&codec=subrip&type=subtitle&language=eng (11 live) 0ms 195 bytes (pipelined: 9) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=3&id=0&codec=subrip&type=subtitle&language=eng (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07bd7ab38] DEBUG - Completed: [127.0.0.1:35304] 200 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=3&id=0&codec=subrip&type=subtitle&language=eng (11 live) 0ms 195 bytes (pipelined: 10) (range: bytes=0-) 
Dec 25, 2021 20:33:07.351 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=4&id=0&codec=subrip&type=subtitle&language=spa (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.352 [0x14a07bd57b38] DEBUG - Completed: [127.0.0.1:35304] 200 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress/streamDetail?index=4&id=0&codec=subrip&type=subtitle&language=spa (11 live) 0ms 195 bytes (pipelined: 11) (range: bytes=0-) 
Dec 25, 2021 20:33:07.356 [0x14a07af94b38] DEBUG - Request: [127.0.0.1:35304 (Loopback)] PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress?duration=8874.880000 (11 live) Signed-in Token (ysargon) (range: bytes=0-) 
Dec 25, 2021 20:33:07.356 [0x14a07af13b38] DEBUG - [Transcode] Started session successfully: svdqp3luvy8tlhed08rd9ty9
Dec 25, 2021 20:33:07.356 [0x14a07bd7ab38] DEBUG - Completed: [127.0.0.1:35304] 204 PUT /video/:/transcode/session/svdqp3luvy8tlhed08rd9ty9/91cd84a8-54db-44cf-99c7-cdd2da261ef6/progress?duration=8874.880000 (11 live) 0ms 203 bytes (pipelined: 12) (range: bytes=0-) 
Dec 25, 2021 20:33:07.390 [0x14a07af94b38] DEBUG - Request: [192.168.51.6:50123 (WAN)] GET /status/sessions (11 live) TLS GZIP Signed-in Token (ysargon)
Dec 25, 2021 20:33:07.390 [0x14a07af94b38] DEBUG - [Now] Adding 1 sessions.
Dec 25, 2021 20:33:07.391 [0x14a07bd7ab38] DEBUG - Completed: [192.168.51.6:50123] 200 GET /status/sessions (11 live) TLS GZIP 0ms 3613 bytes (pipelined: 9)
Dec 25, 2021 20:33:07.480 [0x14a07af94b38] DEBUG - Request: [192.168.51.6:50187 (WAN)] GET /status/sessions (12 live) TLS GZIP Signed-in Token (ysargon)
Dec 25, 2021 20:33:07.480 [0x14a07af94b38] DEBUG - [Now] Adding 1 sessions.
Dec 25, 2021 20:33:07.480 [0x14a07bd7ab38] DEBUG - Completed: [192.168.51.6:50187] 200 GET /status/sessions (12 live) TLS GZIP 0ms 3613 bytes (pipelined: 1)
Dec 25, 2021 20:33:07.629 [0x14a07af94b38] ERROR - [Transcoder] [AVHWDeviceContext @ 0x1472dda8e780] No matching devices found.
Dec 25, 2021 20:33:08.089 [0x14a07d3b5b38] DEBUG - Jobs: '/usr/lib/plexmediaserver/Plex Transcoder' exit code for process 552 is -11 (signal: Segmentation fault)
Dec 25, 2021 20:33:08.089 [0x14a07b9a2b38] DEBUG - Streaming Resource: Changing client to use software decoding
Dec 25, 2021 20:33:08.089 [0x14a07b9a2b38] DEBUG - Found session GUID of svdqp3luvy8tlhed08rd9ty9 in session start.
Dec 25, 2021 20:33:08.089 [0x14a07b9a2b38] DEBUG - TranscodeUniversalRequest: using profile Plex Desktop

This is one of the errors we’ve been seeing, The only way to find out what the problem is is by starting the transcoder, using the same command line arguments listed in the logs, using the debugger.

When the transcoder fails, the debugger will show us exactly where it’s at in the code and what it was trying to do . From there, we can look at the source and figure it out.

Thanks for this suggestion! Work solving my issue. Hopefully the Plex team will be able to correct in an update.

@thunderclap

Please tell me what you did ? (I need to know something )

Rolling back to a previous version doesn’t gain anything. We still don’t know what’s broken.

Telling me I solved your issue without any info DOESN’T HELP fix it :smiley:

( At this point I feel like the car mechanic and you saying “It’s broke” :rofl: )

But, did it work to downgrade to that version for you? I’ve tried that, and still didn’t work.

Do I need to do something else then just getting an earlier version of PMS?

I’m sorry but I’m not sure what else to tell you. I run Plex through the Linuxserver docker in Unraid and when trying to play 4k HDR content it would try using the iGPU to transcode. After about 15-20 sec it would fall back to CPU (Core i7-9700k). As soon as I turned off Enable HDR ton mapping it played fine (with the exception muted colors). After hours of trouble shooting the only thing that fixed it was rolling back to a previous version as ysargon suggested.

1 Like

And for me it’s the same way, only that it doesn’t work for me to downgrade. When there was the same problem this spring 2021, all I had to do was to downgrade until the bug was solved, but not, it doesn’t work. Strange.
Also, it has nothing to do with 4K, since even when I try a 1080p HEVC HDR transcoding down to 720p, HW doesn’t work.

/Söder

If you are using Intel iGPU :
Latest compute runtime broke HDR Tone mapping on Plex

Solution : Downgrade compute runtime drivers to 21.49.21786

Install these on your Plex container and test. It worked for me

But how does that do something for us with Unraid? The update is for Plex docker. No unraid update.

Yep, that’s all I did. But that was after uninstalling the Intel iGPU driver, rebooting, reinstalling, then downgrading. So maybe something I did prior helped? I also made sure to remove the two lines in the go file as it apparently is no longer needed.

Sorry I can’t be more specific. I’m headed out of town shortly for a few days and am trying to get everyone packed and out the door.

1 Like

Thanks. If you uninstalled Intel drivers, then that’s why a downgrade works for you, and not me. Great to have that sorted out at least.

/Söder

So, how do I downgrade the Intel drivers inside the Plex container on my Unraid server?

Should I stay on PMS 1.25.1 or the latest PMS 1.25.2 when doing this downgrade for the Intel drivers?