Jump to content

Issue with watching in-progress recording on Roku TCL TV


DamnedUndies

Recommended Posts

I know for a fact that the Streaming Stick+ can handle MPEG2 as I've successfully been able to play OTA streams from a HDHomeRun with DLNA via the Roku Media Player channel.  The channel is not adding any additional functionality as this does not work on a Roku Express.

 

Other users have mentioned that their Roku Ultras and Premiers can do the above as well.  This isn't a big secret.  There are plenty of forum posts, especially over on the Silicon Dust forums discussing exactly this.

 

If you want me to film my Streaming Stick+ in action, let me know.

 

I know for a fact roku ultra and premier do not. I have these devices. There is no mpeg2 support, period. End of line. You can stop where you are going with these. You might be able to get mpeg2 with NDK access and linux kernel support. Some roku apps use this and can do things normal roku apps cannot, notably is netflix, amazon and hulu. The emby app does NOT pay roku for access to this. There are several reasons why, but most of which is cost, limitations, and liability make it prohibitive. So you are stuck with the scene graph app which supports only what roku officially supports. Or unofficially some extra things may work, this is the grey area we are in now. This is where proof is required.

 

Streaming stick, I dont presently own one of these. But streaming stick+ I believe @@ebr himself can test this. Isn't a need for video. What is needed is model #, model name, firmware version of things that can play mpeg2 directly. Then the developers can directly buy these devices and confirm personally with a doubt, yes, no or maybe so. To take the word of anyone, other than roku on the subject, is tantamount to willy nilly. Having the device yourself as you develop the app, and testing on that device is proof. Since you and not anyone else has this proof, it isn't usable as proof. If you know what I mean. I mean it is, but you cant prove it. Video can to some extent if using the method below.

 

So to that effect, if you want to take video proof of this direct playing, try doing so within the blue neon night emby app, set it to force direct. Now play the item, when it is playing press "OK" and an OSD pops up, take a screenshot of what that shows. This will be pretty good definite proof of what you saying.

 

To my knowledge, and to the extent of roku officially, the only device capable of mpeg2 is the rokuTV.

Edited by speechles
Link to comment
Share on other sites

Happy2Play

I know for a fact roku ultra and premier do not. I have these devices. There is no mpeg2 support, period. End of line. You can stop where you are going with these.

 

Streaming stick, I dont presently own one of these. But streaming stick+ I believe @@ebr himself can test this. Isn't a need for video. What is needed is model #, model name, firmware version of things that can play mpeg2 directly. Then the developers can directly buy these devices and confirm personally with a doubt, yes, no or maybe so. To take the word of anyone, other than roku on the subject, is tantamount to willy nilly. Having the device yourself as you develop the app, and testing on that device is proof. Since you and not anyone else has this proof, it isn't usable as proof. If you know what I mean. I mean it is, but you cant prove it. Video can to some extent if using the method below.

 

So to that effect, if you want to take video proof of this direct playing, try doing so within the blue neon night emby app, set it to force direct. Now play the item, when it is playing press "OK" and an OSD pops up, take a screenshot of what that shows. This will be pretty good definite proof of what you saying.

 

To my knowledge, and to the extent of roku officially, the only device capable of mpeg2 is the rokuTV.

 

Not that I have any but Help menu from RMP on my Ultra says it does and Neon shows it also.

 

5b8df1813b7c2_IMG_0153.jpg

Edited by Happy2Play
  • Like 1
Link to comment
Share on other sites

It looks like MKV with mpeg-2 works, as well as possibly XViD in MKV. I need more samples to test though. Downloading a ton from kodi samples site all in MKV container as that has special powers on roku apparently. 

 

For positive, TS and WTV will only work on rokuTV. Not sure about WTV, seen a few people say it works forcing direct with p--x others say it doesn't. Maybe device dependent. I know the mstar variety of devices, those based on rokuTV chipsets, are what premier, premier+, and ultra are built on. This might explain their new abilities. After I run a few tests tomorrow I can say for sure what MKV can and cannot do on the ultra.

Link to comment
Share on other sites

Just for fun I tested my roku ultra and using roku media player app to view a channel from my HDhomerun Extend. Format was h.264 within a .TS container and it takes about 10 seconds to play....but it does play, so they somehow are playing from within a TS container.

Link to comment
Share on other sites

Just for fun I tested my roku ultra and using roku media player app to view a channel from my HDhomerun Extend. Format was h.264 within a .TS container and it takes about 10 seconds to play....but it does play, so they somehow are playing from within a TS container.

 

mpeg2 in TS is the issue

h264 is not an issue.

 

The server is likely transcoding for you and why it takes that 10 seconds. Convert the ts to hls m3u8 and serve up ts slices.

 

In running a few tests it appears DIVX,DX50,XVID as the codec tag in an mpeg4 works in MKV. MP4V codec tag does not work in MKV. The only one I found not supported.

So everybody with AVI some very good news, if you remux these as MKV without touching the streams, just converting the container from AVI to MKV will allow these to direct play.

 

Still doing some tests with mpeg2 in MKV. But all tests appear to work. Still trying to find cases where mpeg2 in MKV can break.

Edited by speechles
Link to comment
Share on other sites

Fair enough, wasn't using the emby server, I was going direct to the HDhomerun box from the roku media player app.

 

I only mention it as emby direct streams the recording with a container swap for the .TS yet the roku media app stand alone processes the same media (albeit live not recorded) by itself.

Link to comment
Share on other sites

Fair enough, wasn't using the emby server, I was going direct to the HDhomerun box from the roku media player app.

 

I only mention it as emby direct streams the recording with a container swap for the .TS yet the roku media app stand alone processes the same media (albeit live not recorded) by itsel

 

If you don't change container from TS then the ability to seek will be problematic. The remux doesn't alter the video or audio streams at all. It just changes the container from one which has issues seeking to the HLS streaming where seeking can be done without issue.

 

In my tests, roku ultra can support: h262(mpeg2), h263(xvid/divx), h264(avc), h265(hevc)

 

caveat: h263 cannot be an MP4V codec tag.

Edited by speechles
Link to comment
Share on other sites

Ahhh, i forgot about the seeking. I knew you would have an answer, being the resident roku authority!

 

Thanks

Link to comment
Share on other sites

Ahhh, i forgot about the seeking. I knew you would have an answer, being the resident roku authority!

 

The exclamation point seems insulting. Mind you anybody can test videos. To be an authority one must test many many videos. First hand experience. It just takes a menagerie of different flavors of containers and codecs. Like a cornucopia of content.

 

I have assembled a bit of that here as proof of what I am talking about.

 

https://drive.google.com/drive/folders/1AUvCY0zMr0_8Kr-bZxgJC11B--2g40mi

 

 

 

 

 

4640X - Roku Ultra - Version 8.1.0 build 4145-29

 

Plays Direct - Filename

-------------------------------

NO - 576p_mpeg2_mp2_bbc_news.wtv

NO - 1080p_mpeg2_ac3_Today_WHDHDT_2016_06_06_11_25_23.wtv

NO - MP4_MP4V_AAC-LC(mkvmerge).mkv

YES - MP4_avc_mp3(720p)(SUPER).MKV

YES - MP4_DIVX_AAC-LC-(mkvmerge).mkv

YES - MP4_DX50_AAC-LC(mkvmerge).mkv

YES - MP4_Xvid_AAC-LC(mkvmerge).mkv

YES - MPEG2_1080i_sample.mkv

 

The .wtv weren't expected to play, but mileage may vary on rokuTV models. They might play them... So...Anyone else care to run these tests on their model of roku? Using blue neon "force direct" and change in options/preferences the setting for "Fallback Retries" to 0 [none]. In this way, the app will visibly show what fails and will only play what can play directly. There is no fallback transcoding this way. :)

 

 

What will probably end up happening for these edge cases where codec support varies there is a need for device.CanDecodeVideo() to query the device if it can handle h262 and h263. Same as done now to detect h265 support, query the device. That is probably how Roku Media Player adds support. But somehow they missed h263, so we can beat them at their own game. Roku Media Player beat us to h262, but now it's the same game in reverse with h263. 

 

Tag! You're "it" Roku Media Player! ... lol

 

@@ebr @@Luke nickname highlight to bring you both into the conversation.

Edited by speechles
Link to comment
Share on other sites

@@speechles you took that the wrong way, it was a compliment. Bad wording on my part.

 

Whenever I have had any roku questions you have always been very helpful so I consider you the best reference on the subject.

 

I was only jumping in on the thread as I was surprised it played for me directly from the HDhomerun to the roku and had forgotten the reasons emby streams instead.

Link to comment
Share on other sites

@@speechles you took that the wrong way, it was a compliment. Bad wording on my part.

 

Whenever I have had any roku questions you have always been very helpful so I consider you the best reference on the subject.

 

I was only jumping in on the thread as I was surprised it played for me directly from the HDhomerun to the roku and had forgotten the reasons emby streams instead.

 

No harm done. Water off a ducks back. I didn't know if intent was there. It was just the guy before took my wording as rather than a teacher or parent he took it as insulting and denigrating. I dont intend to sound that way. It is just in the internet world, you can't smile, wink, make hand gestures. You are limited in text being the only way to get your point across. So at times the impression given might not match the expression meant. Sorry. There is no ill intent. I am trying to make roku a better streaming platform, and make emby the point of the sword of that effort. The tip of the point of the sword. The people mention but emby on roku can do it, and from there they add support. Roku will be given a link to this thread to help their Roku Media Player get better too. :)

 

Thanks @@speechles you've compiled some great info here.

 

If the app could instead when streaming AVI (mpeg4 part2) and TS (mpeg2) ask the server to remux into MKV using ISM instead of HLS. This would make it more like *cough* the other guys *cough* but maybe its time. Food for thought. Wink Wink. Nudge Nudge.

Link to comment
Share on other sites


Brightscript Debugger> test5 = { Codec: "mpeg4", Container: "mkv" }
 
Brightscript Debugger>  device = CreateObject("roDeviceInfo") : PrintAnyAA(4,device.CanDecodeVideo(test5))
        updated: codec
        codec: (list of 6)...
          List(0)= hevc
          List(1)= mpeg1
          List(2)= mpeg2
          List(3)= h263
          List(4)= mpeg4 avc
          List(5)= vp9
        result: false
hmm... lets try again, forum ate everything I posted down here on my last post for some reason.. wtf..
 
 
 
hevc - normal to see that roku advertises it. Weird to see it at the top as if prefered. Wonder what order this list is in?
 
mpeg1 - hmm.. Why is this here? The roku can decode mpeg1 but in what container? Interesting.. isn't mpg extension. What extension can the roku play mpeg1 in? Does it mean it can play in mkv since thats the container I gave it? Clearly it advertises via candecodevideo it can.. weird...twilight zone weird.. will need to run some mpeg1 in mkv tests, but at the moment having issues getting mpeg1 into an mkv. It seems ffmpeg doesn't like it because there are no timestamps wont write a new encode. Will try with mkvmerge or similar to see what happens.. see below:
 
dh3LcRr.png
 
Disregard the screen is black. The way the roku layering works, I can only capture the overlay, not the video underlay when capturing screenshots with roku's utilities tool..
Omg, yes... was hoping. Use MKV Tool Nix and just shoved the streams into an MKV untouched. The roku ultra is playing this directly. Most awesome.. mpeg1 in mkv plays direct just fine..
 
mpeg2 - the h262. Why isn't it called h262? Who knows?.. roku is weird.. But what isn't weird is this can be used to detect mpeg2video support with it showing up here. mpeg2 in mkv plays direct just fine. mp4 and mov I have not yet tested.
 
h263 - now here is the mpeg4 part2.. perfect. this is the xvid and divx. Now it can direct play on roku, just not as avi, but an mkv.. nice. roku doesn't advertise this codec support. nice find.
 
mpeg4 avc - the h264 of the world. why not just call it h264? odd.. roku is weird.
 
vp9 - at the bottom, the red headed step child.. sad.. only supported in mkv and webm. mp4 seems to choke it..
 
 
Now the code above clearly can be used to tell when mpeg1, mpeg2/h262, and h263 can be decoded. The only caveat when you see a codec tag of MP4V (actually mpeg4 part 14 not part 2) inside an h263 transcode it, do not attempt direct play. Otherwise appears roku is more capable than they lead on.
 
The bottom line is if you have a roku, use MKV Tool Nix and convert all your AVI to MKV. Convert all your MPG to MKV. Convert all your TS to MKV. Then direct play for everybody.. I am starting to love my roku... 
 
Another followup
 
Roku is aware. RMP should be able to do this too.
Edited by speechles
Link to comment
Share on other sites

@@speechles

 

I seriously applaud your effort in all of this!

 

I appreciate your push back against me.  The squeaky wheel gets the grease. Thank you for your persistence. Something most people lack. Follow through and gumption.

 

The ball is now in play. Emby has the jump on the gun, so should gain support before RMP reacts. Then you can thank yourself for being the voice of reason that made this all possible. Thanks.

Link to comment
Share on other sites




snipped code - no give aways to p _ _ x


 

Pretty sure this would do it. The full monty.  :)

 

Now I only add direct play to mkv. Not sure mp4 or mov extensions can handle these. Haven't tested those yet. This is enough to get started though and get more support than any other roku app presently has. One up RMP.  ;)

 

Now the issue is, mp4 the container can direct play mpeg4. So we can't go changing the mpeg4 profile drastically. You can tell the mpeg4 codec to allow mpeg4 part2 or not though. Thats what I have done.

Edited by speechles
Link to comment
Share on other sites

Speechles - the directPlay section above could supplant this assumptive logic, correct?

	  ' rokuTV allows mpeg2 support
	  if isRokuTV then
		mkvVideo = mkvVideo + ",mpeg2,mpeg2video,mpeg1,mpeg1video"
	  end if


Link to comment
Share on other sites

 

Speechles - the directPlay section above could supplant this assumptive logic, correct?

	  ' rokuTV allows mpeg2 support
	  if isRokuTV then
		mkvVideo = mkvVideo + ",mpeg2,mpeg2video,mpeg1,mpeg1video"
	  end if


 

Yep, that is what limits it to rokuTV. Changing it to the use the "contains" function is a much much better way to detect.

Link to comment
Share on other sites

Noah0504

 

Speechles - the directPlay section above could supplant this assumptive logic, correct?

	  ' rokuTV allows mpeg2 support
	  if isRokuTV then
		mkvVideo = mkvVideo + ",mpeg2,mpeg2video,mpeg1,mpeg1video"
	  end if


 

Is this the current logic?  Is this also what determines if something can be/should be remuxed?

 

I ask because currently MPEG2 in .ts transcodes when played on my RokuTV.

Link to comment
Share on other sites

Is this the current logic?  Is this also what determines if something can be/should be remuxed?

 

I ask because currently MPEG2 in .ts transcodes when played on my RokuTV.

 

That is the current, old logic, if you look at the code I pasted above I suggest changing this to instead read the codecs the device returns when told mpeg4/mkv. Then these codecs are read and used to determine what support there is. It isn't simply based on "is it a rokuTV?" anymore. This is much more accurate. As a bonus, you will gain mpeg1 and h263 support when used in MKV. People should notice. This is a BIG deal. :)

 

The transport stream (TS) isn't really supported by roku. The reason it plays it direct is because when using HLS the m3u8 playlist will play TS slices. The issue will become that TS played this way it may restart at the beginning rather than at the position playback was requested to start. To avoid these problems my advice was no longer direct stream TS when the need for seeking is required. This is why for some things the app has begun to transcode. It is done to allow seeking. There is a reason for everything. :)

Edited by speechles
Link to comment
Share on other sites

Noah0504

That is the current, old logic, if you look at the code I pasted above I suggest changing this to instead read the codecs the device returns when told mpeg4/mkv. Then these codecs are read and used to determine what support there is. It isn't simply based on "is it a rokuTV?" anymore. This is much more accurate. As a bonus, you will gain mpeg1 and h263 support when used in MKV. People should notice. This is a BIG deal. :)

 

The transport stream (TS) isn't really supported by roku. The reason it plays it direct is because when using HLS the m3u8 playlist will play TS slices. The issue will become that TS played this way it may restart at the beginning rather than at the position playback was requested to start. To avoid these problems my advice was no longer direct stream TS when the need for seeking is required. This is why for some things the app has begun to transcode. It is done to allow seeking. There is a reason for everything. :)

 

Ah!  You touched on this earlier in the thread, but I understand now.  Yes, I would say seeking abilities is a much more important need for live TV and the trade-off is worth it.

 

And to your first point, it is a very big deal!

Link to comment
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...