WebRTC comes to Firefox

As we mentioned in the Hacks blog back in April , WebRTC will be on by default in Firefox 22. getUserMedia (gUM) has been on by default since Firefox 20. PeerConnection and DataChannel, which enable video/audio calling and peer-to-peer data sharing, are what’s new in Firefox 22 (due to be released today).

WebRTC brings real-time communication to the web for the first time ever, and we’re excited to get this new technology into the hands of developers. We believe the industry has only scratched the surface of what’s possible with WebRTC, and only by getting it into the hands of developers and early adopters will we see this technology’s true potential.

Known issues/limitations

There are a few known issues/limitations in the early releases:

  • We are initially focused on getting 1:1 calling working well. We’ve done nothing to prevent conference or mesh calling, but depending on the capabilities of your device, video calls with multiple participants may be sluggish. We will be improving multi-person calling in future releases. Our roadmap includes full support for multi-person/conference/mesh calling and we expect to improve the experience in future releases.
  • You may hear echo on calls when you or the party you’re talking to is playing sound over your computer speakers. We’re working on improving echo cancellation but for the time being, try wearing headphones if you experience this problem.
  • On some systems, you may experience audio delay relative to the video. We’ve isolated the problem and are working on a fix for a near-term Firefox release.
  • If you are behind a particularly restrictive NAT or firewall, you may have trouble connecting. We are adding support for media relaying (TURN) in Firefox 23, so you should find this improving soon.

Trying WebRTC support today

If you’d like to try out Firefox’s WebRTC support today, here are some sites that support WebRTC calling:

NOTE: most of these sites support 3 or more callers. We expect basic 1:1 (2-person) calling to perform well enough for developer and early adopter use. As mentioned above, you may find that your mileage may vary with 3-or-more person calling using the current release.

If you’re a developer interested in embedding WebRTC video chat into your website, please check out article on that.

Testing DataChannels

You can also try out DataChannels in Firefox, which is the first browser to launch a spec-compliant implementation of DataChannels to the market. Some sites and projects that use DataChannels:

Using Firefox Nightly to test the latest

I still encourage developers to use Firefox Nightly because it has the latest and greatest code and improvements, and we will be continuing to improve existing features and add new ones as we get feedback from developers and users and as the WebRTC standard itself evolves.

Rapid progress!

We expect new WebRTC sites, supporting PeerConnection and DataChannels, to come online rapidly over the next several months. We’ll keep you updated on our progress and on WebRTC’s progress here on Mozilla Hacks.

About Robert Nyman [Editor emeritus]

Technical Evangelist & Editor of Mozilla Hacks. Gives talks & blogs about HTML5, JavaScript & the Open Web. Robert is a strong believer in HTML5 and the Open Web and has been working since 1999 with Front End development for the web - in Sweden and in New York City. He regularly also blogs at http://robertnyman.com and loves to travel and meet people.

More articles by Robert Nyman [Editor emeritus]…


33 comments

  1. Jan Krupa

    Great to see WebRTC support in Firefox! We were waiting for this for the past few weeks so we can start testing Firefox audio/video conferencing support for our browser-based shared development platform ProgBuddy. It’s cool that we can work on stable Firefox version, now :)

    June 25th, 2013 at 08:27

    1. Robert Nyman [Editor]

      Thanks, glad you like it! Go create amazing stuff!

      June 25th, 2013 at 12:37

  2. Dennis

    Hi, how well is it working between Firefox and chrome in this version?

    June 25th, 2013 at 08:39

    1. Robert Nyman [Editor]

      I guess you’ll need to be the judge of that. :-) Please try some of the services listed in the post and let us know.

      June 25th, 2013 at 12:38

  3. bardu

    Congrats!

    Any timeline for WebRTC support in FF for Android and Firefox OS?

    June 25th, 2013 at 11:38

    1. Robert Nyman [Editor]

      To my knowledge, it’s in Firefox 23 for Android, but the preference for it is set to off by default. Hopefully it will be on by default in Firefox 24 or 25.

      June 25th, 2013 at 12:40

      1. Maire Reavy

        We actually flipped the pref for Android last week, shortly before we uplifted 24 to Aurora. So WebRTC support in Fx for Android is pref’d on in Nightly and will be pref’d on in Aurora 24. It’s still early. Depending on how testing goes, we may keep the pref on in 24 or do a double cycle of Aurora (which we did for desktop).

        June 26th, 2013 at 07:19

  4. Isaque Galdino

    Firefox is loosing its roots.

    It isn’t fire neither fox anymore.

    I’m really sorry for the path Mozilla is taking.

    June 25th, 2013 at 14:04

    1. Robert Nyman [Editor]

      Thanks for your opinion. If you want to elaborate, that would be appreciated, and then we can talk about it.

      June 25th, 2013 at 14:12

    2. Luke

      What do you mean by “loosing its roots”?

      I’d say this is one of the better recent releases – not only does it majorly beat Chrome at speed on some asm.js examples, it supports new webRTC api.

      June 25th, 2013 at 22:56

  5. Andy

    Just tested out some WebRTC chatting with my dad on those sites you suggested. DEFINITELY noticed audio delays when chatting Firefox-Firefox or Firefox-Chrome. Everything else seemed to work, and we didn’t see any of those delays when chatting Chrome-Chrome.

    June 25th, 2013 at 14:55

    1. Robert Nyman [Editor]

      Thanks for the feedback! Was that in Firefox 22? It would be interesting to see if you have the same experience in Firefox Nightly (i.e. to see if it has been improved).

      June 25th, 2013 at 15:04

    2. Maire Reavy

      Thanks for testing this out! Did your Dad hear the delay as well? If you’re hearing the delay and your Dad isn’t, can you check to see if your dad’s microphone is running at 44100 Hz? If you can change your dad’s mic to run at 48000 Hz (or any setting other than 44100 Hz), the delay should go away. See bug 886886 (https://bugzilla.mozilla.org/show_bug.cgi?id=886886) for more details. We have two patches to fix this bug; we’re just trying to decide which patch to land. I’d also be curious to know which OS (Win, Mac, Linux) your dad is using. Similarly, if your dad is also hearing a delay, then you’ll need to check out and modify your mic setting. Please let me know how it goes and thanks for help us out! You can often find me on #media channel on Mozilla IRC (nick: mreavy).

      June 26th, 2013 at 07:34

  6. Jim

    Is Mozilla planning to offer a messaging service? That is, something that supports instant messaging (via XMPP) and offers WebRTC video calls. Given that Thunderbird supports instant messaging and Firefox now supports WebRTC, Mozilla offering an out-of-the-box service to complement those features seems like a good fit.

    It’s great that other websites are offering WebRTC but I’d prefer to use those services from an organisation I already know, particularly an organisation like Mozilla which has a well deserved reputation for putting the interests of the end user first.

    June 25th, 2013 at 17:20

    1. Hank

      Visibly Mozilla is working on this, they seem using p2p data channels for instant messaging, still unclear what they use for presence signaling https://github.com/mozilla/talkilla/

      June 26th, 2013 at 00:15

    2. Robert Nyman [Editor]

      We are also working on TowTruck, so we’re both exploring our own options and who we want to collaborate with and promote.

      June 26th, 2013 at 03:14

  7. Jaydson Gomes

    Really, really nice!
    WebRTC is a pretty exciting new technology.
    I missed the documentation link in the post, or wasn’t mentioned?
    https://developer.mozilla.org/pt-BR/docs/WebRTC

    June 25th, 2013 at 19:30

    1. Robert Nyman [Editor]

      It wasn’t in there. :-) We pointed to some articles on the topic, but not directly to the WebRTC documentation on MDN.

      June 26th, 2013 at 03:15

  8. Jaydson Gomes

    Hey @Robert,
    I tried to hack with a simple demo.
    The current state is:
    – In Firefox Nightly(23.0a1) for desktop works fine.
    – In Firefox Nightly(24.0a1) for Android, i authorize the page, and android give me a notification “Camera and microphone are on”, but nothing happens.
    – In Firefox Aurora(23.0a2) nothing happens.
    Here is the code: https://github.com/jaydson/webrtc-tests/blob/master/index.html

    June 25th, 2013 at 20:36

    1. Robert Nyman [Editor]

      Thanks for testing! Best place to discuss more at this time is probably in the #media channel on Mozilla IRC.

      June 26th, 2013 at 03:17

  9. Uwe Rauschenbach

    Hi Robert,

    good to see WebRTC on by default now!

    The link you shared (https://developer.mozilla.org/docs/WebRTC) points to a page which contains a dead link w.r.t. the Peer-to-Peer Communication part. The page also states that a lot of the stuff there is outdated.

    Is there any more up-to-date info available, in particular regarding the currently activated PeerConnection and DataChannel APIs?

    Thanks Uwe

    June 26th, 2013 at 03:56

    1. Robert Nyman [Editor]

      That is the documentation we have (and a wiki, so anyone can contribute to it). I’ll talk to the team and try and make sure the latest end up there.

      June 26th, 2013 at 06:00

    2. Maire Reavy

      Hi Uwe, We’ve updated the Peer-to-Peer Communications link. (Sorry for any frustration there.) And we’ll work to get more stuff up as soon as possible. In the meantime, if you have questions that the documentation isn’t helping with, please come find me or other members of the WebRTC team in #media on Mozilla’s IRC (my nick: mreavy). And thanks for your interest in Firefox and WebRTC!

      June 27th, 2013 at 17:34

  10. rehb

    i waiting for ….. it :)
    Perfect.

    June 26th, 2013 at 05:50

  11. Gerardo

    My faith is back to firefox, thanks again to all people to develop this feature, we need this feature bye skype!!!

    June 26th, 2013 at 07:22

  12. vince dobbs

    Will Firefox 22 limit or eliminate the use of add-ons or extensions?

    June 26th, 2013 at 08:56

    1. Robert Nyman [Editor]

      There’s no plan for that. Out of interest, why would we want to do that?

      June 26th, 2013 at 09:29

  13. Mathew Porter

    Nice to see the support starting to come in for WebRTC

    June 26th, 2013 at 14:08

  14. Eugene Krevenets

    What about mobile? Do Mobile FireFox support WebRTC by default on it?

    June 27th, 2013 at 09:10

    1. Robert Nyman [Editor]

      This was answered above.

      June 27th, 2013 at 13:37

  15. Alexey

    Hello guys,

    Congrats! Great progress! We have found one rather important problem , posted about it at https://bugzilla.mozilla.org/show_bug.cgi?id=890931 , but still don’t see any activity around. Can you please take a look?

    July 11th, 2013 at 09:12

    1. Robert Nyman [Editor]

      Thanks for the heads-up. It was reported a few days ago, so it could take longer to get back on it. I’ll let the WebRTC team know.

      July 11th, 2013 at 09:21

      1. Alexey

        Thanks!

        July 11th, 2013 at 09:26

Comments are closed for this article.