Technology

Behind the WebRTC video codec war

When Google finally announced this year that Hangouts, its popular messaging platform, would finally ditch plugins entirely in favor of WebRTC, everyone cheered. The IETF WebRTC working group has made steady progress with drafting the final standard and even Microsoft has finally jumped into the fray and announced WebRTC support for Internet Explorer.

But there are still some hiccups on the way to full interoperability and widespread adoption of WebRTC. The lack of support from Microsoft and Apple has been a major hurdle, but now that it’s on the way to being resolved, the other hurdle needs to be addressed. Although the audio codecs for WebRTC were decided over two years ago, with both Opus and G.711 being mandatory, the community has not been able to reach a consensus on the video codec.

The two main codecs in dispute have been VP8 and H.264. VP8 is owned by Google and is currently supported by Chrome, Firefox, and Opera. The advantage of this codec is that it is not copyrighted and can be implemented by anyone who wishes to use it. On the other hand, H.264 (supported by Microsoft) must be licensed from patent holders, but has the advantage of a huge install base on existing networks and equipment.

The delay in deciding on video codecs has delayed the standardization process, but now it seems that a compromise has been reached thanks to Mozilla and Cisco. For the past year, the two companies have worked together to produce an open source version of the H.264 codec called OpenH264, which makes it possible for others to use it. Now the IETF working group has decided that browsers will need to support both codecs to ensure widespread interoperability. This approach combines the advantages of both codecs without favoring one over the other.

Additionally, WebRTC endpoints, which are not browsers, will also need to be compatible with both. But should any of the codecs become completely royalty-free, developers can choose to support it exclusively. On the other hand, WebRTC compatible endpoints are free to support both at the same time, either or even neither. This is very good news for developers and consumers alike, as the community can finally move forward with implementing WebRTC with full support.

No doubt other hurdles and procedural issues will have to be resolved before WebRTC becomes a new standard for plug-in-free real-time communication, but with the video codec issue finally ironed out, we may reach the finish line very soon. .

Leave a Reply

Your email address will not be published. Required fields are marked *