Several media sources are claiming that Netflix is re-encoding it’s entire media library “by hand”. I tried to find out how many titles this would entail, but the information doesn’t seem to be readily available. It must be at least 10,000 titles at any given time world-wide.

Articles by popular media sources such as Hello Giggles and Uproxx are telling people that Netflix engineers are spending their time going through titles one-by-one, manually watching and tuning the bitrate of each title to perfection.

Having read the Netflix blog post that sparked all this earlier in the day, I wanted to try to explain that “per title encoding optimization” does not mean “manually tuning”.

Currently Netflix uses a fairly naive method of setting the bitrate for tv shows and movies. They set the same bitrate for the same resolution across the entire library, not depending on the content. For example, a cartoon at 1080p and an action movie at 1080p would both have the same bitrate (about 5.5mbps). The cartoon though doesn’t require such a high bitrate since many scenes are highly static, and contain large areas of the same colour.

Netflix also has to take in to account that people need to stream content on a possibly slow connection, thus they have to keep the bitrate as low as possible. Thus your action movies don’t get enough bitrate for perfect viewing pleasure, and your cartoons are getting too much.

Their new method of “per-title optimization” means that they are using an automated system to tune the bitrate for each title in their library. They’re using a metric called Peak Signal-To-Noise Ratio (PSNR) to get a quantative measure on quality, and seeing how low they can run the bitrate and still attain a similar PSNR value (and thus similar quality). They repeat this process for every resolution (480p, 720p, 1080p, 4k) and for every title.

And really, with Netflix engineers supposedly earning over $200,000 a year, I would expect a more clever solution than manually watching everything in the Netflix library and tuning it’s bitrate.

