Jump to content


Photo

MPEG2 (ATSC) Playback on Roku Stick / Stick+ is very glitchy

mpeg2 transcoding

  • Please log in to reply
9 replies to this topic

#1 ProperlyFormattedDataFile OFFLINE  

ProperlyFormattedDataFile

    Member

  • Members
  • 19 posts
  • Local time: 10:23 PM

Posted 16 May 2019 - 10:26 PM

Hi,

 

I'm using Emby 4.1.1.0 on Linux with an HD Homerun for Live TV.  Playing back MPEG2 content without transcoding results in a lot of graphical glitches that aren't present in the recording itself when transcoded to H.264 at a similar bandwidth.  For example frames will freeze, or movement in the frame will leave blocky trails.

 

Other than setting the maximum bitrate below the broadcast bitrate, is there any way to force the Roku client to always transcode to H.264?

 

Thanks



#2 speechles OFFLINE  

speechles

    Advanced Member

  • App Developer
  • 4466 posts
  • Local time: 07:23 PM

Posted 17 May 2019 - 12:29 AM

Yes. You do not have to disturb the quality. Play your LiveTV channel. Press down to open the video player osd. Now use the cog/gear on the video player osd. Once that opens the playback settings menu choose "Playback Correction" you may have to do it twice to force a full transcode. Playback Correction can be used multiple times. This is the best way to get there and not sacrifice quality.

 

Make sure to check your HD Homerun for firmware updates too. The most recent one fixed all the problems I was having on mine with buffering and glitches. Well not all the problems but most of them.


Edited by speechles, 17 May 2019 - 12:32 AM.


#3 ProperlyFormattedDataFile OFFLINE  

ProperlyFormattedDataFile

    Member

  • Members
  • 19 posts
  • Local time: 10:23 PM

Posted 17 May 2019 - 08:37 PM

Thanks!

 

I can confirm that choosing "Playback Correction" twice (first time doesn't work) fixes the problem for that playback.  Is there any way to persist this setting?  As soon as I hit back, even going back to the same show switches back to MPEG2 video.  I don't think it's feasible long term to have to do this for every show I watch live or before I can permanently transcode to H.264.

 

The HD Homerun is on the latest firmware.



#4 WGB123 OFFLINE  

WGB123

    Member

  • Members
  • 10 posts
  • Local time: 07:23 PM

Posted 24 May 2019 - 01:09 AM

I am experiencing the same behavior on my Roku Streaming Stick.  I was surprised to see, when I enabled "Stats for Nerds," that the server was not transcoding the MPEG2.  According to Roku's website, MPEG2 (H.262) isn't one of the supported media file types for any Roku other than Roku TVs.

 

Even when the bitrate is forced much lower, the picture still experieces macroblocking when the server is sending MPEG2.  When forced to transcode to H.264, the picture is stable at maximum bitrate.  This is when using 5 GHz WiFi approximately four feet from router.

 

Update:  Just purchased a Streaming Stick+.  It can play the MPEG2 Live TV without any problems.  Better WiFi?  Faster processor?


Edited by WGB123, 24 May 2019 - 03:51 AM.


#5 Luke OFFLINE  

Luke

    System Architect

  • Administrators
  • 129305 posts
  • Local time: 10:23 PM

Posted 24 May 2019 - 02:46 PM

I am experiencing the same behavior on my Roku Streaming Stick.  I was surprised to see, when I enabled "Stats for Nerds," that the server was not transcoding the MPEG2.  According to Roku's website, MPEG2 (H.262) isn't one of the supported media file types for any Roku other than Roku TVs.

 

Even when the bitrate is forced much lower, the picture still experieces macroblocking when the server is sending MPEG2.  When forced to transcode to H.264, the picture is stable at maximum bitrate.  This is when using 5 GHz WiFi approximately four feet from router.

 

Update:  Just purchased a Streaming Stick+.  It can play the MPEG2 Live TV without any problems.  Better WiFi?  Faster processor?

 

It could be a faster CPU. Are they both running the same roku software version?



#6 WGB123 OFFLINE  

WGB123

    Member

  • Members
  • 10 posts
  • Local time: 07:23 PM

Posted 24 May 2019 - 03:16 PM

It could be a faster CPU. Are they both running the same roku software version?

 

 

Stick: Model 3800X; Software version 9.0.0 build 4142-55

 

Stick+: Model 3810X; Software version 9.0.0 build 4142-50

 

According to Wikipedia, they both have the same CPU, ARM Cortex A53, but the Plus model has twice the memory.  The Plus model also has "advanced" wireless (whatever that means), unlike the standard model.


Edited by WGB123, 24 May 2019 - 03:28 PM.


#7 speechles OFFLINE  

speechles

    Advanced Member

  • App Developer
  • 4466 posts
  • Local time: 07:23 PM

Posted 24 May 2019 - 06:10 PM

 

Stick: Model 3800X; Software version 9.0.0 build 4142-55

 

Stick+: Model 3810X; Software version 9.0.0 build 4142-50

 

According to Wikipedia, they both have the same CPU, ARM Cortex A53, but the Plus model has twice the memory.  The Plus model also has "advanced" wireless (whatever that means), unlike the standard model.

 

 

it isn't as well optimized for that other streaming stick variant. The ending numbers differing on your firmware versions. That last -xx being different means its a different architecture. Roku "rushed" to add MPEG2 support since the patent lapsed/expired. They knew LiveTV requires it and otherwise Amazon/Android was going to eat them for lunch as far as hardware purchases to get there. Roku at least put itself in the ball game. But they did so at the expense of a somewhat mediocre experience on the lower-end Roku models.

 

The older streaming stick cannot push the bits as quickly nor does it have a good antenna or as good a WiFi chipset as the streaming stick+. They have the same chipset but the streaming stick (non plus model) has half the cores disabled. To avoid overheating. The streaming stick+ has all the cores enabled and has better integration on the chip.

 

The Roku2/3 have all 4 cores enabled, but when playing back video it is only at any time using 2 of those cores. They keep 2 cores disabled to prevent those older boxes from overheat. The Roku4 expanded on this and added the fan to compensate. All 4 cores enabled allowed 4k video. People hated it.

 

Roku went back to the drawing board for the later Roku models. Now they keep all cores enabled and use smaller scale circuitry. No fans. More fits on the chip and gets integrated now. They have a full partnership with FoxConn.


Edited by speechles, 24 May 2019 - 06:18 PM.

  • WGB123 likes this

#8 ProperlyFormattedDataFile OFFLINE  

ProperlyFormattedDataFile

    Member

  • Members
  • 19 posts
  • Local time: 10:23 PM

Posted 28 May 2019 - 12:33 AM

I have both a Stick and a Stick+.  I can confirm that the Stick+ is better than the Stick, but it's not perfect.  On the Stick, MPEG2 is pretty much unusable whereas on the Stick+ it mostly works with some glitches that are not present when transcoding on the server.  This is with OTA broadcasts, so it's possible the Roku just isn't as good at error correction as ffmpeg.

 

I'm fully willing to believe that the blame for this crappy MPEG2 implementation is on Roku (the support in Plex is equally glitchy).  However, until it actually works, could you please add an option on the Emby player to disable native MPEG2 decoding?  It just isn't very good, and I'd like to avoid needing to force lower bitrate transcodes or repeat the secret handshake mentioned in the second comment.

 

Thanks!



#9 ProperlyFormattedDataFile OFFLINE  

ProperlyFormattedDataFile

    Member

  • Members
  • 19 posts
  • Local time: 10:23 PM

Posted 16 June 2019 - 10:56 AM

Some more data about what streams play (stats for nerds reports these numbers as MB, but I'm pretty sure it means Mb):

 

On the 3800X running OS version 9.1 (Stick):

20Mb/s 1080@30fps: Video plays back at inconsistent speed, often turns into a cascade of large blocks.  Unwatchable

8Mb/s 720@60fps: From watchable with noticeable glitches to perfect depending on the channel.  The channels the play perfectly seem to come in closer to 7Mb/s in the Streaming Info section of stats for nerds, channels with glitches go above 8Mb/s, but I don't have a large enough sample to say if that's a coincidence or not

2Mb/s 480@60fps: Plays back perfectly

 

For now I have the device set to transcode all steams above 6Mb/s, but that's unfortunate because it plays back 10Mb/s H.264 streams perfectly.  I'd still prefer a setting where I could set the stick to just always transcode mpeg2.  It's a die-roll as to whether an 8Mb/s stream is going to work without glitches, and transcoding a 2Mb/s stream doesn't require many resources on the server.


Edited by ProperlyFormattedDataFile, 16 June 2019 - 10:56 AM.


#10 roberto188 OFFLINE  

roberto188

    Advanced Member

  • Members
  • 251 posts
  • Local time: 10:23 PM

Posted 18 June 2019 - 08:41 AM

Yeah Roku blows at Mpeg2 implementation despite the fact the chips support it at 1080p 60fps from Roku 3 all the way up to the lastest models. For info, if you want flawless mpeg2 decoding/deinterlacing buy an old Roku Premiere+ (4630). Works perfectly.







Also tagged with one or more of these keywords: mpeg2, transcoding

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users