Jump to content

Stop transcoding MPEG2 to Roku


tcjones5305

Recommended Posts

tcjones5305

Does anyone have some guidance on how to get Emby to stop transcoding MPEG2 to H.264 when streaming to my Westinghouse WR32HB2200 Roku TV?
I thought Roku supported direct playing of MPEG2.
The file I am streaming is a .ts file that is recorded from Emby DVR on a HDHomerun Connect Quatro.
The Emby dashboard says the reason for transcoding is "Container not supported".

Thanks,
Terry

  • Like 1
Link to post
Share on other sites
speechles
27 minutes ago, ebr said:

Hi.  As noted by the message the issue is with the container, not the codec - although only Roku TVs can support mpeg2.  None of them can take a raw .ts container.  And then, once you convert the container to HLS, then mpeg2 is no longer a supported codec.

https://developer.roku.com/docs/specs/media/streaming-specifications.md

Actually.. The TS container is supported for direct play if the mpeg2 codec is also supported on the device. But.. you cannot closely sync the video/audio or accurately guess jumping point when seek. So Roku has disabled seek when using Direct Play on the Roku with TS containers. The Roku considers them "live streams" and the only option you get is to pause (or rewind) and create a buffer which will allow seek within that buffer only.

If you want to offer the option for users to make use of direct play knowing they will not be able to seek forward we can. Even offer the ability with playback correction to start it involving ffmpeg (directstream/remux) so users can seek forward past the progress point which is where it thinks the real-time point is.

But just correcting the statement that "none of them take a raw .ts container" is not accurate as any model that supports mpeg2 will. It is not just Roku TV. Roku Ultra, Roku Streaming Stick+, and Roku Premiere also support mpeg2/ts direct playback.

Edited by speechles
Link to post
Share on other sites
speechles
12 hours ago, ebr said:

Not being able to seek is not supporting it fully in my view.  That also means you cannot resume.

Yeah. Missed that. The fact you cannot resume makes direct play theoretically impossible. You cannot resume a TS in direct play therefore it becomes futile to discuss it. I see your point. :)

Link to post
Share on other sites
5 hours ago, tcjones5305 said:

Is there a way to have Emby record the TV program to a format that Roku can actually play directly?

You can setup conversion tasks to convert them after the fact.  We simply record the stream that comes in and that is the format of live TV.

Link to post
Share on other sites
tcjones5305

I have tried that, but all my conversions fail and I am not sure how to troubleshoot.
I will post a new question regarding that issue.
Thanks for your help.

Link to post
Share on other sites
1 hour ago, tcjones5305 said:

I have tried that, but all my conversions fail and I am not sure how to troubleshoot.
I will post a new question regarding that issue.
Thanks for your help.

Yes we're happy to help with that. Thanks.

Link to post
Share on other sites
1 hour ago, kyote4827 said:

How would you do this with live tv? Can't do the conversation and still watch it live (other than let it transcode).

Live TV on the Roku should only be requiring a remux not a full transcode but we'd need to look at a specific example.

 

Link to post
Share on other sites
On 12/21/2020 at 11:50 AM, ebr said:

Live TV on the Roku should only be requiring a remux not a full transcode but we'd need to look at a specific example.

 

Sorry about that, went on vacation. Let me get one together!

Link to post
Share on other sites
  • 1 month later...
EmbyDoser

I too am seeing the same thing. Full transcode when playing live TV on Roku Ultra 4k. TV is coming through a HDHomerun Dual. Emby Server 4.5.4.0 is running on Unraid in a Docker container.

@Luke What logs/info do you need from me for debugging?

Edited by EmbyDoser
More info
Link to post
Share on other sites
speechles

Is the stream interlaced? The server is doing this. The Roku is not telling the server to transcode because the stream is interlaced. Certain Roku devices such as Roku express and the older Roku3 and such cannot de-interlace therefore do not report support for MPEG2. But the majority of other devices can indeed deinterlace and properly report support for MPEG2 because of this. For sure Roku TV can since that is where the interlaced broadcast originated that already reports support for MPEG2 and plays perfectly. Once the server is changed the behavior will be back to normal on your Roku.

We read device support directly from your device in the Roku app. When the device reports support for MPEG2 this includes support for 60fps and for deinterlacing. In some cases some TV may not support hevc at 60fps. We have a flag in the Roku app for users to switch if your TV model is one of these models. There are also other switches in the Roku app settings when a Roku TV is detected that will be exposed. There are ways to work around most issues we know about within playback settings.

He would just need server logs showing the way the MPEG2 items are being delivered to the Roku. Then the relevant ffmpeg log showing how that is built and delivered to the Roku. Thanks.

Edited by speechles
Link to post
Share on other sites
ebr

Hi.  If the source was interlaced, that is the answer and we probably don't need to look at logs.

Link to post
Share on other sites
EmbyDoser

@ebr are you saying that's a bug with emby-server that will be resolved or are you saying there is no fix for in that case? Broadcast where I live is generally interlaced.

I can confirm that a live channel that is progressive just remuxes, but does not re-encode.

Edited by EmbyDoser
Link to post
Share on other sites
Jason'sEmby

I just forced my Roku devices to not transtranscode by just disabling transcoding. They seem to work pretty well. I've tested it on TCL, Roku Express, and Hisense. 

Link to post
Share on other sites
speechles

@Jason'sEmby Thanks for confirm this is a server issue. It shall be corrected. Thanks for hanging with us during the transition. Things will get better. ^_^

  • Like 1
Link to post
Share on other sites
Jason'sEmby
1 hour ago, speechles said:

@Jason'sEmby Thanks for confirm this is a server issue. It shall be corrected. Thanks for hanging with us during the transition. Things will get better. ^_^

This is what it shows with transcoding disabled. I guess when you disable transcoding it forces the Roku to do whatever it needs to do with the container.

20210212_092351.jpg

Screenshot_20210212-092517_Emby.jpg

Edited by Jason'sEmby
Link to post
Share on other sites
speechles

When you disable transcoding it will only allow the video and audio codec to be copied. This will work on the Roku since it supports both MPEG2 and AC3. But if you were to play an AVI it would fail as these are likely MPEG4 with MP3 and the Roku will fail to support AVI and cannot place MPEG4 inside HLS so it will fail.

The TS container is supported on Roku but you cannot seek backwards into the stream. You can only pause and fast-forward/rewind into the pause buffer Roku has built on the device. This is not as good as having Emby control the buffer. When Emby controls the buffer you can seek the entire progress buffer.

  • Thanks 1
Link to post
Share on other sites
Nat Hill remote

I have a solid computer running Emby Server, capable of transcoding several streams at once.  Any decent computer in my home can play HDHomeRun directly through Emby Serve and it will look fantastic.
Web browsers and various Roku devices I have scattered over the house for some reason feel the need to transcode 1080i streams, and they look horrible, pixelate like an atom 25w computer with a cheap video card.
I have tried some of the suggestions listed above for my Rokus.
I've given up on web browsers, but hoping to fix Roku, which looks good on 720p stations.
I would love to shut off transcoding on my Rokus as described above, but can't figure out how to do it.  Or did Jason's Emby shut off transcoding at the server?  I couldn't figure out how to do that either.
Any help would be appreciated.  The main reason I bought Emby Server was to record OTA signals.

ps.  I agree with what I read above "I can confirm that a live channel that is progressive just remuxes, but does not re-encode. "
And in my setup, the progressive stations look MUCH better on my Rokus.

Link to post
Share on other sites
roberto188

I just noticed this switching from the Version 3 server to the Version 4. On the version 3 server all my Roku's 3s, Streaming sticks, Premiere+s all direct stream live TV and deinterlace perfectly. All Roku's 3 and above now support deinterlacing. There is no reason for live TV to be transcoded anymore, just direct streamed. Is this something you can please correct. Right now the Version 4 server transcodes Mpeg 2 interlaced when going to Rokus. Thanks!

Link to post
Share on other sites
Nat Hill remote

Thanks roberto 188,

So here's my next question.
How do I go back to Version 3?
I don't need five thousand new and improved options, I just need a server that can properly record and play my HDHomeRuns.

That's all I'm asking.

Link to post
Share on other sites
pwhodges

If you can download a version 3 (I don't know if you can any longer) your present database would be highly incompatible because of changes and additions that have been made over the past year or more.  So you would need to do a clean install and define and scan your library from scratch.

Paul

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...