RTC used to mean video conferencing. Now it means a lot more.
When I joined RADVISION over a decade ago, the world was “H.323″ so much so, that the RADVISION logo had H.323 on it. Doing VoIP meant using H.323, and that allowed adding video. Then using H.261 and a bit of delving into H.263.
Later on, when SIP hit the market, the H.323 mark was removed from RADVISION’s logo. Video conferencing as a term changed to “Convergence” – and meant… the same thing.
When this didn’t hit the mark (that initial video conferencing market grew, but not any faster), a new marketing term was found and adopted: “Unified Communication”.
The result? More of the same.
Video Conferencing is still a rather traditional market for enterprises, preferably large ones, preferably with money to spend. The core of the market is room systems (video stations installed in conference rooms) and MCUs (multipoint video calling support).
Main innovation for the last decade? More resolution. Better frame rate. And patents protecting technologies to improve the quality of the media.
Every talk about video conferencing starts with these issues. Innovation and creativity are in the fringes. The barrier of entry are high. The return isn’t worth it.
That’s RTC circa 2011.
Enter WebRTC. Fresh developers. People who were never taught that media processing is complex. That signaling requires interoperability testing. Developers unhindered by “reality” and full of creativity.
WebRTC with its Java Script API and browser implementation, brought into the VoIP market a hundred times more developers than it accommodated in the C++ days.
And guess what? These developers weren’t all interested in video conferencing solutions. They had other things in mind: they now had access to the camera and the speaker of the browser, they could use other web APIs available out there to develop and explore.
If I had to select 3 different RTC uses that redefine WebRTC, these would be the demos I’d pick:
There are a few out there, but the slickest one is Webcam Toy.
No communication in here, besides sending the final photo to friends, but would anyone in the video conferencing market even take the time to consider doing such a thing?
Augmented reality is usually thought of as adding layers on top of a camera capture in real time. But I think it goes beyond that – it is placing interactions in context, and context can be gleaned out of the camera and microphone of our device.
Mozilla has a cool demo with an interesting explanation on responsive web typography – changing the font size on a web page based on the distance of the viewer.
Just to make sure you understand – there’s no “real” development for this demo – it is more of an integration of existing stuff – putting them to new use – which is the way most web developers work.
Browser based CDN
How about using the visitors of your website to serve your website? This is a concept that PeerCDN is working on. And this is where things get really interesting. Since WebRTC has the ability to send any arbitrary data between browsers, it is one of the most powerful solutions out there that can be leveraged by WebRTC developers. Check out what Janko Roettgers says about PeerCDN on GigaOm.
Given to a VoIP developer, the only use for it would be to add a text chat and file sending chnnel to a call. Given to web developers – the sky is the limit.
These have nothing to do with real time communication or with video conferencing – but they probably will. Bistri is making use of similar techniques to those in the photobooth to add some fun effects to conversations – something you wouldn’t dare place in a “corporate” setting.
Head tracking is used in video conferencing already, but it is so low level that it is painful to even think of interesting uses to it. Placed at the Java Script layer… plenty of things will surface – resizing and cropping incoming video feeds to bring everyone to the same “head size” pops to mind. Or just understanding when people are there to begin with.
RTC is being redefined. And it is doing so without VoIP experts and media engineers (myself included).