Netflix have switched streaming to encoding in H.264 High Profile and VP9 (profile 0), in response to increasing processor capabilities of decoding streams online. The fact that both these compression formats have found broad decoder support from Mobile Hardware and Android OS respectively has motivated this change.
AVCHi-Mobile (H.264 High Profile) and VP9 Codecs
Essentially the difference between baseline, main and high profiles of H.264 encoding is increasing compression efficiency, with the requirement of greater decoding capability. This means that compression in high profile reduces video bitrate for a given stream quality more efficiently, but decoding it requires greater processor power.
OTT Video Platforms such as Netflix encode their streams for delivery across multiple devices. There are multiple considerations when encoding for multiple-device streaming delivery:
- User internet bandwidth – The stream should be supported across the widest network bandwidth available. Encoding for low bitrate streaming is critical for users on low bandwidth internet connections, for example users who might be streaming on mobile internet connections.
- Processor capability – Devices such as OTT Television and Desktops have much more processing power than mobiles. Mobiles have much lower decode capabilities, because of battery considerations and because low-screen size means that streaming is already optimized for low resolution for mobile. However increasingly decode capabilities are increasing in mobile devices, and increasing demand on low-bandwidth connections requires this increased decode capability for more effective video encoding.
- Cost considerations – Streaming at high bitrates naturally entails higher costs for video content broadcasters. There is a trade-off there between video quality and cost. Video delivery providers therefore provide the optimal resolution for a comfortable experience.
Netflix’s latest update prioritizes video quality for low bandwidth internet connections. Prior to the update Netflix used AVCMain (H.264/AVC) profile for almost all video, and HEVC for videos in Ultra HD resolution. The two new compression formats that have been introduced are: AVCHi – Mobile and VP9-Mobile.
In terms of optimizing video encoding, Netflix have made the following changes:
- Increasing time period between random access points – This makes encoding more efficient, while increasing the time between I-frames, making seeking videos more granular.
- Allowing more B-frames, and better motion prediction, to reduce the number of heavy I-frames
The feature of per-chunk optimization allows encoding at different average bandwidths for different chunks of video. This is in place of an average bitrate for the entire video. This feature ensures that motion-heavy chunks are encoded at high bitrate as compared to low-motion chunks, ensuring smooth quality of video throughout the streaming process.
Netflix have updated to H.264 High Profile and VP9 codecs largely to maximize their reach to more number of users for reliable streaming. This update has come shortly after announcement of download feature for their mobile app. Additional optimization related to placement of I-frames and optimization of motion signify that the company is leveraging improving decoder capabilities for more efficient encoding. The resulting encoding efficiency improvements signify that AVCHi-Mobile encodes at 15-19% lower bitrates than similar quality AVCMain, while VP9 offers the same quality at 35% lower bitrate. The resulting improved quality for lower bitrate means a better experience for Netflix users.
Supercharge Your Business with Videos
At VdoCipher we maintain the strongest content protection for videos. We also work extremely hard to deliver the best viewer experience. We'd love to hear from you, and help boost your video streaming business.