RokuKevin
16 years agoVisitor
Quality Dots and StreamBitrates settings
Lately, we've found that some developers have been confused about how they should be using the StreamBitrates setting in the content metadata passed to roVideoScreen. This is an important setting to set properly, as its value is used in determining how much data we need to prebuffer. The StreamBitrates setting is also used by the roVideoScreen to display the number of "quality" dots for the selected stream to the user. As mentioned in the Component Reference, the preferred implementation should provide multiple streams with multiple bitrates (ideally four) to provide a high quality user experience under a variety of network conditions. In this scenario, the number of "quality" dots displayed to the user should indicate which of the four streams was chosen for playback based on the measured bandwidth the Roku box is experiencing.
Some developers don't have the multiple encodings necessary for the best experience, and may not even know the correct bitrate for their stream. When you can't be accurate about the required bitrate for your stream, it is best to use a single stream and set the bitrate to zero. A single stream set to a bitrate of zero is a special case for the roVideoScreen where it will not display the quality dots to the user and will try to pre-buffer enough data to avoid rebuffers when playing your stream. This scenario may trade-off a little longer prebuffer phase for a better playback experience.
If you know what your actual required bitrate is, you can accurately set the StreamBitrates parameters to optimize the prebuffer startup phase and playback experience. If you don't accurately know the actual required bitrate and you only have a single stream, it is probably best to set your StreamBitrates meta-data content parameter = [0].
Some developers don't have the multiple encodings necessary for the best experience, and may not even know the correct bitrate for their stream. When you can't be accurate about the required bitrate for your stream, it is best to use a single stream and set the bitrate to zero. A single stream set to a bitrate of zero is a special case for the roVideoScreen where it will not display the quality dots to the user and will try to pre-buffer enough data to avoid rebuffers when playing your stream. This scenario may trade-off a little longer prebuffer phase for a better playback experience.
If you know what your actual required bitrate is, you can accurately set the StreamBitrates parameters to optimize the prebuffer startup phase and playback experience. If you don't accurately know the actual required bitrate and you only have a single stream, it is probably best to set your StreamBitrates meta-data content parameter = [0].