Roku Developer Program

Developers and content creators—a complete solution for growing an audience directly.
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Level 8

Chaneru and VLC transcoding

Chaneru now has VLC transcoding but I was wondering if there were anyway to fast start the playback ? It would be nice for the users, "Instant Gratification". One thing I am not doing is setting any kind of bandwidth parameter either in the m3u8 index or in the channel's player meta tags. It is difficult to set what the actual format of a video is because of all the mixed local media that the users can throw at the channel. I'm leaving the values at zero and Roku does a pretty good job of figuring what to do, except for the startup. Once VLC gets ten seconds ahead it would be nice to actually start playing. I'm sure my server can keep up. I have two methods with the transcoding. One, VLC buffers the stream to a "file" and the other he does "http streaming" to the server. The server takes either and time splits the stream into the HLS format and post the ts and m3u8 files for Roku.

I have also run across a problem where on some videos the "file" output will play but the "http stream" only has audio and the video is blank. I do have code to detect lost stream component blocks, so that is not the problem. I also don't get any rebuffing. I would think there is some kind of timing issue because the "file" method is slightly faster. These mostly are short clips and the entire video has been passed to Roku.

Also do you have any suggestions about optimum VLC h264 settings that would produce a good playback ?
0 Kudos
2 Replies
Level 9

Re: Chaneru and VLC transcoding


For HLS, you should just set the BrightScript bandwidth to zero as you are doing. However, the BANDWIDTH parameter in the .m3u8 file is used to calculate the amount of pre-buffering required. For faster startup, you could have multiple playlists at different bandwidths. The Roku calulates the amount of prebuffer required for each bandwidth. It can start playing the low bandwidth playlist much sooner as there is less prebuffer to do. The Roku will do this and work it's way up to the highest bandwidth stream it can play.

Does VLC do range requests on http?? I don't know... but range requests are required by Roku.

The encoding guide does not include settings for VLC, but does go through what are good settings for the Roku and you can probably translate much of the Inlet setup to VLC.

0 Kudos
Level 8

Re: Chaneru and VLC transcoding


I found that Roku rejects anything outside of a bandwidth setting of 250000 to 8000000. Setting it to 250000 starts up the video about the fourth segment. Great !

Thanks !
0 Kudos