It seems everybody will be showing up at the WebRTC III Conference and Expo this week. The event has quickly become the premier venue for all things related to WebRTC, and attracts hundreds of people to standing-room-only presentations. It is rare that a technology generates so much interest so early in its development phase.
A lot of the industry excitement is perfectly justified. Until now, video and audio communication was only possible using dedicated applications and devices. WebRTC will provide a standardized API to the functions of a real-time communication device, built into a web browser. This will decouple application development from video engine development and unleash web-based application development creativity into the real-time communications arena. Video and audio communication will now be integrated into applications in ways that were previously not possible. Although companies like Vidyo have already been creating APIs for their video engines, WebRTC is the first instance of an industry-standard API. The fact that it originates from W3C and IETF further solidifies its credentials. The elimination of the “download” step is also very important in several application deployment scenarios.
In the midst of the excitement, however, there are two things that need to be considered. First, putting an API around a video and audio engine does not mean that one has solved the problems of packet-based video and audio transport over the Internet. This includes congestion control, rate control, error resilience, error concealment, among many others. An API is, and should be, transparent with respect to all these issues, since it does not affect application design and implementation. The quality of experience that a user will get, however, depends on what’s under the hood.
Vidyo has demonstrated that scalable video coding is the way forward for high quality, real-time video over the Internet, and nearly all companies in the field have followed our lead. Our recent announcement with Google concerning the development of a scalable video extension for VP9 is further testament to the need for scalability on the video codec, regardless of its origin. An inherent benefit of the WebRTC architecture is that one will be able to use a better codec without changing any part of the application’s code.
The second consideration that WebRTC enthusiasts should take into account is that in order for WebRTC to fulfill its promise of ubiquitous use of video and audio communication in web applications, it must be possible to design servers that can support the scale of these video and audio applications. This is essential for multi-point applications. A WebRTC server application must be able to support hundreds of users to be economically sensible. Traditional transcoding servers (MCUs) that have been used in videoconferencing are very complex, expensive, introduce unacceptable delay, and have very poor scalability (number of simultaneous users). This is a well-known problem in the video conferencing industry, and one that Vidyo has successfully solved with its patented VidyoRouter architecture. The VidyoRouter performs no transcoding, and can support hundreds of users from a single 1 RU box. Introduced in 2008, together with the first-ever Scalable Video Coding (SVC) endpoint design, it brought video conferencing in line with any other network application. Today the VidyoWorks platform represents the best solution for supporting large-scale WebRTC deployments.
There is no doubt in my mind that WebRTC represents a great leap forward for video and audio communication. In fact, I am sure we will all be surprised by the range and reach of the applications that will be developed. All the elements are getting in place and the road ahead is clear for its deployment and widespread use. Application developers should realize, however, that WebRTC is an endpoint API. Architects must take into consideration all the additional elements that are required to create successful applications that can scale to large numbers of users, and provide the high quality that users expect. A scalable codec and a non-transcoding server are the two most important elements.
The excitement today about WebRTC is centered on the application development community. If we are to transfer it to the user community we must make sure that we deliver the best possible quality and experience to them. In the past, legacy videoconferencing systems failed to meet consumer expectations so users shied away from using it. Today we finally have the technical know-how to deliver superb video and audio quality everywhere. We must make sure that we use it; users will reject any application, or technology, that falls short regardless of how promising the architecture may be.
Alex drives the technical vision and direction for Vidyo and also represents the company on standardization committees and technical advisory boards. He is an award-winning researcher, bringing over 23 years of research experience in video compression and communications to his role at Vidyo. Prior to Vidyo he was an Associate Professor of Electrical Engineering at Columbia University. Alex has more than 100 publications, holds 64 patents (several of which are used in Blu-ray Disc, H.264/AVC, and ATSC digital television systems), and has served as the Editor of the MPEG-4 Systems specification, Co-Editor of the H.264 SVC Conformance specification, and Co-Editor of IETF’s RTP Payload Format for SVC. He is a Member of the Boards of IMTC and of the UCI Forum, and co-chairs the IMTC SVC Activity Group as well as the UCI Forum’s SVC Technical Working Group.