Share this
Ultimate Mini Guide to ABR Logic
by THEO Technologies on March 3, 2020
A bitrate indicates the speed (which can also determine the cost) at which video content (or any other data) is delivered. It represents the amount of bits per second that are transmitted digitally across a network. In a video context, higher bitrate usually indicates a higher quality stream. A video bitrate indicates the average bitrate consumed by players during the playback session.
What is bitrate?
A bitrate can essentially tell the video player how many bits of the video content or file can be processed per second during the video playback.
The most common metrics in use for video bitrates, according to the measurement unit they use, are the Decimal metric Mbit/s= 1.000.000 bits/second and the binary metric Mibit/s = 1.048.567 bits/second. These average bitrates help users understand how video players manage quality loading.
What is Adaptive Bitrate?
This is where the concept of Adaptive Bitrates (ABR) comes in. ABR logic in the player ensures the best possible version, resolution and bitrate of the video content are delivered to the video player. Always transmitting video content at the fastest speed and the highest quality doesn’t make much sense in some playback situations. For example, a viewer could go from watching content at home, where a strong connection and high bandwidth are available, to switching to their mobile device, where a flaky cellular network is used. Using ABR logic allows the player to deliver video content efficiently and at the right quality for each individual user based on the present circumstances
ABR Algorithm
The video streaming landscape is in a constant state of flux, with a continual advancement in devices, resolutions and network conditions. When designing an ABR algorithm there are three key things to keep in mind:
- Minimising rebuffering: having a buffer that does not affect continuous playback
- Maximising efficiency: streaming the highest usable bitrate aka quality possible
- Encourage stability: limit track switches for a more seamless experience
Bandwidth Estimation
Available bandwidth estimation is a crucial part of ABR logic, but also difficult to get entirely accurate. Bandwidth itself is the amount of data that is transmitted over a network in a period of time. The screen size or resolution, the start-up time and the dropped frame rate should all be taken into consideration.
A well constructed ABR algorithm will take the screen and player size into account, ensuring that the bitrate is capped at a certain amount.
Some players strive for a faster join time. To achieve this the player will start downloading the video content at the lowest bitrate first into the buffer and then aggressively get faster to reduce buffer. Join times can be crucial for the end viewer and quality of experience (QoE), as buffering is an annoyance that can cause viewers to abandon the stream all together and exit before video start (EBVS).
It’s also important to take quality of experience and the dropped frame rate into account. At times, the device hosting the stream doesn’t have the resources, causing frames of the content to be dropped.
If too many frames are dropped, the player will drop to a lower available bitrate/quality in the stream, and this will clearly reduce the quality of experience for the viewer.
ABR logic based on historic bandwidth
The other option would be for the network to take the network history into account. In this method, the player would take the history of the current network bandwidth in consideration to then estimate the bitrate.
The player will aim to display the highest quality video content based on the historic bandwidth data and knowledge of the network conditions.
It is important to note that network history may be limited to the current playout session as privacy policies (like GDPR) may rule out the option to leverage the historic bandwidth across sessions.
Adaptive Bitrate Streaming (ABS)
Adaptive Bitrate Streaming, sometimes referred to as ABS, is a method of streaming videos over HTTP, which ensures that viewers will experience an optimal online video playback on all devices and at different bandwidths. ABS detects the available connection speed in real time and adjusts the video stream continuously to deliver the best possible picture.
First, the source video has to be encoded at different bitrates. Those different files of video content can then be viewed with their associated bitrates, which means that devices can select the speed that is appropriate to their needs.
During the entire playback, the player will ‘adapt’. When a viewer starts watching a stream, the video player requests fragments from the lowest bitrate. If the player finds the download speed is greater than the bitrate of the downloaded segment, the next higher bitrate will be requested.
ABR & ABS with THEO
THEOplayer has three pre-set strategies that the player will automatically use when it comes to ABR:
- Performance: The player will optimize ABR behavior to focus on the performance of the player. This strategy initiates playback with the lowest quality suitable for the device which means faster start-up time.
- Quality: The player will optimize ABR behavior to focus on displaying the best visual quality to the end-user. This strategy initiates playback with the highest bit rate suitable for the device.
- Bandwidth: This is the default strategy. The player will optimize ABR behavior to focus on displaying the most optimal quality based on historic bandwidth data and knowledge of the network conditions. When no historic data is available, the player will use the performance strategy.
Why ABR is important for your QoE and QoS
With faster internet connections and an expectation for things to be instantaneous, viewers patience for start up time, buffering and pixels or fuzzy pictures has all but vanished. Quality of Experience in playback is expected to be seamless. And your QoE is a direct result of your Quality of Service (QoS).
Having a player that has advanced ABR and ABS support is crucial to guarantee your viewers have the best playback experience possible.
THEO technologies and THEOplayer
THEOplayer is at the forefront of the video player industry. Our Universal Player with HTML5 capability provides organizations with a single player across all major devices, platforms and browsers. The Universal Player is pre-integrated with components including streaming, analytics, DRM, and advertising solutions.
We cover all industry segments and regions, and we are committed to being not just a vendor, but a solution life cycle partner. We understand that you want to create a unique experience for your customers, and our THEO experts are available from the inception of the solution through its evolution with innovations over time. At THEO we have the expertise to power some of the biggest publishers, broadcasters, telcos, and digital natives across the world, and we are ready to help you.
Any questions left? Contact our THEO experts.
Share this
- THEOplayer (45)
- online streaming (40)
- live streaming (35)
- low latency (32)
- video streaming (32)
- HESP (24)
- HLS (21)
- new features (21)
- THEO Technologies (20)
- SDK (19)
- THEOlive (17)
- best video player (17)
- html5 player (16)
- LL-HLS (15)
- cross-platform (15)
- online video (15)
- SmartTV (12)
- delivering content (12)
- MPEG-DASH (11)
- Tizen (11)
- latency (11)
- partnership (11)
- Samsung (10)
- awards (10)
- content monetisation (10)
- innovation (10)
- Big Screen (9)
- CDN (9)
- High Efficiency Streaming Protocol (9)
- fast zapping (9)
- video codec (9)
- SSAI (8)
- Ultra Low Latency (8)
- WebOS (8)
- advertising (8)
- viewers expercience (8)
- "content delivery" (7)
- Adobe flash (7)
- LG (7)
- Online Advertising (7)
- Streaming Media Readers' Choice Awards (7)
- html5 (7)
- low bandwidth (7)
- Apple (6)
- CMAF (6)
- Efficiency (6)
- Events (6)
- drm (6)
- interactive video (6)
- sports streaming (6)
- video content (6)
- viewer experience (6)
- ABR (5)
- Bandwidth Usage (5)
- Deloitte (5)
- HTTP (5)
- ad revenue (5)
- adaptive bitrate (5)
- nomination (5)
- reduce buffering (5)
- release (5)
- roku (5)
- sports betting (5)
- video monetization (5)
- AV1 (4)
- DVR (4)
- Encoding (4)
- THEO Technologies Partner Success Team (4)
- Update (4)
- case study (4)
- client-side ad insertion (4)
- content encryption (4)
- content protection (4)
- fast 50 (4)
- google (4)
- monetization (4)
- nab show (4)
- streaming media west (4)
- support matrix (4)
- AES-128 (3)
- Chrome (3)
- Cost Efficient (3)
- H.265 (3)
- HESP Alliance (3)
- HEVC (3)
- IBC (3)
- IBC trade show (3)
- THEOplayer Partner Success Team (3)
- VMAP (3)
- VOD (3)
- Year Award (3)
- content integration (3)
- customer case (3)
- customise feature (3)
- dynamic ad insertion (3)
- scalable (3)
- server-side ad insertion (3)
- video (3)
- video trends (3)
- webRTC (3)
- "network api" (2)
- Amino Technologies (2)
- Android TV (2)
- CSI Awards (2)
- Encryption (2)
- FireTV (2)
- H.264 (2)
- LHLS (2)
- LL-DASH (2)
- MPEG (2)
- Microsoft Silverlight (2)
- NAB (2)
- OMID (2)
- Press Release (2)
- React Native SDK (2)
- Start-Up Times (2)
- UI (2)
- VAST (2)
- VP9 (2)
- VPAID (2)
- VPAID2.0 (2)
- ad block detection (2)
- ad blocking (2)
- adobe (2)
- ads in HTML5 (2)
- analytics (2)
- android (2)
- captions (2)
- chromecast (2)
- chromecast support (2)
- clipping (2)
- closed captions (2)
- deloitte rising star (2)
- fast500 (2)
- frame accurate clipping (2)
- frame accurate seeking (2)
- metadata (2)
- multiple audio (2)
- playback speed (2)
- plugin-free (2)
- pricing (2)
- seamless transition (2)
- server-side ad replacement (2)
- subtitles (2)
- video publishers (2)
- viewer engagement (2)
- wowza (2)
- "smooth playback" (1)
- 360 Video (1)
- AOM (1)
- API (1)
- BVE (1)
- Best of Show (1)
- CEA-608 (1)
- CEA-708 (1)
- CORS (1)
- DIY (1)
- Edge (1)
- FCC (1)
- HLS stream (1)
- Hudl (1)
- LCEVC (1)
- Microsoft Azure Media Services (1)
- Monoscopic (1)
- NAB Show 2016 (1)
- NPM (1)
- NetOn.Live (1)
- OTT (1)
- Periscope (1)
- React Native (1)
- Real-time (1)
- SGAI (1)
- SIMID (1)
- Scale Up of the Year award (1)
- Seeking (1)
- Stereoscopic (1)
- Swisscom (1)
- TVB Europe (1)
- Tech Startup Day (1)
- Telenet (1)
- Uncategorized (1)
- University of Manitoba (1)
- User Interface (1)
- VR (1)
- VR180 (1)
- Vivaldi support (1)
- Vualto (1)
- adblock detection (1)
- apple tv (1)
- audio (1)
- autoplay (1)
- cloud (1)
- company news (1)
- facebook html5 (1)
- faster ABR (1)
- fmp4 (1)
- hiring (1)
- iGameMedia (1)
- iOS (1)
- iOS SDK (1)
- iPadOS (1)
- id3 (1)
- language localisation (1)
- micro moments (1)
- mobile ad (1)
- nagasoft (1)
- new web browser (1)
- offline playback (1)
- preloading (1)
- program-date-time (1)
- server-guided ad insertion (1)
- stream problems (1)
- streaming media east (1)
- support organization (1)
- thumbnails (1)
- use case (1)
- video clipping (1)
- video recording (1)
- video trends in 2016 (1)
- visibility (1)
- vulnerabilities (1)
- zero-day exploit (1)
- August 2024 (1)
- July 2024 (1)
- January 2024 (1)
- December 2023 (2)
- September 2023 (1)
- July 2023 (2)
- June 2023 (1)
- April 2023 (4)
- March 2023 (2)
- December 2022 (1)
- September 2022 (4)
- July 2022 (2)
- June 2022 (3)
- April 2022 (3)
- March 2022 (1)
- February 2022 (1)
- January 2022 (1)
- November 2021 (1)
- October 2021 (3)
- September 2021 (3)
- August 2021 (1)
- July 2021 (1)
- June 2021 (1)
- May 2021 (8)
- April 2021 (4)
- March 2021 (6)
- February 2021 (10)
- January 2021 (4)
- December 2020 (1)
- November 2020 (1)
- October 2020 (1)
- September 2020 (3)
- August 2020 (1)
- July 2020 (3)
- June 2020 (3)
- May 2020 (1)
- April 2020 (3)
- March 2020 (4)
- February 2020 (1)
- January 2020 (3)
- December 2019 (4)
- November 2019 (4)
- October 2019 (1)
- September 2019 (4)
- August 2019 (2)
- June 2019 (1)
- December 2018 (1)
- November 2018 (3)
- October 2018 (1)
- August 2018 (4)
- July 2018 (2)
- June 2018 (2)
- April 2018 (1)
- March 2018 (3)
- February 2018 (2)
- January 2018 (2)
- December 2017 (1)
- November 2017 (1)
- October 2017 (1)
- September 2017 (2)
- August 2017 (3)
- May 2017 (3)
- April 2017 (1)
- March 2017 (1)
- February 2017 (1)
- December 2016 (1)
- November 2016 (3)
- October 2016 (2)
- September 2016 (4)
- August 2016 (3)
- July 2016 (1)
- May 2016 (2)
- April 2016 (4)
- March 2016 (2)
- February 2016 (4)
- January 2016 (2)
- December 2015 (1)
- November 2015 (2)
- October 2015 (5)
- August 2015 (3)
- July 2015 (1)
- May 2015 (1)
- March 2015 (2)
- January 2015 (2)
- September 2014 (1)
- August 2014 (1)