Streaming video represents nearly 80% of all traffic carried over the internet. It’s growing by 22% each year. Technological evolution in video compression, from MPEG-4/AVC to HEVC, paired with techniques like Adaptive Bit Rate (ABR), to “right size” a video segment into multiple bit rates, represent some of the core building blocks that contributed to the huge marketplace success that is streamed video. However, a third building block is becoming necessary, to go a step further in both an improved, adaptive video experience, at the device end, and optimized bandwidth usage, to lessen network strain. Specifically, and considering the remarkable and mushrooming growth of IP video streaming, there exists a growing need for systems to leverage Content Aware Video Streaming solutions, like the one discussed in this paper.
In IP video streaming, video is typically generated at several bitrates, in order to accommodate the varying network bandwidth available between IP Video consumer devices and content delivery networks (CDNs) and varying consumer devices. Consumer devices will typically try to download the highest bitrate video possible that the device can support, with the intent of providing higher video quality to the viewer. Higher bitrate video segments for certain content do not necessarily translate to higher video quality -- if there is any improvement at all, it might be marginal. Acquiring higher bitrate segments when it does not really enhance user video viewing experience results in wasted network bandwidth. This wastage can be avoided by having the devices only download segments that would make a difference in video quality for the viewer. For the devices to do a quality-based download decision, they would need to be provided with info on the content in the segment. In this paper, an algorithm that determines if a segment is going to enhance viewer video experience is presented. This algorithm is based on video analysis without a full video decode of frames in the segment. This algorithm would need to be implemented at the content origination end and the generated info transmitted to consumer devices.
With the content information communicated in each segment, devices can then make a network band width and quality based decision on the next segment to be downloaded. This would minimize network bandwidth usage and at the same time providing the highest video quality. The algorithm presented supports processing of live linear stream segments and would minimally impact the content generation workflow and therefore scalable. Included in this paper are results showing network bandwidth savings realized by this algorithm. This algorithm could also be used to reduce storage needs by only storing segments from a bitrate ladder that enhances video quality on various devices.