What’s next: Rainbow and WebRTC

It’s been a while since the last release of the Rainbow add-on. We wanted to give everyone a quick update on the roadmap for Rainbow and real-time communication on the Web.

Integration with WebRTC

When we first released Rainbow late last year, we made cross-platform support for┬álive streaming and one of our our main goals. Fortunately, many others have been thinking about this as well; we first saw Ericsson release an experiment around real-time voice and video communication built on WebKitGTK+. Subsequently, Google started the Web Real-Time Communication (RTC) project at webrtc.org, an open-source effort that provides many of the low-level platform APIs required to build support for real-time communication into browsers. We’ve been following all these developments quite closely, and we’re happy to announce that we will be working with the WebRTC group on JavaScript APIs that let web developers building real-time voice and video applications.


Web technologies are successful only when most (if not all) browsers support a standard API. Mozilla has been a key participant in many web standards that have evolved over the last decade. Today we are working very closely with both the W3C and IETF working groups and are actively participating in the standards discussion for real-time communication. We look forward to continuing to work with other browser vendors and interested technology groups to create compelling APIs that embodies all the characteristics that makes the Web awesome!

The Future of Rainbow

Rainbow has served as an excellent vehicle to test out various JavaScript APIs for video and image capture, as well as experimentation around live audio analysis. We love the tight feedback loop that the add-on provides; we’ve changed the API in almost every release of Rainbow so far and received excellent feedback on what worked and what didn’t. We’d like to continue this style of iterative development for real-time streaming features as well. Thus, the next release for Rainbow will feature yet another (!) new API and will be built off the code from the WebRTC project.

As the project matures, and after the many UI and technology issues have been worked out, we would also like to integrate this feature into Firefox. It is a little early to tell when that will happen, but we want to do it as soon as possible!

How can you help?

We’re really excited about propelling this forward, and if you take a look at our github repository, you’ll notice we’ve been busy hacking. As always, please feel free to jump in and help out. If you’re a web developer interested in building on these technologies, we’re really interested in hearing from you. Let’s make this a reality together!