To H.265 (=HEVC) or not to H.265? That is the question. And the answer will be determined by the browser vendors.
I gave a keynote at a UC event here in Israel last week. I really enjoyed it. One of the other speakers, made it a point to state that their new top of the line telepresence system now supports… H.265. And 4K. I was under impressed.
If you think about WebRTC in 2016 or even 2017, you need to think beyond the current video codecs – H.264 and VP8. This is important, because you need to decide how much to invest in the media side of your service, and what implications these new codecs will bring to your architecture and development efforts.
I think H.265 is going to have a hard time in the market, and not just because VP9 is already out there, streamed over YouTube to most Chrome and Firefox browsers. It will be the case due to patents.
In March this year, MPEG-LA, the good folks counting money from H.264 patents, have announced a new patent pool for HEVC (=H.265). Two interesting posts to read about this are Jan Ozer‘s and Faultline‘s. Some things to note:
- There currently are 27 patent holders
- Over 500 essential patents are in the pool
- Not everyone with patents around H.265 have joined the pool, so licensing H.265 may end up being a nightmare
- Missing are Google and Microsoft from the patent pool
- Missing are also video conferencing vendors: Polycom, Avaya and Cisco
- Unit cost for encoder or decoder is $0.20/unit
- There’s an annual cap of $25M
What does that mean to WebRTC?
- Internet users are estimated above 3 billion people and Firefox has an estimated market share of around 12%. With over 300 million Firefox users, that places Mozilla way above the cap. Can Mozilla pay $25M a year to get H.265? Probably not
- It also means every successful browser vendor will need to shell these $25M a year to MPEG-LA. I can’t see this happening any time soon
- Google has their own VP9, probably with a slew of relevant patents associated with it. These will be used in the upcoming battle with H.265 and the MPEG-LA I assume
- Microsoft not joining… not sure what that means, but it can’t be good. Microsoft might just end up adopting VP9 and going with Google here, something that might actually look reasonable
- Apple being Apple, if they decide to support WebRTC (and that’s still a big if in 2015 and 2016), they won’t go with the VPx side of the house. They will go with H.265 – they are part of that patent pool
- Cisco isn’t part of this pool. I don’t see them shelling $25M a year on top of the estimated $6M they are already “contributing” for OpenH264 towards MPEG-LA
This is good news for Google and VP9, which is the competing video technology.
When we get to the WebRTC wars around H.265 and VP9, there will be more companies on the VP9 camp. The patents and hassles around H.265 will not make things easy:
- If WebRTC votes for VP9, it doesn’t bode well for H.265
- WebRTC is the largest deployment of video technology already
- Deciding to ignore it as a video codec isn’t a good thing to do
- If WebRTC votes for H.265, unlikely as it may seem, may well kill standards based high quality video support across browsers in WebRTC
- Most browsers will probably prefer ignoring it and go with VP9
- Handsets might go with H.265 due to a political push by 3GPP (a large portion of the patent owners in H.265 are telecom operators and their vendors)
- This disparity between browsers and handsets won’t be good for the market or for WebRTC
The codec wars are not behind us. Interesting times ahead. Better be prepared.
So… which of these video codecs should you use in your application? Here’s a free mini video course to help you decide.