Audio transcode causing video transcode

Server Version#: 1.18.5.2309 (unraid docker)
Player Version#:7.28.0.15196 (nvidia shield)

Not sure how long this has been happening since I can’t quickly see the playback details with the new player. Tested with roku on the same server/files and it only transcodes the audio. My other shield that is connected to a receiver direct plays via audio passthrough.

eia608 subtitles? they seem to be causing transcoding on some videos on shield.

any time the audio is being transcoded, and you enable any subtitles, the video will transcode.

Thanks for the reply. No subs. eac3 audio. XML of example file:

<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="2" librarySectionTitle="TV Shows" librarySectionUUID="341d09b0-2c77-4d14-a912-dd83649bcfdd" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1579823211">
<Video ratingKey="33793" key="/library/metadata/33793" parentRatingKey="32832" grandparentRatingKey="744" guid="com.plexapp.agents.thetvdb://79017/12/9?lang=en" parentGuid="com.plexapp.agents.thetvdb://79017/12?lang=en" grandparentGuid="com.plexapp.agents.thetvdb://79017?lang=en" type="episode" title="Events By Russell" grandparentKey="/library/metadata/744" parentKey="/library/metadata/32832" librarySectionTitle="TV Shows" librarySectionID="2" librarySectionKey="/library/sections/2" grandparentTitle="Squidbillies" parentTitle="Season 12" contentRating="TV-MA" summary="Early interferes with Rusty's new party business and it's last call... for action!" index="9" parentIndex="12" viewCount="3" lastViewedAt="1580751806" year="2019" thumb="/library/metadata/33793/thumb/1568896458" art="/library/metadata/744/art/1568896459" parentThumb="/library/metadata/32832/thumb/1568896459" grandparentThumb="/library/metadata/744/thumb/1568896459" grandparentArt="/library/metadata/744/art/1568896459" grandparentTheme="/library/metadata/744/theme/1568896459" duration="676672" originallyAvailableAt="2019-09-15" addedAt="1568896356" updatedAt="1568896458">
<Media id="97587" duration="676672" bitrate="7185" width="1920" height="1080" aspectRatio="1.78" audioChannels="6" audioCodec="eac3" videoCodec="h264" videoResolution="1080" container="mkv" videoFrameRate="24p" videoProfile="high">
<Part accessible="1" exists="1" id="98792" key="/library/parts/98792/1568624566/file.mkv" duration="676672" file="/mnt/user/Tv Shows/Squidbillies/Season 12/Squidbillies - S12E09 - Events By Russell.mkv" size="607932674" container="mkv" deepAnalysisVersion="4" requiredBandwidths="10133,9369,8367,8158,8158,8158,8158,8158" videoProfile="high">
<Stream id="217211" streamType="1" default="1" codec="h264" index="0" bitrate="6545" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" colorPrimaries="bt709" colorRange="tv" colorSpace="bt709" colorTrc="bt709" frameRate="23.976" hasScalingMatrix="0" height="1080" level="40" profile="high" refFrames="4" requiredBandwidths="9493,8728,7726,7542,7542,7542,7542,7542" scanType="progressive" width="1920" displayTitle="1080p (H.264)"/>
<Stream id="217212" streamType="2" selected="1" default="1" codec="eac3" index="1" channels="6" bitrate="640" language="English" languageCode="eng" audioChannelLayout="5.1(side)" requiredBandwidths="636,636,636,636,636,636,636,636" samplingRate="48000" displayTitle="English (EAC3 5.1)"/>
<Stream id="217213" streamType="3" codec="srt" index="2" bitrate="0" language="English" languageCode="eng" requiredBandwidths="1,1,1,1,1,1,1,1" title="SDH" displayTitle="English (SRT)"/>
</Part>
</Media>
<Extras size="0"> </Extras>
</Video>
</MediaContainer>

post a screenshot of your plex web dashboard with a video transcoding?

also more specific details on this particular shield, what is connected to, wired/wireless, etc.

also you can monitor the logs in real time, filter for MDE: those lines and the lines above below it will give you an idea why it is being transcoded.

Plex Web > settings > troubleshooting > console

if this shield is not connected to a TV instead of an AVR, then it sounds like your tv isn’t compatible.

you may need to disable passthrough and let the shield decode the audio to pcm.

squidbillies

Shield: 8.0.2(32.5.205.105), wired, audio codecs set to auto, connected to samsung KS8000, passthrough disabled

Looks like it is affecting h.264 and not hevc. Profile issue?

Superbad (1080p, h.264, TRUEHD) -> audio + video transcode

Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: Selected protocol hls; container: mpegts
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: analyzing media item 63161
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: Superbad (2007): Direct Play is disabled
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: Superbad (2007): media must be transcoded in order to use the hls protocol
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: Superbad (2007): no direct play video profile exists for http/mkv/h264
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: Superbad (2007): no direct play video profile exists for http/mkv/h264/truehd
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: Superbad (2007): no direct play video profile exists for http/mkv/h264/ac3
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - MDE: Superbad (2007): no direct play video profile exists for http/mkv/h264/pcm
Feb 04, 2020 11:37:50.289 [0x153207dfe700] DEBUG - Superbad - video.profile limitation applies: high != baseline [list]
Feb 04, 2020 11:37:50.290 [0x153207dfe700] DEBUG - Superbad - video.profile limitation applies: high != baseline [list]
Feb 04, 2020 11:37:50.290 [0x153207dfe700] DEBUG - MDE: Superbad (2007): no remuxable profile found, so video stream will be transcoded

A Star Is Born (1080p, hevc, TRUEHD) -> audio transcode

Feb 04, 2020 11:46:22.485 [0x15316eff7700] DEBUG - MDE: Selected protocol hls; container: mpegts
Feb 04, 2020 11:46:22.485 [0x15316eff7700] DEBUG - MDE: analyzing media item 89675
Feb 04, 2020 11:46:22.485 [0x15316eff7700] DEBUG - MDE: A Star Is Born (2018): Direct Play is disabled
Feb 04, 2020 11:46:22.485 [0x15316eff7700] DEBUG - MDE: A Star Is Born (2018): media must be transcoded in order to use the hls protocol
Feb 04, 2020 11:46:22.485 [0x15316eff7700] DEBUG - MDE: A Star Is Born (2018): no direct play video profile exists for http/mkv/hevc
Feb 04, 2020 11:46:22.485 [0x15316eff7700] DEBUG - MDE: A Star Is Born (2018): no direct play video profile exists for http/mkv/hevc/truehd
Feb 04, 2020 11:46:22.485 [0x15316eff7700] DEBUG - MDE: A Star Is Born (2018): no direct play video profile exists for http/mkv/hevc/aac
Feb 04, 2020 11:46:22.488 [0x15316eff7700] DEBUG - MDE: Cannot direct stream audio stream due to codec truehd when profile only allows aac
Feb 04, 2020 11:46:22.489 [0x15316eff7700] DEBUG - MDE: A Star Is Born (2018): selected media 0 / 89675

Squidbillies (1080p, h.264, eac3) -> audio + video transcode

Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - MDE: Selected protocol hls; container: mpegts
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - MDE: analyzing media item 97587
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - MDE: E9 - Events By Russell: Direct Play is disabled
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - MDE: E9 - Events By Russell: media must be transcoded in order to use the hls protocol
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - MDE: E9 - Events By Russell: no direct play video profile exists for http/mkv/h264
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - MDE: E9 - Events By Russell: no direct play video profile exists for http/mkv/h264/eac3
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - Events By Russell - video.profile limitation applies: high != baseline [list]
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - Events By Russell - video.profile limitation applies: high != baseline [list]
Feb 04, 2020 11:27:38.365 [0x15316cff8700] DEBUG - MDE: E9 - Events By Russell: no remuxable profile found, so video stream will be transcoded

go into your shield plex > settings > video (i think or advanced) look for something that says profile, should say something like 5.1 or 5.2 (recommended).

there may also be a ‘new/experimental’ player option, you can try toggling that on or off to see if that makes a difference.

also, play one problem movie for a minute or so, then download logs, drop the zip file into a reply.

Plex Web > settings > troubleshooting > download logs

Switched from 5.1 to 5.2. No dice.

Switched new player off. Also no dice.

Plex Media Server Logs_2020-02-04_12-35-27.zip (191.4 KB)

1 Like
Feb 04, 2020 12:33:36.352 [0x14f095dee700] DEBUG - Request: [192.168.1.90:34584 (Allowed Network (Subnet))] GET /video/:/transcode/universal/start.m3u8?audioBoost=100&autoAdjustQuality=0&directPlay=0&directStream=1&directStreamAudio=1&fastSeek=1&hasMDE=1&includeCodecs=1&location=lan&maxVideoBitrate=200000&mediaBufferSize=209664&mediaIndex=0&partIndex=0&path=%2Flibrary%2Fmetadata%2F33793&protocol=hls&session=a3e8783f60f658aa-com-plexapp-android&subtitleSize=100&videoBitrate=200000&videoQuality=100&videoResolution=3840x2160 (17 live) TLS Signed-in Token (tmack41) (range: bytes=0-) 

this line appears to be the shield requesting the video, if I am understanding it correctly, it appears to say direct play is disabled “&directPlay=0”

I would suggest carefully going through each of the plex client settings, make sure there is nothing that would restrict the video quality or bitrate etc.

Feb 04, 2020 12:33:37.307 [0x14f095dee700] DEBUG - Codecs: Testing with profile 'High'
Feb 04, 2020 12:33:37.338 [0x14f095dee700] DEBUG - Scaled up video bitrate to 9817Kbps based on 1.500000x fudge factor.
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - MDE: Selected protocol hls; container: mpegts
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - MDE: analyzing media item 97587
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - MDE: E9 - Events By Russell: Direct Play is disabled
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - MDE: E9 - Events By Russell: media must be transcoded in order to use the hls protocol
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - MDE: E9 - Events By Russell: no direct play video profile exists for http/mkv/h264
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - MDE: E9 - Events By Russell: no direct play video profile exists for http/mkv/h264/eac3
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - Events By Russell - video.profile limitation applies: high != baseline [list]
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - Events By Russell - video.profile limitation applies: high != baseline [list]
Feb 04, 2020 12:33:37.343 [0x14f095dee700] DEBUG - MDE: E9 - Events By Russell: no remuxable profile found, so video stream will be transcoded
Feb 04, 2020 12:33:37.482 [0x14f095dee700] DEBUG - Events By Russell - video.profile limitation applies: high != baseline [list]
Feb 04, 2020 12:33:37.482 [0x14f095dee700] DEBUG - MDE: Cannot direct stream video stream due to profile or setting limitations
Feb 04, 2020 12:33:37.561 [0x14f095dee700] DEBUG - Codecs: Testing with profile 'High'
Feb 04, 2020 12:33:37.592 [0x14f095dee700] DEBUG - Scaled up video bitrate to 9817Kbps based on 1.500000x fudge factor.
Feb 04, 2020 12:33:37.594 [0x14f095dee700] DEBUG - MDE: Cannot direct stream audio stream due to codec eac3 when profile only allows aac
Feb 04, 2020 12:33:37.595 [0x14f095dee700] DEBUG - MDE: Squidbillies - S12 E9 - Events By Russell: selected media 0 / 97587
Feb 04, 2020 12:33:37.595 [0x14f095dee700] DEBUG - Streaming Resource: Adding session 0x14f05c172a00:a3e8783f60f658aa-com-plexapp-android which is using transcoder slot.  Used slots is now 1
Feb 04, 2020 12:33:37.595 [0x14f095dee700] DEBUG - Streaming Resource: Added session 0x14f05c172a00:a3e8783f60f658aa-com-plexapp-android
Feb 04, 2020 12:33:37.595 [0x14f095dee700] DEBUG - Streaming Resource: Reached Decision id=33793 codes=(General=1001,Direct play not available; Conversion OK. Direct Play=3000,App cannot direct play this item. Direct play is disabled. Transcode=1001,Direct play not available; Conversion OK.) media=(id=97587 part=(id=98792 decision=transcode container=mpegts protocol=hls streams=(Video=(id=217211 decision=transcode bitrate=9817 encoder=h264_nvenc width=1920 height=1080) Audio=(id=217212 decision=transcode bitrate=774 encoder=aac channels=6 rate=48000))))

App cannot direct play this item

appears something within either plex app settings, or shield settings is preventing the player from direct playing.

maybe some others will look to confirm and/or see if there is anything else that can help.

Cool. Thanks for taking a look at it. Video quality is set to max. If I have a file that has both truehd and dtshd, for example, it will do a full transcode on the true audio and direct play if i select the dtshd audio stream

Server Version#: 1.18.6.2368
Player Version#: 7.28.0.15368

Have no idea how my server updated since i have it running in a docker on unraid and I don’t recall updating it.

Still having the issue, but transcoder performance has been improved to the point where I can’t distinguish between a direct play, so not as big of a deal. No idea if it was the player update or the server update that fixed the transcoding performance.

Previously if I tried to jump back 10 seconds in the file, it would jump 1 minute forward through the file.

edit:

Did some more testing and transcoding works fine if i play from the beginning, but if I resume playback, I get the issue where it skips forward when i try to skip back. Tried with and without ram transcoding. I think I will try a windows server and see if it is any different.

Any update? Same issue here. Seems like it’s only h264 for me though.

Still happening for me. Also appears to only affect h264. I guess other people are using receivers or just haven’t noticed yet.

Im getting the same issue and so is every other person I know with a Shield. I have a few that have access and they are all reporting playback issues, buffering and messages about network performance.

This just started up recently, not sure whats causing it, but it looks to be on the Plex side.
I can play it without video transcode just find in the KODI Plex Plugin and in Jellyfin.

Transcoding both the audio and the video for files with EAC3 seems to be an Android issue.
My phone, all my Nvidia Shields and my Firestick do this.

My Chrome Client, Windows Client and Roku’s use Direct Play. Hell casting to my Shield and even my Nest Home Hub display use Direct Play.

Looks like this is finally getting attention. I see a dev posted in the other thread you linked. Hopefully an easy fix.

which link is that?

Seems we might be able to do this by changing the android.xml profile and adding in direct play support for mkv containers and eac3 audio.

Unfortunately I can’t test this, as I can’t seem to access the profiles directory on my Docker based install, and cant edit the file in my Snap based install. Grrrrr.

If someone else wants to give it a try go to the following directory.
/plexmediaserver/Resources/Profiles
Edit the Android.xml file.
Under<DirectPlayProfiles> change
<VideoProfile container="mp4" codec="h264,mpeg4" audioCodec="aac" />
to
<VideoProfile container="mp4,mkv" codec="h264,mpeg4" audioCodec="aac,eac3" />
Save the file and I assume restart the server.
Test playback.

@dan-the-man H264 to H264 transcoding ever since Plex Android update 7.28

I should have said the other thread links to this one.

@ritalin Tried editing the default android profile on my test windows box as well as creating custom profiles under /plexmediaserver/Library/Application Support/Plex Media Server/Profiles on my main docker install. Neither worked. I do agree that the logs seem to suggest an issue with the profile.

Hi tmack.

Can you check out my thread? I posted your log to a dev and he replied. I can’t reproduce as I’m not going to be home for a while. Just in case you wanted an opportunity to provide more info to a dev.