Can't play 4K HDR on Nvidia Shield Pro

Server Version# Plex Media Server v1.32.1.7510-91e1e2e2c - NVIDIA SHIELD Android TV
Player Version#: Plex 10.0.0.4149

I have an Nvidia Shield Pro that runs Plex and Plex Media Server.
I have enabled maximum bandwidth for local and remote streaming on the Plex client.
I have disabled video transcoding on PMS.
My TV is 4K HDR10 compatible but no Dolby Vision support.

No issue with 1080p movies.
But 4K HDR always want to be transcoded.

1/ I enabled debug mode and tried to understand the logs.

Here is what i’ve found on server side :

Sep 28, 2023 21:40:35.474 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: Selected protocol hls; container: mkv
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: analyzing media item 116
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: Direct Play is disabled
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: media must be transcoded in order to use the hls protocol
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: selected audio stream is not the first audio stream and direct play stream selection is not enabled
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no direct play video profile exists for http/mkv/hevc
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no direct play video profile exists for http/mkv/hevc/dca
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no direct play video profile exists for http/mkv/hevc/dca
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] foo - video.colorTrc limitation applies: smpte2084 != bt709|bt470m|smpte240m|smpte170m|bt470bg|bt2020-10 [list]
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no remuxable profile found, so video stream will be transcoded
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: Cannot direct stream video stream due to profile or setting limitations
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: selected media 0 / 116
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] Streaming Resource: Required bandwidth unknown (media requires deep analysis) Changing decision parameters provided by client to fit bandwidth limit of 200000kbps
Sep 28, 2023 21:40:35.475 [211284569280] DEBUG - [Req#1897e/Transcode] Streaming Resource: Determining preferred transcode encoders through transcode only decision.
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] Streaming Resource: Reducing playback quality for 190476kbps stream bitrate: audio channels to 6, quality to 99, disable audio DS as 2147483647kbps is > the 768kbps available
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] Clipped max bitrate to 82944Kbps based on client-requested limit
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: Selected protocol hls; container: mkv
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: analyzing media item 116
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: Direct Play is disabled
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: media must be transcoded in order to use the hls protocol
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: selected audio stream is not the first audio stream and direct play stream selection is not enabled
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no direct play video profile exists for http/mkv/hevc
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no direct play video profile exists for http/mkv/hevc/dca
Sep 28, 2023 21:40:35.477 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no direct play video profile exists for http/mkv/hevc/dca
Sep 28, 2023 21:40:35.478 [211284569280] DEBUG - [Req#1897e/Transcode] foo - video.colorTrc limitation applies: smpte2084 != bt709|bt470m|smpte240m|smpte170m|bt470bg|bt2020-10 [list]
Sep 28, 2023 21:40:35.478 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: no remuxable profile found, so video stream will be transcoded
Sep 28, 2023 21:40:35.478 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: Cannot direct stream video stream due to profile or setting limitations
Sep 28, 2023 21:40:35.478 [211284569280] DEBUG - [Req#1897e/Transcode] Clipped max bitrate to 82944Kbps based on client-requested limit
Sep 28, 2023 21:40:35.478 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: Audio Direct Streaming is disabled, so video's audio stream will be transcoded
Sep 28, 2023 21:40:35.479 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: Cannot direct stream audio stream due to profile or setting limitations
Sep 28, 2023 21:40:35.479 [211284569280] DEBUG - [Req#1897e/Transcode] MDE: foo: selected media 0 / 116
Sep 28, 2023 21:40:35.480 [211284569280] DEBUG - [Req#1897e/Transcode] Streaming Resource: Reached Decision id=69 codes=(General=2000,Neither direct play nor conversion is available. Direct Play=3000,App cannot direct play this item. Direct play is disabled. Transcode=4002,Not enough CPU for conversion of this item.)
Sep 28, 2023 21:40:35.480 [211284569280] VERBOSE - It took 0.0 sec to serialize a list with 0 elements.
Sep 28, 2023 21:40:35.481 [212973321408] DEBUG - Completed: [192.168.1.17:58412] 200 GET /video/:/transcode/universal/decision?audioBoost=100&autoAdjustQuality=0&directPlay=0&directStream=1&directStreamAudio=1&fastSeek=1&hasMDE=1&location=lan&maxVideoBitrate=200000&mediaBufferSize=209664&mediaIndex=0&partIndex=0&path=%2Flibrary%2Fmetadata%2F69&protocol=*&session=d3fa77f55f1ee992-com-plexapp-android&subtitleSize=100&videoBitrate=200000&videoQuality=100&videoResolution=3840x2160 (24 live) #1897e TLS GZIP 61ms 727 bytes (pipelined: 26)

I think the issue is this one :

Sep 28, 2023 21:40:35.478 [211284569280] DEBUG - [Req#1897e/Transcode] foo - video.colorTrc limitation applies: smpte2084 != bt709|bt470m|smpte240m|smpte170m|bt470bg|bt2020-10 [list]

smpte2084 seams to be part of HDR standard, but for some reason, Plex client says it doesn’t accept it. My TV is HDR compatible, and I can read this movie with VLC in 4K HDR.

Why smpte2084 isn’t added by the Plex client ?

2/ I’ve found a customized Plex profile for the Nvidia Shield,

As far as I understand, this allows more content (especially 4K HDR) to be direct play on Shield. If i got it right, then I’m a bit puzzled why Plex Team doesn’t include the file directly on their own app release. Maybe there is a good reason ?

Thanks for your help!

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