What is Adaptive Bitrate?
Adaptive Bitrate (ABR) is a streaming technology that dynamically adjusts video quality based on the user's network conditions. When network bandwidth is good, it plays HD video; when bandwidth is poor, it automatically switches to lower quality to ensure smooth playback.
How It Works
- Multiple Bitrate Sources - Server stores multiple quality versions of the same video (480p, 720p, 1080p)
- Bandwidth Detection - Player continuously monitors current download speed
- Smart Switching - When bandwidth changes are detected, automatically select the most suitable bitrate
- Smooth Transition - Minimize画面抖动 during bitrate switching
Implementation in HLS
HLS uses Master Playlist to manage multi-bitrate streams:
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=1000000,RESOLUTION=1280x720
720p.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2000000,RESOLUTION=1920x1080
1080p.m3u8
The BANDWIDTH value tells the player the bitrate of each version for switching decisions.
ABR Algorithm Types
- Bandwidth-based - Simply select bitrate based on instantaneous bandwidth
- Buffer-based - Decide based on buffer fill status
- Hybrid Algorithm - Combine bandwidth and buffer status, used by modern players
💡 Advantage:ABR allows users with different network conditions to have a good viewing experience, making it the de facto standard for streaming services.