Pinterest Stumbleupon Whatsapp
Ads by Google

The Internet today is vastly different to what it was 10 years ago. Back then, if you wanted to do anything moderately ambitious like video conferencing, you had to work with plugins that simply didn’t work all that well. I am, of course, referring to Flash, which was notoriously slammed by Steve Jobs in 2010 for being insecure, slow, and ill-suited to a world of touch devices.

There’s something better now.

It’s called WebRTC, and it’s allowing developers to build real-time applications, such as MMORPGs (massively multiplayer online role-playing games) and video-conferencing tools, using open web technologies, like HTML5 What Is HTML5, And How Does It Change The Way I Browse? [MakeUseOf Explains] What Is HTML5, And How Does It Change The Way I Browse? [MakeUseOf Explains] Over the past few years, you may have heard the term HTML5 every once in a while. Whether you know anything about web development or not, the concept can be somewhat nebulous and confusing. Obviously,... Read More , JavaScript What is JavaScript, And Can the Internet Exist Without It? What is JavaScript, And Can the Internet Exist Without It? JavaScript is one of those things many take for granted. Everybody uses it. Read More and CSS.

Here’s everything you need to know about WebRTC.

What Can It Do?

Perhaps the most important thing to remember is that WebRTC isn’t really a single API (Application Programming Interface What Are APIs, And How Are Open APIs Changing The Internet What Are APIs, And How Are Open APIs Changing The Internet Have you ever wondered how programs on your computer and the websites you visit "talk" to each other? Read More ), or product. Rather, it’s a family of APIs, each in varying states of completion, with varying support across the browser, and performing radically different tasks.

Some of the WebRTC APIs aren’t terribly exciting. They perform tasks as simple as gaining access to a computer’s webcam and microphone. But others are much more ambitious.

Ads by Google

For instance, one API allows users to share their screen with a remote user. Another supports simulcasting, which allows users to broadcast video in varying levels of quality and detail. Another WebRTC API (MediaStream API) allow developers to process audio on the fly, muting, pausing, and adding tracks as need be.

There’s more. Much more. Certainly more than could be reasonably discussed in a 1,000-word article.

In short, WebRTC provides a beautiful family of APIs that make it possible to work with remote computers, in real-time. It’s exciting, and people are using it for incredible, mind-boggling things.

What Are People Using It For?

One of the more successful real-world uses of WebRTC is Appear.in. We reviewed it Move Over Google Plus Hangouts. Appear.in Is Here & It's Really Good Move Over Google Plus Hangouts. Appear.in Is Here & It's Really Good People have been crying out for a decent video conferencing app for ages. We thought that was Google Plus. We were wrong. Meet Appear.in. Read More shortly after it launched in 2012, and were impressed with how it made video-conferencing that bit more delightful, thanks to its streamlined aesthetic and lack of logins, accounts and plugins. Creating a video chat is simply a matter of pressing a button and sharing a link to the person you want to chat with.

webrtc-appear

Appear.in isn’t the only WebRTC-powered video-confencing service. There have been an explosion of products created by companies that are very much in the mainstream. Companies like Citrix’s GoToMeeting Free and Firefox Hello Meet Firefox Hello Video Chat & Firefox Marketplace In The New Firefox 35 Meet Firefox Hello Video Chat & Firefox Marketplace In The New Firefox 35 Firefox 35 introduces a cross-platform video chat service called Firefox Hello, lets users beta-test the new Firefox Marketplace, and also bakes in social sharing on the web. Read More . It’s also widely believed that Skype for Web is powered by WebRTC.

WebRTC has also been used to make browser-based, interactive, multiplayer games. Most of these are decidedly low-budget affairs, but with some major exceptions. The Hobbit: The Battle for Five Armies was released at the end of 2014, as a tie-in to the final installment of Peter Jackson’s epic saga.

webrtc-tolkein

Powered by WebGL and WebRTC, the player is placed in the shoes of one of Middle Earth’s factions (orcs, elves, humans and dwarves), and then pitted against other players, all eager to become the rightful rulers of Tolkein’s fantasy world.

webrtc-tolkein-2

But despite the incredible ways in which WebRTC has been used, support for it across the myriad of browsers is incredibly limited.

Browser Support

Predictably, Google Chrome and Firefox have the most comprehensive support for WebRTC, although there are some noticeable absences missing from both browsers. Firefox, for example, is missing the Simulcast API that’s available for Chrome, whilst Chrome lacks H.264 video streaming.

Support for WebRTC on Opera is solid, although that’s hardly surprising given that it uses the same rendering agent as Google Chrome.

webrtc-support

Elsewhere across the browser spectrum, there’s Internet Explorer and Safari. These do not support WebRTC, and there are no rumblings from the Microsoft and Apple camps about any future support. However, there are third party tools that add WebRTC functionality. We reviewed one recently.

Temasys’s Skylink Here's How to Make Internet Explorer and Safari Work with WebRTC Here's How to Make Internet Explorer and Safari Work with WebRTC Would you like to hear a secret? It's a big one. Are you sure you can handle it? Okay, here goes. There are other web browsers besides Google Chrome. Read More is a free plugin for IE and Safari which introduces WebRTC functionality. However, it comes with a catch, namely that it only works a limited number of websites, and appear.in isn’t one of them.

Is It Secure?

WebRTC is, of course, a major step up from Adobe Flash, which used to be the default way of doing in-browser real-time communications. Flash was utterly plagued with vulnerabilities, and left users exposed to hackers and malware. This issue was one of many pointed out by Steve Jobs in his essay that explained why Flash would never come to the iPhone.

Thankfully, WebRTC doesn’t suffer from the same issues that are endemic to Flash, simply because it’s not an individual piece of software – in this case a browser plugin Browser Plugins - One Of The Biggest Security Problems On The Web Today [Opinion] Browser Plugins - One Of The Biggest Security Problems On The Web Today [Opinion] Web browsers have become much more secure and hardened against attack over the years. The big browser security problem these days is browser plugins. I don’t mean the extensions that you install in your browser... Read More . It’s an API.

That’s not to say that WebRTC hasn’t had its security issues, mind you. It has. Just not at the same scale.

Late last year, it transpired that it was possible to find the real IP address of a VPN user, simply by using a few lines of JavaScript code that use parts of the WebRTC API.

webrtc-ip

VPNs are, of course, commonly used by privacy-conscious individuals 8 Instances You Weren't Using a VPN, but Should've Been: The VPN Checklist 8 Instances You Weren't Using a VPN, but Should've Been: The VPN Checklist If you haven't already considered subscribing to a VPN to secure your privacy, now is the time. Read More who want to obfuscate their online activities. There is yet to be an update that solves this problem, other than disabling WebRTC entirely. This can be done with the Disable WebRTC Firefox Extension, and the Stop WebRTC plugin for Chrome, or by disabling JavaScript entirely.

The Hurdles Ahead

The promise of WebRTC cannot be overstated. This, more than anything else in the HTML5 family, has the chance to change how we use the Internet, making it more collaborative and more interactive.

But until then, there are a lot of hurdles to overcome. The W3C desperately need to get Microsoft and Apple on board, and they need to ensure a consistent experience across the browsers that support it.

Until then, it will remain a very niche technology.

Agree? Disagree? Let me know in the comments below.

  1. Samir Nanji
    May 27, 2015 at 2:51 pm

    There's a great open source and not for project called Matrix.org who are trying to fix the missing link in WebRTC signalling that you should check out. They are making huge waves in the WebRTC community in the states.

  2. Scott
    May 19, 2015 at 9:50 am

    Absolutely no chance of Apple adopting it. It threatens their 30% ecosystem.

    • Matthew Hughes
      May 19, 2015 at 7:28 pm

      I don't know about that. It's a standard at this point.

      Crippling Safari isn't going to get them any more users.

  3. Zhong
    May 19, 2015 at 3:20 am

    Is it a replacement to Adobe or Javascript?

    • Doc
      May 19, 2015 at 12:15 pm

      Absolutely no chance of it being a replacement for Javascript, as most modern web technologies build on Javascript.
      As a replacement for Adobe Flash (I assume that's what you meant, as Adobe has hundreds of products), it's likely to catch on, but there's little chance you will ever be able to play Flash-based content without it. It *may* enable products to use HTML5 where they otherwise would use Flash (YouTube is an example), and enabling two-way communication is a step in the right direction...but we'll see.

    • Matthew Hughes
      May 19, 2015 at 7:27 pm

      Neither. WebRTC allows developers to use JavaScript to build real-time applications. It certainly replaces some of the functionality of Flash though, albeit not all of it.

    • Zhong
      May 19, 2015 at 11:40 pm

      So if Google is disabling NPAPI plugins, what are they trying to accomplish if almost every website incorporates Javascript or Flash for viewing functionality?

Leave a Reply

Your email address will not be published. Required fields are marked *