Adaptive Bitrate Streaming (ABR)

Layering on adaptive bitrate streaming (ABR) to your streaming protocol of choice will enable you to deliver optimal video quality depending on the network connection of the stream and make it accessible to mobile users at an affordable price. To do this, you must initiate ABR by moving through three phases: preparation, initial start-up, and dynamic playback.

What Is Adaptive Bitrate Streaming (ABR)?

Adaptive bitrate streaming (ABR) dynamically adjusts a stream's compression level and video quality to match bandwidth availability.

Video streaming or watching live and prerecorded media is the continuous transmission of video and audio files from a remote server to a client through the Internet. Media is segmented into smaller clips so viewers and listeners can watch videos in real time without waiting for the entire piece of content to load fully.

The video bitrate of a stream is the speed at which it transmits video file data to a device. Bitrate streaming technology is measured in megabits per second (Mbps), whereas the video's file size is measured in megabytes (MBps). Two primary factors impact ABR:

  1. Video Resolution: The resolution of a video refers to the number of pixels within a frame. A higher resolution results in sharper images, even on larger viewing displays.
  2. Frame Rate: Most live stream broadcasts can get by with 24 frames per second (fps), but live sports and other streams that require a smoother playback require 30 to 60 fps. A higher frame rate can display motion better, but more frames require additional data to transmit.

Typically, the higher the bitrate, the better the video streaming quality. But, if it exceeds a user's internet connection bandwidth, buffering occurs. Buffering means the video player cannot download the video file fast enough to keep the video playing at normal speed, resulting in the screen freezing or the spinning icon appearing. 

How Does ABR Work?

ABR can be initiated in three easy steps: 

1. Video Preparation

Video content must be prepped for ABR live streaming. It must be encoded into several bitrates, and most online video platforms can transcode videos into multiple formats from a single source file. Each of these encoded video files needs to be segmented into multi-second parts. The size of these clips may vary, but they're generally 2 to 10 seconds each. This approach works well with HTTP-based streaming protocols that progressively download video content.

2. Initial Startup

Before a video player can begin playback, it downloads a manifest file that describes the video chunks and bitrates available. In this manifest file, the format varies depending on the receiving video protocol. The video player technology uses the manifest as a guide to request the video assets that are most suitable for the user's device and internet connection. After that, it starts the playback immediately when there's enough media content available in the local buffer. This enables ABR to work well with content delivery networks (CDNs) to reduce latency, lower packet loss, and increase delivery speed.

3. Dynamic Playback

Video players start streaming at the lowest bit rate and request higher or lower quality video chunks as network conditions change. Each protocol, from MPEG-DASH to WebRTC, has its own ABR algorithm, either throughput or buffer, to help decide which bitrates to download next. Throughput-based algorithms measure the download speed of previous video chunks to determine which bitrate to choose next. Buffer-based algorithms attempt to control the buffer occupancy to ensure enough video is ready for playback. If the local buffer runs out of media, the next bitrate will be lower to keep ahead of playback. 

Benefits of ABR

If a user has a poor video streaming experience, they're more likely to view your brand negatively and not attend your next stream. ABR's benefits for today's broadcasters are considered business critical, it gives you a higher degree of control over the end-user experience.

Here are the four primary benefits of incorporating ABR into your streaming strategy:

1. Quality of Experience: Broadcasters can offer the highest quality video possible for their viewers without risking buffering or other interruptions to the experience.

2. Faster Start-Up: Along with smoother streams, ABR offers a faster startup. Since ABR streams usually start with a low bitrate stream until the selection algorithm estimates bandwidth capacity or buffering occupancy, the video can begin playback immediately. That means brands don't need to worry about losing viewers due to slow loading times.

3. Better Mobile Streaming: ABR adaptive bitrate streaming also improves the viewing experience on smartphones and tablets. In the past, data plan limitations and low device processing power made streaming video on the go challenging for broadcasters. ABR ensures mobile users can watch video streams without buffering despite these potential limitations.

4. Affordability: Since HTTP-based ABR streaming technologies utilize HTTP for delivery, it works with most web servers and CDNs. That means it's cheaper than setting up specialized servers or keeping persistent connections open. Using ABR streaming, therefore, can be a cost-effective way to scale while maintaining a high-quality video file streaming experience.

Devices And Browsers That Support ABR

You must have a video player to enable ABR live streaming. The devices and browsers that support ABR will be dependent on the type of ABR implementation. HTML5 players can stream ABR out of the box, including iOS, Android, Windows, Chrome, Video.js, and other JavaScript players. That means they're adaptive video players.

Along with using an ABR algorithm to choose which video stream bitrate to use, adaptation video players also select a video file that fits the device's screen. This ensures the user will always see a video that looks good.

For broadcasters, JavaScript and HTML5 video players that support ABR are invaluable. These players offer a better user experience and are also built into web browsers and universally accessible on nearly any device. That means adaptive streaming using JavaScript enables brands to reach more viewers.

Frequently Asked Questions

Does Netflix use adaptive bitrate?

Netflix has rolled out high-quality audio, increasing the bit rate from 192Kbps to 640Kbps of all audio streams. It also announced adaptive streaming for audio, which improves the sound quality depending on the speed of a user's network.

Should I use adaptive bitrate?

You should use adaptive bitrate streaming if you want to have the optimal video quality depending on the network connection of your stream and make it accessible to mobile users at an affordable price.

Who invented adaptive bitrate streaming?

Adaptive bit rate streaming was introduced by Move Networks and is now being further developed by Adobe Systems, Apple, Microsoft, and Octoshape.

How does adaptive bitrate streaming work?

Adaptive bitrate streaming literally "adapts" to accommodate the end user's Internet connection to provide the best quality stream possible under any network conditions.

What's the difference between a progressive download and streaming?

Streaming and progressive downloading are methods to deliver online video. Streaming is the delivery of video using a dedicated video streaming server to a client video channel. Progressive download is simply the delivery of video files over standard web servers (HTTP).

Next Steps

Start by opening an account and trying out our products. We’re here to help you understand the best solution to your use case. Contact us any time to learn more about Stream.

Chat Messaging

Build any kind of chat messaging experience without scalability or reliability issues.

Learn more →
Activity Feeds

Build any kind of feed without the headache of scalability or reliability of your feeds.

Learn more →