Real-Time Streaming

Not Your Father’s ABR: Improve Video Quality without Sacrificing Speed

Written by Bill Wishon | Oct 12, 2021 3:43:00 PM

One of the biggest challenges of the streaming revolution has been in the way that content gets delivered to ensure that everyone has the highest video quality available through available bandwidth. Adaptive Bitrate (ABR) streaming helped to prevent jitter, and deliver the highest available video quality to meet the bandwidth constraints in the last mile. 

For several years, ABR has allowed the biggest brands in streaming to deliver impeccable video quality for on-demand and live video, where latency isn’t an issue. But when live isn’t fast enough, and real-time is key, the old methods of ABR won’t cut it.

ABR is dependent on a few critical components.

First, is resolution, or size of the video that’s being delivered. If a video’s resolution is insufficient for the device it is being played on, quality suffers. A 640 x 480 SD video might be great on your phone, but looks like a garbled mess on a big 4K TV. ABR takes several different resolutions, and makes them available upon request to stream in the highest quality possible.

Framerate is next. The higher the number of frames per second, the crisper the picture. Over the air TV typically uses 30 frames a second, and motion pictures are usually 24fps. Recently, and especially with live sports where you don’t want to miss any of the action in-motion, framerates have skyrocketed to 60fps.

Why do these factor? Because the mathematical combination of framerate and resolution is what creates the bitrate. Increasing or decreasing either side of the equation increases or decreases the measured bitrate for delivery. Simply put, low bitrate means less data is being transferred, while high bitrate means more data being transferred. Higher bitrates increase higher quality, so long as there’s enough bandwidth to support it in either the content delivery network, or the last mile to the player. This is usually measured in kilobits per second (kbps).

The last factor isn’t necessarily in the math, but how the players request each bitrate change.

The old way required players to analyze conditions during the playback, after already creating a cached playlist (creating latency from origin servers). If there’s congestion or insufficient data being received that causes jitter or dropped packets, it requests a new playlist to be built using a lower bitrate. These events happen at encoded keyframes, which are markers embedded within the stream.

There's a Better Way

The problem with the old methods of ABR is that it banks on you not needing instant content. Because it’s one-way delivery, latency is OK.

But what about live sports, or interactive content? What about instances when you need to engage with a video application in real-time while still getting the highest quality possible, for example a sports-betting application. These apps can’t have any latency if you require a level playing field for all users, compared to someone watching a TV broadcast. The same applies for trivia apps, or interactive TV, or broadcast shopping platforms like Merkari. Every millisecond of latency, or buffering to get higher quality, impacts transactions.

Requesting new playlists for higher quality and waiting for the next keyframe to arrive isn’t sustainable for the next generation of interactive video.

To solve for this in WebRTC, Phenix incorporates a new dynamic approach to ABR. Instead of trusting an encoder to deliver prompt keyframes, the player asks the server to dynamically insert a keyframe. This does two things: it sends an immediate shift signal for the player, and the player can immediately change to a more stable bitrate without having to build a new playlist of keyframes.

Think of it in terms of a train. If you’re waiting on a platform for a train but it’s overloaded with passengers and slow, you might want to hop on a new train. Dynamic ABR not only lets you get onto a better, faster moving train, but lets you also get on safely while it’s in motion, not having to slow down or stop to load passengers like the old way.

By inserting the keyframe mid-stream, Phenix is able to let viewers instantly switch to a more stable stream, without sacrificing latency or user experience.

To find out more about Phenix’s patented Dynamic ABR capabilities and scalable delivery, visit: https://phenixrts.com/en-us/patents.html