This synopsis provides background on the use of audio and video, licensing and its implications for Live Assist products. All customers must conduct an assessment with their own developers, software experts and legal counsel to form their own judgments as pertains to the use of audio & video in their apps, use cases and business.
Audio and video processing is of critical importance in real-time communications. Throughout the industry, the use of codecs ("coder-decoder") to properly handle video and audio on mobile devices, browsers and desktops has been required and debated endlessly by many. Within the WebRTC community, video and audio codecs are used widely and packaged with every browser and SDK.
Video Codecs
Currently, two video codecs dominate the communications industry for video conferencing: H.264 and VP8. Both video technologies support high-definition real-time communications and power services such as Apple’s FaceTime and Google Hangouts.
H.264 H.264 is the dominant video compression technology, or codec, in industry that was developed by the International Telecommunications Union (as H.264 and MPEG-4 Part 10, Advanced Video Coding, or AVC). |
VP8 VP8 is a video compression format owned by Google. Google remains a staunch supporter of VP8 after buying the company that created it. VP8 is roughly equivalent in processor usage, bandwidth and quality as H.264. |
VP9 VP9 is the next generation video compression format owned by Google. VP9 uses about 50% less bandwidth than VP8 with the same resolution quality. VP9 is expected in some WebRTC endpoints by yearend. VP9 is also royalty free. |
VP8 dominates WebRTC today
As a royalty-free video codec, every WebRTC-enabled browser supports VP8 today (Google Chrome, Mozilla Firefox and Opera). For plugin-less real-time communications, VP8 is the dominant video codec.
H.264 is more commonplace
H.264 is the dominant video codec in the industry. It is used widely and reliably for streaming video and video conferencing (outside of WebRTC). One of the few disadvantages of H.264 is that it requires royalties paid to the MPEG LA patent pool consortium.
Free & open source H.264
However, in support of WebRTC, Cisco published its H.264 codec as open source and is providing a binary software module that can be downloaded for free. In turn, Cisco will cover MPEG LA licensing costs for this module, and, based on the current licensing environment, will effectively make H.264 free[i].
H.264 is now mandatory in browsers
At an IETF meeting in November 2014, the RTCWEB working group reached consensus to make support for both H.264 and VP8 mandatory in browsers (WebRTC User Agents). As more browsers adopt WebRTC and development advances, Chrome, Opera, IE and Safari will also need to adopt H.264 to be WebRTC compliant. Open H.264 was been adopted in Mozilla Firefox version 33 (Oct. 2014). Chrome and Opera support is expected by end of 2015.
“While Cisco’s move helps add H.264 support to Firefox on all OSes, we will continue to support VP8, both for the HTML video element and for WebRTC. VP8 and H.264 are both good codecs for WebRTC, and we believe that at this point users are best served by having both choices.” Brendan Eich, Mozilla CTO[i]
Minimizing transcoding with dual H.264 & VP8 support
As transcoding is an intensive process, CBA offers both H.264 native support and VP8 support in our mobile SDKs and in the future our browser plugins. As a result, no transcoding will occur when a smartphone or tablet application connects to an H.264 endpoint (ex. Jabber for Windows or a Cisco Telepresence EX90). In addition, if the mobile app connects to a VP8 endpoint (e.g. Google Chrome browser), only VP8 will be used for that session. Because 70% of calls are from mobiles, dual codec support minimizes transcoding.
CaféX video & audio codec support
Mobile / Browser |
Video Codecs |
Audio Codecs |
Google Chrome v44 |
VP8 * |
Opus, ILBC, ISAC, G.722, G.711 |
Mozilla Firefox v28 |
VP8, H.264 (Open H.264) |
Opus, G.711 |
Opera v28 |
VP8 |
Opus, G.711 |
Microsoft Internet Explorer Plugin |
VP8 ** |
Opus, G.711 |
Apple Safari Plugin |
VP8 ** |
Opus, G.711 |
CBA native iOS SDK |
VP8, H.264 |
Opus, G.711 |
CBA native Android SDK |
VP8, H.264 ** |
Opus, G.711 |
CBA is working with Cisco to implement Open H.264, but we are gradually introducing it into our products once stability and compatibility are verified.
* Note: VP9 and H.264 support is expected by end of 2015.
** Note: Open H.264 support is expected by end of 2015.
CaféX transcoding support
In addition to port muxing and handling of encryption/decryption for WebRTC endpoints, the Live Assist Media Broker can transcode between VP8 and H.264 when required. This function guarantees compatibility between WebRTC endpoints using VP8 and immersive, desktop and traditional video endpoints using H.264.
CBA also supports audio transcoding for Opus, G.711u/a into G.711u/a and G.729a.
License implications for CBA customers
Any enterprise that uses CBA SDKs as well as royalty bearing codecs such as H.264.
MPEG-LA & H.264
For those applications that use H.264, customers with over 100,000 application users will need to consult with the MPEG-LA for licensing of the AVC codec. More information may be obtained from MPEG LC LLC. Please see http://www.mpegla.com.
----------
[1] Rowan Trollope, “Open-Sourced H.264 Removes Barriers to WebRTC”, Cisco Blogs, October 30 2013 (http://blogs.cisco.com/collaboration/open-source-h-264-removes-barriers-webrtc/)
[1] Brendan Eich “Video Interoperability on the Web Gets a Boost From Cisco’s H.264 Codec”, The Mozilla Blog, October 30, 2013 (https://blog.mozilla.org/blog/2013/10/30/video-interoperability-on-the-web-gets-a-boost-from-ciscos-h-264-codec/)
Comments
0 comments
Please sign in to leave a comment.