MPEG2VIDEO stream is getting transcoded to H264 when being sent to Roku TV

Server Version#: 1.19.4.2935
Player Version#: 6.6
TV: TCL 43" TCL Roku TV (43S515)

Until maybe a few days ago, I’ve been able to watch live TV without it needing to be transcoded to H264. However, now, it’s getting transcoded to H264. This causes the ATSC subtitles to disappear (since these are encoded as part of the video stream).

This started when I was in 1.19.3.x, and I didn’t do any server update between when it was working and when it stopped working.

If anyone wants to look at this, here’s the request that my Roku TV sends to plex:

Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] DEBUG - Request: [192.168.3.125:59437 (Allowed Network (WAN))] POST /livetv/dvrs/5/channels/5.1/tune (14 live) TLS GZIP Signed-in Token (saiarcot895)
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * Accept => application/xml
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * Accept-Encoding => deflate, gzip
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * Accept-Language => en
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * Host => nuc.saiarcot895.me:32400
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * User-Agent => Roku/DVP-9.30 (309.30E04182A)
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Advertising-DoNotTrack => 0
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Advertising-Identifier => 893af79a-bb12-558e-8c6b-9ed4c05362e3
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Client-Capabilities => videoDecoders=h264{profile:high&resolution:1080};audioDecoders=aac{channels:2},ac3{channels:6},eac3{channels:8}
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Client-Identifier => 4fb768844cb1caa3d75618c671e71246
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Device => 43S515
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Device-Name => 43" TCL Roku TV
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Device-Vendor => TCL
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Features => external-media,indirect-media
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Model => 7000X
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Platform => Roku
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Platform-Version => 9.x
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Product => Plex for Roku
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Provides => player,pubsub-player
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Token => xxxxxxxxxxxxxxxxxxxx
Jul 19, 2020 08:25:17.832 [0x7f8b26ffd700] VERBOSE -  * X-Plex-Version => 6.6.4.6468-8be6f8f5b-Plex - Stream Free Movies & TV
...
Jul 19, 2020 08:25:17.972 [0x7f8b3dffb700] DEBUG - We're going to try to auto-select an audio stream for account 1.
Jul 19, 2020 08:25:17.972 [0x7f8b3dffb700] DEBUG - Selecting best audio stream for part ID -1 (autoselect: 1 language: en)
Jul 19, 2020 08:25:17.972 [0x7f8b3dffb700] DEBUG - We're going to try to auto-select a subtitle.
Jul 19, 2020 08:25:17.972 [0x7f8b3dffb700] DEBUG - Subtitles: Found a candidate subtitle language [] for a foreign film
Jul 19, 2020 08:25:17.972 [0x7f8b3dffb700] DEBUG - Audio Stream: -1, Subtitle Stream: -1
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: Selected protocol hls; container: mpegts
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] ERROR - Unable to find title for item of type 5
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: analyzing media item -1
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: : no direct play video profile exists for http/mpegts/
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: : no direct play video profile exists for http/mpegts//
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: : selected subtitle stream  has no codec
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: : codec is unavailable for analysis
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: : codec is unavailable for analysis
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] ERROR - Unable to find title for item of type 5
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] DEBUG - MDE: : selected media 0 / -1
Jul 19, 2020 08:25:17.973 [0x7f8b3dffb700] VERBOSE - [IDLE] Adding (0->1) work item transcoder - 3df20971-8987-4900-9d02-a5755db89beb

In the Plex Roku client, in Settings -> Video, there should be an option to Allow MPEG2. Is this checked? Also check if Allow Direct Stream is checked. If neither works then experiment with setting Direct Play to forced.

With Allow MPEG2 checked, Allow Direct Stream checked, and Direct Play set to auto, it still transcodes the MPEG2 stream. With Direct Play forced, it sends the MPEG2 stream, and it plays fine on the client (the captions show up as well, which doesn’t happen during transcoding because it gets lost during transcoding). If I change it back to auto, it starts transcoding again.

This was working fine for a while (at least 9 months), but then broke about 1-1.5 months ago.

I don’t doubt what it is doing for you, but I can’t recreate it. On my Sharp Roku TV if I have MPEG2 checked, Direct Stream checked, and Direct Play set to Auto then mine direct streams (not direct play) both video and audio, and I get the ATSC subtitles. If I uncheck MPEG2 then it does transcode the video to h.264 and I loose the subtitles.

If you force direct play it works, so at least your system is capable! We need to find out why your setup is deciding to transcode. While you have your Roku TV “incorrectly” transcoding, would you go into the Plex web dashboard, and make sure “Show Detail” image on the right is selected, and then screen snapshot that item under “Now Playing”. I’m interested to verify local/remote, resolution, bandwidth, and to see the details of what it shows for the transcoding.

Sure, here’s the screenshot:

image

In the Plex client, again in Settings -> Video, what is “Local Quality” set to? If it isn’t already, try “Original”.

If that doesn’t fix the problem, then are either your Roku TV or Plex server on Wifi? A wifi signal that isn’t strong can cause slower transmission rates, which Plex can see and cause it to reduce bandwidth to match what it thinks is available. If possible, try ethernet cable to a device on wifi to see if it resolves the issue.

Local quality is set to Original, remote is set to 20 Mbps/4K. TV is on ethernet.

I just had a hunch, and while playing live TV, I went into the stream settings, and the quality was set to 20 Mbps. While watching a channel that broadcasts in 1080i, I changed it to original, and now it’s not transcoding it anymore. The dashboard also says that 10 Gbps is allocated for the bandwidth of the stream (my network links are only 1 Gbps). If I go to another channel that broadcasts in 720p (ABC), the video quality already says it’s the original, but the server is still transcoding it.

image

I decided to change the remote quality setting to Original instead of 20 Mbps/4K, and now both CBS and ABC are being direct streamed without transcoding.

So there’s a few issues here:

  1. Plex is considering my TV as being on a remote network, even though the IP address block is set in the LAN networks. This may or may not be related to me using a custom SSL certificate and custom domain.
  2. Plex is considering direct stream of live TV to take potentially 10 Gbps, even though an ATSC channel has a max of 20 Mbps, I think(?)
  3. Original for 1080i is considered different than original for 720p.

Thanks for directing me towards possible settings to check!

I’m having the same issue I think but with a FireTV. It started a few weeks ago. My server is normally able to stream high quality 1080p to multiple people while direct streaming something to me in my place, but now it can barely seem to handle two people even though the CPU usage isn’t spiking or anything. I have changed every setting you can think of back and forth trying different ways and nothing seems to work. I will take some logs soon and post them.

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