Adaptive Bitrate Streaming: What Is It? How Does It Work?6 min readReading Time: 5 minutes
You may have encountered this scenario: You start watching an online video, but the quality is hazy. Then about a minute in, the quality begins to become better without you clicking any button.
This is the result of adaptive bitrate streaming. In this article, we’ll explain what adaptive bitrate streaming is, how it works, and why it is important to modern media streaming.
What is Adaptive Bitrate Streaming?
Adaptive bitrate (ABR) is a video streaming technique that detects a user’s bandwidth and device capacity and adjusts the quality of the stream in real time. The result? Viewers with any internet speed can watch the same stream with very little buffering and fast start time.
In ABR, videos are stored in a server and are compressed in a number of different rates: from 50, 100, 150 to 2,500, 3,000, and 4,000 Kbps. Rather having one fixated bitrate for a stream, ABR uses a transcoder to encode one single video source to multiple versions of different bitrates. If your internet bandwidth doesn’t allow for streaming the 4000 Kbps version, you can still view the same video at a lower bitrate, for example, 2,500 Kbps.
Unlike the past streaming technologies that used streaming protocols such as RTSP, ABR is exclusively based on HTTP and built to work over large distributed HTTP networks. This technology was created in October 2002 by the DVD Forum at the WG1 Special Streaming group. Nowadays, you can see the extensive application of ABR in major media streaming platforms such as YouTube, Twitch, or Netflix.
ABR isn’t limited to internet bandwidth or processing power. Any device such as TV, mobile phone, laptop, or tablet, can select the most appropriate rate based on the current screen size and the required resolution.
Not only bitrates but the audio quality and even language also apply to the concept of ABR. Let’s dig deeper into this versatile technology.
How Adaptive Bitrate Streaming Works
Before playing a video, each device (for example, TV, laptop, mobile, tablet) will send a GET to the video server. GET is an HTTP method used to request data from a specified source.
This GET request is going to pull back the video manifest file. A manifest tells the player the information about the video such as what resolutions and bitrates are available. Then the devices will select which speed will be most appropriate for the stream.
As you watch the video, each device will continue to send another GET request to the video server. The GET is going to pull back more chunks of the video. And these chunks are going to be stored in the buffer of each of these devices.
But when the player receives the manifest file, it reads the screen size and resolutions but has no information about the network connection. So usually, the player will pick a medium video quality to make sure the video can start instantly. The player will download the first few segments. And if it detects that the network connection is too slow, it will switch to a lower quality (for example, from 1.5 Mbps to 600 Kbps). And vice versa, if the internet appears to be fast, the player will attempt to increase the video quality.
The good news is that there are a lot of software programs that make ABR available. Platforms like Castr livestreaming include a built-in ABR feature that automatically transcodes your video to multiple bitrates while you’re streaming.
How Adaptive Bitrate Changed the Streaming Game
Imagine you have one video file at a resolution of 720p (1280 x 720). And you are streaming this file over the internet to viewers across the world, on different types of devices. Without ABR, only one single video file will be streamed to all of those devices.
The outcome? The 720p video will be too large for a mobile screen which will cause buffering, and too small for a 1920 x 1080 screen which will result in pixelated images. This process is called progressive video streaming.
ABR disentangles the problems that progressive video streaming can’t solve: consistent quality and reduced buffering.
The greatest thing about adaptive bitrate is that it… adapts. ABR adapts your videos when delivered on an incompatible screen size to prevent them from being stretched or pixelated. ABR also adapts according to your internet connection to make sure the video still loads under a stressed or overloaded network. If your internet reaches better stability, ABR will gracefully adapt by loading higher-quality chunks of videos.
The versatility of ABR has gradually replaced the old-time traditional progressive video streaming technology.
Benefits of Adaptive Bitrate Streaming
So in short, adaptive bitrate streaming managed to resolve these main design goals of the video viewing experience:
Regardless of your audience’s varied network connection speed, your video is streamed at the highest bitrate possible.
ABR effectively pre-fetches and stores segments before rendering them on your audiences’ devices to avoid as little playback stalls as possible.
Maintain video stability
ABR flexibly adapts to the device screen size and network connection and only switches bitrates when necessary.
Adaptive Bitrate Supports Both Point-to-Point and Over-the-Top Media Streaming
The technology of ABR is applicable for both point-to-point and over-the-top (OTT) streaming.
For point-to-point streaming, ABR adapts an RTMP or SRT stream to make it complies with the available bandwidth between any two devices, such as an encoder and a decoder. The encoder needs to adapt to the continuously changing bandwidth in real time.
These are the two main protocols for ABR. HLS (HTTPS Live Streaming) was created by Apple and is the current preeminent streaming method; and MPEG-DASH (Dynamic Adaptive Streaming over HTTP) is considered the international standard and the best competitor of HLS. For OTT streaming, ABR usually depends on a packaging protocol like HLS or MPEG-DASH. Multiple streams are defined by labels such as low, medium, and high quality. The ABR streams will be divided into 1-to-15-second chunks of videos. Then each viewing device can choose the chunk that best suits its current available bandwidth.
Adaptive Bitrate (ABR) and Multi-bitrate (MBR)
There’s a slight difference between multi-bitrate (MBR) and adaptive bitrate. While ABR dynamically adapts to broadcast the best version possible of a video chunk, in MBR, a specific video stream is made available in multiple bitrates. You will have to manually choose the video stream that best fits their network condition. If you choose to watch the video without selecting a version, the system will run a test to detect which bitrate is appropriate for your network connection and continue to play that stream without adapting even if the internet connection changes.
- Adaptive bitrate (ABR) is a video streaming technique that detects a user’s bandwidth and device capacity and adjusts the quality of the stream in real time.
- The benefits of ABR include: minimized video buffering, maximized video delivery efficiency, and better stream stability.
- ABR works by detecting a viewer’s internet bandwidth and CPU capacity and adjusting the video quality accordingly in real time. If the user’s bandwidth increases, the video quality will also increase and vice versa.
- ABR is also prevalent in point-to-point and over-the-top (OTT) media streaming.
- ABR is slightly different from multi-bitrate streaming (MBR)