How are a user's device and bandwidth detected to determine the optimal flavor to stream?

Kaltura uses Adaptive Bitrate (ABR) Streaming to provide the optimal user experience while viewing content.

Adaptive Bit Rate (ABR) streaming is a technique of detecting a viewer's bandwidth capabilities in real time, and then adjusting the quality of the video stream accordingly, always delivering the best possible picture quality. ABR streaming results in less buffering, fast start time and an overall better experience for both high-speed and low-speed connections.

ABR dynamically shifts bandwidth to higher and lower levels based on availability. For Adaptive Bitrate Streaming to work, a video is first encoded at different bitrates to accommodate varying bandwidth connections. Each bitrate version is sliced up into tiny fragments — typically 2 to 10 seconds. The Kaltura Player pulls fragments from the different encodings and inserts them into the stream as bandwidth dictates resulting in faster video start times and a continuous, uninterrupted video experience.

For example, a movie called The “Big Movie” is streaming. The end user would view a smoothly playing video. Unknown to the user, multiple streams are actually available and may be seamlessly switched to, if their connection drops lower or improves.  The key here is “seamless”. When adaptive bit streaming is done correctly, there should be no interruption of playback.

For The Big Movie, a player might be serving up the following all at once:

The Big Movie @ 2612 kbps

The Big Movie @ 1600 kbps

The Big Movie @ 1200 kbps

The Big Movie @ 800 kbps

USE CASE

If a user’s connection dropped from over 2.5 Mbps to 1600kbps, the Kaltura Player would switch, again seamlessly, from the 2612 bit rate down to the 1600. Often the Kaltura player is designed to begin playing using the lowest possible bit rate so that playback starts immediately. For this example, the 800 kbps stream might be served up first and then as the Kaltura player realizes that the user can handle a higher bitrate, the streaming rate would then be switched up higher.


Adaptive BitRate (aka ABR) is the process by which the same content is prepared in multiple renditions (flavors) that fit the various resolutions of playing devices and the different available bandwidths. During live playback, the Player fetches the correct flavor (bitrate) to the viewer according to the viewer's internet connection speed and device capabilities. When and if there is a change in the the available bandwidth during the live stream, the Kaltura Player senses the change and seamlessly switches to a higher/lower rendition, providing a better user experience to the viewer and minimizing buffering time.

For additional information, see the article on Adaptive Bitrate (ABR) Streaming.

For more information about flavors and transcoding, see the article about Transcoding Settings and Processing.

Using adaptive bitrate is a best practice, as it allows live video to be viewed by a wider audience using varying internet connections. While the Kaltura Player will automatically push the best suited live flavor to the viewer, the viewer can also force a specific live flavor using the Flavor Selection button on the Kaltura Player when it is enabled in the KMC Studio.


In This Article
Was this article helpful?
Thank you for your feedback!