Adaptive bitrate streaming
What is adaptive bitrate streaming?
Adaptive bitrate streaming is a streaming technology based on the Hyper Text Transfer Protocol (HTTP). It detects a user's bandwidth and device capabilities (for example CPU capacity) and then adjusts the stream to match what they have available. In order to work, adaptive bitrate streaming requires an encoder that can take single source media and encode it at multiple bit rates. This allows player clients to switch between the stream qualities based on available resources, resulting in a smooth streaming experience.
How does adaptive bitrate streaming work?
Adaptive bitrate streaming starts with encoding video content at multiple bit rates. Then each stream is segmented into multi-second parts. Each part is between 2 and 10 seconds long. The client receiving the video begins by downloading what's called the manifest file. This file describes the stream segments and their bit rates. When streaming starts, it's common for the client to use the lowest bitrate first, just to test things out. Then it moves to the appropriate bit rate for the network and device. Throughout streaming, the client adjusts the stream quality based on what's available resource wise. Normally, this allows streaming to continue smoothly, even if the quality might not be consistent.
Benefits of adaptive bitrate streaming
Adaptive bitrate streaming is based on HTTP, so unlike streaming technologies such as RTMP, it doesn't have issues with traversing firewalls and NAT (Network Address Translation) devices. It also doesn't require constant connections or session state on each client, making it easier to scale. This style of streaming is also compatible with edge servers and the software to handle it is simple. Edge servers use HTTP server software and can handle incoming adaptive bitrate streaming requests with ease.
The history of adaptive bitrate streaming
Adaptive bitrate streaming was created in October 2002 by the DVD Forum at the WG1 Special Streaming group. The group was run by Toshiba and Phoenix, with collaboration from Microsoft, Apple Computer, DTS Inc., Warner Brothers, 20th Century Fox, Digital Deluxe, Disney, Macromedia and Akamai. Initially, they started with the concept of storing video in small files at two different quality levels that could be sent via HTTP to a media player. Over time this evolved into what we have today.
api.video and adaptive bitrate streaming
While there are many implementations of adaptive bitrate streaming, such as Adobe's HTTP Dynamic Streaming and Microsoft Smooth Streaming, none of these are as popular as Apple HTTP Live Streaming or HLS. HLS is supported everywhere and due to its popularity, this is what api.video chooses to transcode your videos to. All api.videos are in beautiful, high quality HLS.