grazza2a 2 Posted September 15, 2018 Share Posted September 15, 2018 I'm a long-time and avid user of Emby since its MediaBrowser days - love it. However, I've got a couple of queries about how video content is served to ROKUs - I'm not an experienced programmer but understand enough - so, apologies if this sounds a little basic or newbie-ish. I own a ROKU 4 that is set to display at the same fps as the source material. Most of my content is ripped directly from DVD source. Based in the UK, this means that files are generally original MPEG2 files wrapped in an MKV container - ie, they're not transcoded to another video codec. Video is generally 720x576 at 25fps interlaced - for content produced on video as opposed to film. Query 1: As MPEG2 content will not play natively on a ROKU, I am reliant on Emby transcoding it on-the-fly. I'm happy with this as as solution as I don't really want to prepare different versions for different renderers (I don't have the hard drive space or the time). Does Emby transcode the size of UK PAL SD video to 640x480 and if so, is there an option to transcode keeping the same dimensions as the source material? UK PAL being slightly different to NTSC (please correct me if my assumptions here are wrong). Query 2 and more importantly to me: When Emby transcodes content to play on the ROKU it appears to dinterlace 25fps video to 25fps progressive. Video looses the smooth playback aesthetic in favour of a "filmic" look. Can Emby transcode on-the-fly 25fps interlaced to 50fps progressive for SD video - and if so - how? Hope the above makes sense and I'm sure there is a setting or metadata entry I am missing to allow the above. Thanks in advance. Link to comment Share on other sites More sharing options...
Luke 37099 Posted September 15, 2018 Share Posted September 15, 2018 Hi, we don't currently have an option for this. Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 15, 2018 Author Share Posted September 15, 2018 Okay, thanks for the quick reply. At least it's not something I wasn't doing Is it something that could be considered for a future release? Link to comment Share on other sites More sharing options...
speechles 1920 Posted September 15, 2018 Share Posted September 15, 2018 A1) http://forums.roku.com/viewtopic.php?t=114433 But.. mpeg2 is supported. Depending on which model of roku we are talking about. Your mpeg2 in mkv is perfectly playable directly. A2) Why don't you change your roku to adjust to the framerate? Settings >> System >> Advanced system settings >> advanced display settings >> Auto-adjust display refresh rate and enable it. Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 15, 2018 Author Share Posted September 15, 2018 Thanks for the reply Speechles. My advanced settings are already enabled but 25fps interlaced definitely looks 25fps progressive on the Roku. I've looked through the forum link. I wasn't aware that the MPEG2 patent had lapsed in most territories. As far as I can tell though, Roku haven't enabled it yet? I have the Roku Premiere Plus. The replies are much appreciated. Link to comment Share on other sites More sharing options...
speechles 1920 Posted September 15, 2018 Share Posted September 15, 2018 (edited) They(emby developers) have enabled it. This is a "new trick" for the roku. Along with h261, h262, h263, h264, h265 working in MKV on your roku premiere plus with direct play. I believe this requires the beta roku app. It hasn't pushed upstream through rokus approval process yet. At least I don't think it has. It is always a good idea to keep both for just such case that roku may be slow to push. A private channel can be pushed by the developer and immediately accessible once it is updated. So you sidestep the store. A public channel on the store must be approved. When you click the link you will get a "warning popup" that not every app is innocent, and some do illegal things, and your access to load private apps depends on them not finding you with illegal apps. So there are a myriad of private apps all over. An illegal app on your roku is basically a poison pill. Once roku finds these apps are illegal it will blacklist that app. If your roku has that illegal app (ie, you swallowed the posion pill) it is removed (and all the private apps you had are as well), and the ability to load any private channels on that roku device will be stripped away by firmware update and by IP ban (so all roku devices at that location or tied to your account lose the ability to use private channels too). Stay innocent, stay safe. ALSO: @@ebr the name of the app. Log into roku and manage the apps. Choose the emby beta (aka mediabrowser). Then click on the "channel store info" on the drop down menu. Once you do this, you can change the channel name from mediabrowser. I mean, if you want to. This is clearly a choice. But it would look better as emby. Just a small detail missed. Edited September 15, 2018 by speechles Link to comment Share on other sites More sharing options...
ebr 14925 Posted September 15, 2018 Share Posted September 15, 2018 ALSO: @@ebr the name of the app. Log into roku and manage the apps. Choose the emby beta (aka mediabrowser). Then click on the "channel store info" on the drop down menu. Once you do this, you can change the channel name from mediabrowser. I mean, if you want to. This is clearly a choice. But it would look better as emby. Just a small detail missed. Hmmm... That channel name is "Emby Beta" and has been for a long time. Where are you seeing it otherwise? Link to comment Share on other sites More sharing options...
speechles 1920 Posted September 15, 2018 Share Posted September 15, 2018 Now.. here it says it. Use the same method a user would to discover emby. Start at emby.media. Click on download tab. Then click on roku button. On this screen, it says to help shape the future of emby on roku and gives a beta link. Click this link that says "private channel". You have to login to roku and click the am not a robot button if not logged in. Then you land on the warning. Click OK to proceed through this check. Afterwards the image shown above is what you are presented with. This is where it is named that. Link to comment Share on other sites More sharing options...
ebr 14925 Posted September 15, 2018 Share Posted September 15, 2018 Gotta be something in the Roku company app store system or something. I guess we'll have to fire off a request to see how to get it changed. Thx. Link to comment Share on other sites More sharing options...
speechles 1920 Posted September 15, 2018 Share Posted September 15, 2018 (edited) Gotta be something in the Roku company app store system or something. I guess we'll have to fire off a request to see how to get it changed. Thx. It might be as simple as two strings. App.CreationName vs App.Name. The App.Name is the friendly version we can modify. The CreationName is the original embedded, set in stone, old way but remains in legacy because some roku systems use this name internally to do their juggling acts. If they make that change from one to the other the right string value comes up with the right name. I am sure this is the reason. The dialog is using the wrong string. Edited September 15, 2018 by speechles Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 15, 2018 Author Share Posted September 15, 2018 As a quick check, I can confirm that MPEG2 delivered in a MKV container plays on the Roku Premiere Plus - thanks for the heads up on this Speechles. I've accessed Emby via the Roku Media Player - this delivers the original video - no transcoding and it looks great. Unfortunately, audio is mute. For whatever reason, the ROKU can't seem to handle or pass through AC3. Using the Emby beta app, video appears to be transcoded the same as the regular Emby app. So, is the next logical route a DLNA profile that allows video to pass through and for audio to be transcoded? Is there a "how to" for this? Or is there a way in either the regular or beta Emby apps to achieve this? Again, many thanks. Link to comment Share on other sites More sharing options...
speechles 1920 Posted September 15, 2018 Share Posted September 15, 2018 (edited) The roku cannot process, decode, or otherwise tamper with the dobly audio stream to convert it on-the-fly to anything else. The only codec(s) the roku can pass through is(are) AC3 (and once they fix the DTS core issue not passing with DTS-HD MA, also DTS). So you need a decoder for AC3 connected to the hdmi. Otherwise you will hear the sound of silence. My television luckily has support for dolby digital+ through its two speakers through built in sound field processing the TV itself does. So some TV with stereo can support it, you just need to enable "surround" instead of "stereo" on your TV settings. Then reboot your roku so it can detect this. Some TV cannot at the same time and don't offer sound field processing. The next step is emby should only be transcoding the audio. It should be direct stream copying the mpeg2 stream. But maybe it isn't? Can you provide the ffmpeg log? Edited September 15, 2018 by speechles Link to comment Share on other sites More sharing options...
ebr 14925 Posted September 16, 2018 Share Posted September 16, 2018 Yes, I'd like to see the ffmpeg log as well (from playback on the beta app). Thanks. Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 16, 2018 Author Share Posted September 16, 2018 (edited) Hi again, and sincere thanks for the support. Log attached (hope it's the right one). I have a suspicion that the handling of AC3 has been broken by a Roku firmware update. I'm still investigating with the Roku Media Player app although I'm now having intermittent problems getting Emby to be recognised as a DLNA server. In the past, AC3 audio has worked for me and I haven't had a physical change to my set-up - which is leading me to think that Roku may be at fault here. I rarely use RMP though as I prefer to keep within the Emby app. When using the preferred Emby app (and Beta version), I'm a little lost about how I force the server to send the MPEG2 video directly to it. I've played around with creating a DLNA profile but this is new to me and I'm on a bit of learning curve to be honest. All attempts lead it to transcode the video. However, audio plays fine within both the regular Emby app and the beta version. If I'm reading the log correctly, Emby is transcoding audio to AAC? So for now, I'm guessing it's about finding a way to send to the Emby app - MPEG2 video directly with transcoded AAC audio? Thanks again. Log.txt Edited September 16, 2018 by grazza2a Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 16, 2018 Author Share Posted September 16, 2018 (edited) Hmm, I attached the log file but I can't see it in my reply - should I just copy and paste instead? Ignore, log file now attached to post above, doh! Edited September 16, 2018 by grazza2a Link to comment Share on other sites More sharing options...
ebr 14925 Posted September 17, 2018 Share Posted September 17, 2018 Okay, I think the issue here is that, once we determine that ffmpeg needs to be involved (due to unsupported audio in this case), we are then transcoding the video to the preferred format for the device as well. We'll have to see if we can preserve it in that case (although that can definitely cause problems). Link to comment Share on other sites More sharing options...
speechles 1920 Posted September 17, 2018 Share Posted September 17, 2018 (edited) Stream #0:0 -> #0:0 (mpeg2video (native) -> h264 (libx264)) DOH! ... lol mpeg1video and mpeg2video should stuff into HLS with m3u8/ts just fine (as long as the device supports mpeg2/mpeg1 with the "contains" function). No alterations to the video stream. In the same vein as hevc is done. I couldn't provide that code, as how you do it and I do it deviate. You give the server a list of codecs, in order of priority. I have the app detect which codec the server will use. It isn't given a list. The app decides what can and cannot direct stream in my version. Yours obviously differs because you aren't forcing play methods. Edited September 17, 2018 by speechles Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 17, 2018 Author Share Posted September 17, 2018 Hi ebr and speechles - am I to understand that the solution lies within either a future version of the Roku Emby app or a modified generic DLNA profile that Roku uses? Sorry if I'm missing something and thanks again. Link to comment Share on other sites More sharing options...
speechles 1920 Posted September 17, 2018 Share Posted September 17, 2018 (edited) Hi ebr and speechles - am I to understand that the solution lies within either a future version of the Roku Emby app or a modified generic DLNA profile that Roku uses? Sorry if I'm missing something and thanks again. The issue is, there is limited information known about what goes outside roku documentation. Then you discover that, figure out what certain criteria are required, and you can work outside their box. So I've discovered that mpeg1video and mpeg2video can be packaged in HLS and the roku plays the m3u8 and streams in TS slices just fine. This is good news. It means we are "outside the box" as far as what Roku officially says in docs. But when you are outside the box you just have to have a way to detect that you are and which models support this out the box behavior. The other good news is, I found if you feed the CanDecodeVideo() function mpeg4 in MKV it will disclose what you should use as your codec. This exposes the capability of the box much better than roku's documentation ever can. In this way it future proofs certain things and makes it less "written in stone" and more "adapts on the fly" for each model/device. Future proofing is good. It means less maintenance for the developer, as the devices lose or gain capability factoring all this in is done on the device. Nothing is guesses anymore. It also means less problems for users and less updates are required to fill in the blanks. Both good news too. So yeah, you are correct in your assumption. @@ebr just needs to add mpeg1 and mpeg2 support into the transcoding profile. This is really simple to do. I mean trivial simple. Like counting to 3 simple. 1,2,3.. done.. That fast literally. But other things are on ebr's plate. He is the chief bottle washer after all. Once other bottles are clean he can move onto this bottle. Edited September 17, 2018 by speechles Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 17, 2018 Author Share Posted September 17, 2018 Thanks again to both of you. It's good to know it can be done and I absolutely appreciate the current commitments and release schedules. I'll happily bide my time. All the best. Link to comment Share on other sites More sharing options...
grazza2a 2 Posted September 23, 2018 Author Share Posted September 23, 2018 Thank you @@ebr and @@speechles, as of today I notice the beta app is playing mpeg2 directly. It is a thing of beauty and muchly appreciated. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now