WebRTC and Live Streaming

Published: December 22, 2016

What is WebRTC and how it applies to live streaming in 2017?
Subtitle – The Rise and Fall of Plugins.

By definition, WebRTC stands for “Web Real Time Communications.” Wikipedia defines it as: a collection of communications protocols and application programming interfaces that enable real-time communication over peer-to-peer connections. That makes a whole lot of sense, right? In practical terms, it means that browsers and mobile devices can talk with each other, hardware on your computer, and other websites in a gee-whiz cool new way. This improves live streaming by making it easier to access your webcam and microphone, and efficiently broadcast crisp clear video and audio across the internet. WebRTC is easier to understand by explaining what it’s not – it is NOT a plugin.

“Howdy, plugin pardner.”
When the wacky web world (www) first started, it was mainly text, with some basic images and logos to make it look pretty. The “browser” was invented to read this text. That’s all it needed to do, browse and display “pages” over the “web.” Hence, the webpage was born. By its very nature, a browser can not – and should not – do anything but read a webpage and display it to the viewer. It could not in anyway have writing capabilities or access anything on your computer. This was a major security feature built into all browsers from day one. A webpage anywhere in the world, presumably even a webpage made by nasty people, could be read. But it could not access your hard-drive and delete everything you owned. Makes sense, right?! That very basic notion of a browser being unable to access any of your hardware, webcams and microphones included, made surfing the internet safe.

In the early days of live streaming, ‘er web-camming, we had to download and install specific software onto our computers to get video to stream. Adobe’s Live Media Encoder (FMLE) was one of the originals. Most of the webcam hardware companies, on the other hand, would also include their own software to get their cams to broadcast. These proprietary bundles usually only worked peer-to-peer with another webcam from the same manufacturer and same software. Sneaky! By the way, this was all before Skype and even the first generation of cam sites. Installing specific software on your computer (remember .exe’s?) was the only way this all worked.

Then along came the brilliant idea of running a mini software program INSIDE a browser and not as stand alone software. We call these gunslingers “plugins.” They still had to be downloaded and installed, but they were a powerful solution that allowed webpages to do more than just display text and images. For us web programmers, the plugin was our hero! We could now make a webpage, and an entire website, act like a real piece of software. We could change an “application” by the next time you returned to our website, without having you to buy or download an entire new version of our software. Oh, the potential we had with the dawn of “Web 2.0.”

Adobe Flash Player was one of the first and most successful plugins for many reasons. The Flash plugin did 99% of all the work we ever wanted to do in a website application. As a programmer, why would you write your own plugin to override the video-card graphics accelerator to smoothly animate a cartoon bird? This was already written and available in Flash, for free! It made our lives much easier. And it made your life better, too. Overnight, websites were no longer static pages, but full fledged software applications. Did Flash do everything we needed for programmers? No. But for the few things we needed extra, we wrote our own tiny plugins. The beauty of it all was that the plugins we created could live side by side with the main Flash plugin that did the heavy lifting.

“This town ain’t big enough for the two of us.”
[Queue the creepy western villain whistling]
As we all enjoyed this web gold-rush of possibilities, the scoundrels out there realized how easy it was to take-over-your-computer with a plugin. After all, a plugin is real software you downloaded from God-knows-where and you gave access to everything holy inside your computer. Yikes. And yes, real exploits existed in this set up. More and more, we learned never to accept a plugin from any website that felt shady. And more and more, Adobe released version updates to make their Flash player – the head-honcho plugin of all plugins – to be safer. To this day, Adobe makes a version update on a regular monthly schedule. It’s remarkable due diligence when you think about it.

The days of the plugin are nearing an end, though. History will recycle them off into the trash heap along with 8-tracks, betamax, and transistor radios. There is a better way, it’s called WebRTC and its brother HTML5. The browser manufacturers have agreed on a common protocol where all browsers, eventually, will be able to access certain hardware on your computer (webcams and microphones in our case) in a safe and secure way. They also will be able to communicate across the internet in a safe and secure way. All this behavior will be built-in and part of the browser itself – nothing to download and install. Plugins are considered so potentially unsafe, that the browser makers agree that they will disable all use of plugins in the very near future. WebRTC has been in the making for a number of years and will replace plugins. WebRTC is currently mature enough to use in a commercial application website …in Chrome.

Wait, what? This only works in Chrome? Not exactly. Firefox and the other main browsers are right up there in implementing WebRTC / HTLM5 with all its features and security. However, the web giant Google makes Chrome. They are the leader and driving force behind this (my opinion). What they create and perfect first in Chrome, like it or not, becomes the de facto standard. StreetJelly is re-writing its broadcasting software with WebRTC first in Chrome. Firefox is almost there, but we are waiting until Firefox adopts TCP streaming like Chrome. For you geeks out there, Firefox currently only streams WebRTC in UDP (user datagram protocol – or as I usually say, “user defined packets”). UDP ports are almost always locked down by firewall rules and we feel it would be too treacherous to ask our musicians to start unblocking a wide range of dynamic ports used by UDP. In other words, we’ll be broadcasting WebRTC in Firefox, MS Edge, and Safari real soon!

Don’t roll the sunset clip yet…
What about Adobe Flash? How can it go away? Half the web still uses it! That is very true. The browser makers are making concessions to our aging hero. Chrome has already blocked all old-style plugins, but has built in their own version of Flash player internal to Chrome. Whether you refuse to download Flash from Adobe’s website or not, Chrome has its own version already on your computer. Google and Adobe are in a close relationship to make sure it’s safe. Firefox will be cutting all access to old-style plugins by 2017. It, too, will have its own internal version of Flash like Chrome. But eventually, our hero – the Adobe Flash plugin – will fade away forever.

It’s a brave new world …again.

Frank Podlaha
CEO and Founder
…and Chief Propeller-Head

Ok, now queue the sunset…

Entertainment
follow us on Twitter      Contact      Privacy Policy      Terms of Service
Copyright © BANDMINE // All Right Reserved
Return to top