With video making up around 80% of all IP traffic, most streamers will stumble upon the question “What is adaptive streaming?” at some point or another. While most answers are filled with technical terms and details, we will try a different approach and explain the concept of ABR or Adaptive Bitrate Streaming in simple terms, making it much easier to understand.
The basic principle of Adaptive Bitrate Streaming is to provide the best viewer experience and video quality possible, regardless of the device, software or connection used.
Most streams are delivered through technologies based on HTTP, namely Apple’s HLS and MPEG-DASH but the way the stream is being sent to the user can be different. There are two main types of streaming:
- Progressive Video Streaming
- Adaptive Bitrate Streaming
What is Progressive Video Streaming?
Progressive video streaming uses one single video file that is streamed to all users and their devices. More often than not, the file itself is an .mp4 but different formats can be used as well. The progressive video can be adapted to different screen sizes, such as laptops or mobile devices but all devices playing it will receive exactly the same video file. For example:
A streamer uses recording software to make a gameplay video. His original video is an .mp4 with a 1280 x 720 resolution. This file is then sent to two users who are viewing the video, one of them on a mobile device and the other on a desktop computer. Both users will receive the same .mp4 file which is resized to fit the screens of their devices.
The problem with Progressive Video Streaming
Progressive video streaming has two major underlying issues.
Video quality – A video that is 1280 x 720 will never play at a high quality on a 1920 x 1080 resolution screen for example. The video will be stretched in order to fit the screen which can result in pixelation and quality loss.
Video Buffering – When the loading of the video slows down or stops, it is called buffering. Users with a poor internet connection cannot download the video file quickly enough to view it continuously, so the video will pause, wait to download more data, then start again. Buffering can make watching a live stream painfully annoying. This situation is actually quite common too, especially on mobile devices or for users with a slower internet connection.
How Adaptive Bitrate Streaming Works
Adaptive bitrate streaming or ABR solves the two main drawbacks that progressive video streaming has, namely buffering and quality.
Quality – adaptive bitrate streaming allows for the stream to be resampled at different resolution and quality settings. For example, the same stream can have multiple video files dedicated for mobile devices, tablets, laptops or desktops, depending on their resolution. This means that the video will not need to be stretched or downscaled – it will fit perfectly for any device.
Buffering – most videos play at 24 fps or more, meaning that the user’s internet connection needs to download at least 24 frames per second in order to keep the video running. Adaptive bitrate streaming solves this problem by changing the video quality to fit the user’s download speed. Smaller videos are downloaded much faster than large videos, so if the user’s internet is slow, the adaptive video stream will send a smaller video, to keep it from buffering.
For most live streams, the priority is user experience, this means that avoiding buffering is more important than maintaining the quality of the video. Most users will be much more satisfied with a few minutes of lower quality video if their internet slows down instead of watching a loading icon until the proper quality video loads.
“Bitrate” also commonly refers to the speed at which a video is sent to the viewer’s device. This is why adaptive streaming is also often called adaptive bitrate streaming. Fast internet connections have a higher bandwidth, which allows for higher bitrates than slower connections.
Biggest Advantage to Adaptive Bitrate Streaming
Let’s take a look at the “adaptive” in Adaptive Bitrate Streaming. The concept behind it is the fact that the settings, video quality and resolution for each viewing users can change from second to second. This means that for users with a fluctuating internet speed, the quality of the video will change in order to keep the stream from buffering.
This is done by using video segments.
The stream’s video file is encoded to its new adaptive format and is broken up into small segments, often 10 seconds long. After viewing each 10 second segment, the user can switch to a different video with a different resolution if it’s needed.
For example: A viewer is watching a stream in his favourite coffee shop with an excellent internet connection. The video is streaming on his mobile device at a resolution of 854 x 480 with no problems. But then, he has to leave the coffee shop and his device switches to a mobile network, with a slower internet connection.
The data starts moving more slowly between the live stream and the viewer. If the live stream had been using progressive video streaming, the video would simply stop to buffer, then play again for a few seconds more before stopping again.
With adaptive bitrate streaming, the adaptive video player simply switches to a smaller video file, for example 426 x 240 that ensures the viewer will continue to watch the stream without any interruptions or buffering. If the viewer goes home to his faster internet connection, the video switches again to a larger file and higher quality. This is the true power of adaptive bitrate streaming.
Adaptive streaming is not a fad or perk, but a requirement to maintaining user experience in the streaming industry.
WpStream started offering ABR solutions in April of this year. Contact us if you’d like to be among the early adopters of this technology.