WebRTC and asm.js support enabled by default
The new version comes with support for the nascent WebRTC API enabled by default for the first time. Technically still a work in progress at the Worldwide Web Consortium (W3C), WebRTC is a proposed standard that enables browser-based voice calling, video chat, and peer-to-peer data sharing.
Other than Firefox 22, only the latest versions of Chrome OS and the desktop Chrome browser support WebRTC so far, but other browsers are expected to incorporate it as the standard matures.
In February, Google and Mozilla showed off a cross-browser video chat session between a beta version of Chrome and a nightly build of Firefox. As of Tuesday, those same capabilities are available in the stable branch of the Firefox browser.
The main downside to asm.js is that its syntax is so sparse and its coding standards are so strict that it's not very human-friendly. Instead, programmers are expected to write their code in some other language – such as C or C++ – and then compile their source into asm.js code for execution in the browser using tools like Emscripten.
To demonstrate the technique, last August Mozilla offered BananaBread, a demo that took advantage of Emscripten, asm.js, and Firefox's then–newly enhanced WebGL graphics capabilities to deliver a fully interactive 3D gaming experience based entirely on web standards.
Incidentally, Mozilla has improved Firefox's WebGL rendering performance yet again in version 22, with the introduction of asynchronous canvas updates.
As usual, current Firefox users can get the new release via the automatic update feature. Those who would like to try out the open source browser for the first time can download version 22 for Windows, OS X, or Linux from the official Firefox website. ®