For the right codec, go for the sum — not just the parts

Streaming media service providers all have the same goal: deliver the highest quality video possible given the network and encoding tools available. Figuring out which codec to stream media in affects many things down the line and requires a holistic evaluation. Codecs maximize available resources (eg. CDN, available bandwidth) in the content delivery pipe (to provide the highest quality video) while reducing overall costs (storage, time and computing power to encode and bandwidth). Sometimes service providers take a sequential approach and optimize for one dimension or start from solving the delivery cost. Although that approach meets some provider goals, we believe it leaves several cost-saving opportunities unexplored. It also neglects to account for tradeoffs made when balancing different factors.

We propose a 360-degree view when evaluating codecs, one that considers bitrate savings, encoding speed, bitrate fluctuations and royalties. The sum and balance of all those part is where streaming media providers will find cost savings as well as performance.

For example, when evaluating a codec, keeping the focus solely on reducing the cost of network delivery ultimately leads to challenges with video quality. Video quality is what consumers care the most about. If their video is pixelated, stuttering, if lip-sync is off, or if the video freezes, consumers aren’t happy. And unhappy consumers may switch service providers.

Another challenge is encoding costs. Service providers use vast amounts of processing power to encode video for streaming. Lately we are seeing more use of experimentation with content encoding to fine tune for quality. For example, figuring out the streaming-ladder or fine-tune encoding the content. If it takes too long to encode, the value of content decreases because quality might degrade to improve encoding time and release content. The loss of content value has an impact on both the provider and the consumer.

Almost any codec can provide superior results when evaluated against a single parameter. By taking into account multiple parameters, service providers can better manage their encoding, storage, and streaming costs.

Our approach with RealMedia® HD is to provide an optimum software solution that gives over-the-top video service providers a multi-pronged approach to high quality and reduced costs. We recently ran a test using our next-generation streaming media codec, RealMedia® HD and compared its results to H.265/HEVC, H.264/AVC, and VP9. The test was run on an AWS C5 compute instance with eight CPUs using 1080p and 4K video test sequences. Encodings were done with FFmpeg using the settings published before. We collected encode time (process execution time) and measured perceived quality of every encode via VMAF.

Here’s what we saw:

VMAF measurements for codecs across various bitrates with 1080p content
VMAF measurements for codecs across various bitrates with 4K content

The results showed that RealMedia® HD provided better perceived quality and continually improved over VMAF 80–85 range. We have been optimizing RealMedia® HD to have a balance between quality and savings that fits in roughly 2 just noticeable difference levels — JNDs (VMAF 88+).

Encoding speed also is an important factor. When evaluating next-gen codecs, we have seen RealMedia® HD faster than HEVC and VP9 (these are all at slowest speeds, and doing double pass encoding).

Measurement of encoding 1080p frames per second for various codecs
Measurement of encoding 4K frames per second for various codecs

We have also tested RealMedia® HD for live streaming scenarios while providing similar quality –

Real-time encoding of 4K stream on cloud and Intel platforms with RealMedia HD

Clearly, video quality is not about a single factor. Service providers who want to deliver business and consumer value need to look at several parameters when selecting encoders. RealMedia® HD is a good alternative and delivers bitrate savings as well as faster encoding, and can be part of any mobile, or PC application as both encoding and decoding runs on software, which also eliminates managing multiple profiles of encodes.

Want to learn more and run your own test? Or create experiments with various techniques like per-title or per-shot encoding? Just ask us — we’re happy to help!