What is Content Adaptive Encoding and How Can It Benefit Video Streaming Services?

 

Video streaming is one of the most popular and demanding applications on the Internet, but it also poses many challenges for providing a consistent and high-quality viewing experience to users under limited and variable network conditions. One of the solutions to address these challenges is adaptive bitrate (ABR) streaming, which allows the client to dynamically select the most suitable bitrate and resolution of the video according to the current network bandwidth and device capabilities. However, ABR streaming also requires a lot of resources for encoding, storing and delivering multiple versions of the same video content, which can increase the operational cost and complexity for the video streaming service providers. Therefore, it is important to optimize the video encoding process for ABR streaming to achieve a balance between quality, efficiency and cost.

 

What is Content Adaptive Encoding?

 

Content adaptive encoding is a technique that optimizes the video encoding process for ABR streaming by analyzing the source content prior to deciding the right set of output bitrates and resolutions to use in the ladder. Unlike traditional encoding methods that use fixed or predefined encoding parameters for all videos regardless of their content characteristics, content adaptive encoding adjusts the encoding parameters according to the complexity, motion and quality of each video. This way, content adaptive encoding can produce more efficient and customized output streams that match the content features and user preferences.

 

VMAF quality distribution graphs comparing content adaptive encoded content vs. the same content encoded regularly.

Video quality comparison showing how quality level varies considerably comparing to per-shot adaptive encoding. 

The Y axis is the VMAF quality metric number, the X axis is the content scene number.

 

While using the vCoder software, Content Adaptive Encoding (CAE) can be performed at two levels of granularityper title or per shot. Per title optimization means that the encoding parameters are determined for each video title based on its overall content characteristics. Per shot or per scene optimization means that the encoding parameters are determined for each segment of a video title based on its local content characteristics. The finer the granularity of CAE, the more accurate and flexible the output streams can be.

 

How Can CAE Benefit Video Streaming Services?

 

CAE can benefit video streaming services in several ways:

 

  • It can improve the quality of the output streams by avoiding over-encoding or under-encoding of different segments of a video. Over-encoding means that too many bits are allocated to a segment that does not need them, resulting in wasted bandwidth and storage space. Under-encoding means that too few bits are allocated to a segment that needs them, resulting in quality degradation and artifacts. CAE can avoid these problems by allocating bits according to the content complexity and quality requirements.
  • It can reduce the operational cost and complexity of video streaming services by reducing the number of output streams needed for ABR streaming. CAE can generate fewer but more efficient output streams that cover a wider range of network bandwidths and device capabilities. This can reduce the encoding time, storage space and delivery bandwidth needed for ABR streaming, as well as simplify the management and maintenance of multiple output streams.
  • It can improve the user’s enjoyment and satisfaction by offering a steady and high-quality viewing experience. Studies have shown that viewers like to watch videos with a stable quality rather than a changing one. Also, CAE can generate output streams that suit different types of content (e.g., sports, movies, documentaries) and different types of users (e.g., quality-sensitive, bandwidth-sensitive). This can improve the user’s perceived quality and enjoyment of watching online videos.

Conclusion

 

Content adaptive encoding is a technique that optimizes the video encoding process for ABR streaming by analyzing the source content prior to deciding the right set of output bitrates and resolutions to use in the ladder. Content adaptive encoding can be performed at different levels of granularity, such as per title or per shot. Content adaptive encoding can benefit video streaming services by improving the quality, reducing the cost and enhancing the user experience of ABR streaming. Content adaptive encoding is a promising technology that can enable more efficient and customized video delivery over the Internet.