How Netflix is Delivering Better Video with Less Bandwidth

In the Netflix Tech Blog, the new per-title encoding optimization has been explained in some technical detail. What they're doing is very smart, and doesn't involve any new compression standards. Rather it's an adaptive bitrate that optimizes the video stream based on the kind of content and the customer's available bandwith.

Netflix uses the H.264/Advanced Video Coding (AVC) compression algorithm for content up to and including 1080p video. Years ago, when they adopted this algorithm, Netflix developed what's called a bitrate ladder. That is, for a given video resolution, they selected bitrates best, on average, for the video stream. This was independent of the kind of content. For example, 720p video was delivered at either 2.35 or 3.0 megabits per second (Mbps).

What Netflix has discovered is that a fixed bitrate ladder is not optimal across the board of all their content. The Netflix Tech Blog for December 14th explains.

This “one-size-fits-all” fixed bitrate ladder achieves, for most content, good quality encodes given the bitrate constraint. However, for some cases, such as scenes with high camera noise or film grain noise, the highest 5800 kbps [5.8 Mbps] stream would still exhibit blockiness in the noisy areas. On the other end, for simple content like cartoons, 5800 kbps is far more than needed to produce excellent 1080p encodes.

One of the issues related to the delivery of the video stream is how the compression algorithm works. When it's not robust enough, you see a picture full of flickering blocks, called "mpeg breakup." There is a trade-off in the degree of compression and the resolution the customer can accept. Netflix explains the situation for, say, a 1080p video:

Encoding these high complexity scenes at 1920x1080, 4300 kbps [from the bitrate ladder], would result in encoding artifacts such as blocking, ringing and contouring. A better quality trade-off would be to encode at a lower resolution 1280x720 to eliminate the encoding artifacts at the expense of adding scaling. Encoding artifacts are typically more annoying and visible than blurring introduced by downscaling (before the encode) then upsampling at the member’s device....

What Netflix is doing is to look at the type of content delivered and set the bitrate and compression so that the bitrate is minimized for each kind of title on their library. For example, cartoons with simple colors and not much detail can be transmitted at a lower bitrate for a given resolution than, say, a movie with complex, fast-moving scenes.

By doing all this, Netflix can achieve an on-average reduction of its entire Internet bandwidth requirements by about 20 percent. For the high level details, see Jeff Gamet's earlier article: "Netflix Tackles Bandwidth Caps with More Efficient Video Encoding System."

This is all very smart and good because it makes better use of the available Internet resources, customer bandwith and devices. But it does mean going back and reprocessing titles. As Jeff Gamet noted above, the new process is already being used, and "[Netflix] plans to finish reencoding its entire library in the first quarter of 2016."