WebRTC h264 codec availability in Firefox desktop and Android
Following the announcement of Cisco h264 availability for WebRTC in Firefox back in Oct, would it be possible to provide an update on your progress? And do you have a rough release date for availability in both Firefox desktop and Android?
Thank you,
Paul
Wšykne wótegrona (3)
Webrtc works fine+ in Firefox and Firefox for Android. It will use the Opus audio codec combined with VP8 video codec. It should be able to perform a cross browser call to Chrome.
+ will depend on the exact network topology you are trying to communicate over
The Cisco h264 decoding is not needed on Firefox for Android as the system libraries provided by Android are available. This is also true of Firefox running on Windows 7/8 and Linux. I don't know when the codec will be available for other platforms.
Wót Kevin
The problem with the VP8 codec is that there's no hardware acceleration support for it on legacy devices. As a result, existing dual-core processors (i.e. the majority of devices currently in the hands of users) struggle to provide quality video and audio.
My hope is that by leveraging the h264 codec, that the video and audio quality of a WebRTC call would be significantly improved due to the existing support for h264 hardware acceleration. But this may be just wishful thinking.
If the h264 codec is actually more efficient for legacy devices, are there plans to make it available within Firefox?
Thank you.
We are currently working on adapting the video and audio encoders to the system load and available bandwidth, specifically on Android devices, so low-end devices (among which I don't even really count dual-core ones) or high-end devices that are doing other stuff don't have to struggle but can reduce framerate/video size if needed.
You can follow progress by checking the public Media/WebRTC meeting notes: https://wiki.mozilla.org/Media/WebRTC/2013-12-17
Apparently hardware H264 support is being worked on by a team in Taipei. (But it's unclear whether it works well for WebRTC or brings any of the claimed/hoped for advantages)
Note that for a mobile device to be able to use the H264 hardware encoder/decoder, the other side must support H264 as well, and currently neither Firefox nor Chrome do so for WebRTC. So the effort on making the Cisco H264 code work in Firefox must also be finished before any of the (potential) advantages could help.
So to answer your question: if hardware H264 turns out to be more efficient for WebRTC *and* if Firefox can support H264 properly on all platforms despite the myriad of patent problems it has, I could see us using it, but it'll take quite some extra work to put everything in place.
VP8 doesn't have these problems and will probably work well on low-end devices way before that.