OpenAI, LLMs, WebRTC, voice bots and Programmable Video
Learn about WebRTC LLM and its applications. Discover how this technology can improve real-time communication using conversational AI.
Read MoreWebRTC is the best media engine out there. And it has nothing to do with its performance…
I’ve been part of the video conferencing industry throughout the first decade of the 21st century and a bit of the 2nd decade as well. The driving force at the time was resolution and frame rate. There was an arms race among vendors as to who provides higher resolutions and frame rates in their room system. A lot of the ethos at the time was the implementation of proprietary media engines that were built for the task at hand. Optimizing and fine tuning them for media quality was considered a core competency.
Fast forward to 2023, what should be the mindset and ethos today?
🤔👉 This is a kind of a continuation to my article on the WebRTC predictions for 2023
In the context of VoIP and WebRTC, a media engine is a component that takes care of media processing. Simplifying it, a media engine implementation does something like this:
The media engine also deals with improving voice and video - things such as echo cancellation, noise suppression, packet loss concealment, background blurring, etc.
One of the descriptions of WebRTC that I love is that WebRTC is a media engine with a JavaScript API on top.
Google’s implementation of WebRTC is libWebRTC. Originally, it came from its acquisition of GIPS (Global IP Solutions) - a company that licensed their proprietary media engine to VoIP developers. Google took that library, sprinkled the WebRTC API definition on top of it and integrated it with their Chrome browser.
10 years ago, there were other media engines as well. Most large vendors built and maintained their own media engine - especially if their market was video conferencing.
WebRTC, being a standard on both network and interface later, with libWebRTC being an open source implementation of it (that is maintained by Google AND integrated inside the most popular web browser) - became the best media engine out there practically overnight (or at least within 10 years and through a pandemic).
Joining a video call in your browser? Great! If you aren’t using Zoom, then 99.99% chance that what you are using is WebRTC, with the libWebRTC implementation.
Yes.
But what does that even mean?
What does performing better than WebRTC mean exactly?
libWebRTC isn’t the best media engine out there. At least not in that one (or more) parameters you’ve decided to compare it with your own proprietary alternative. But does it even matter?
Building and maintaining your own native and proprietary media engine? Good for you! Lets’ see what advantages you gain by doing that:
Now that we’re happy with building our own native and proprietary media engines, lets see what are our challenges:
We’re in the 3rd year of the WebRTC unbundling trend. This is still early days.
WebAssembly is here. It is powerful. And it is used more and more, with ever increasing usefulness.
WebTransport and WebCodecs are still great experiments - usable mostly for proof of concepts or early implementations. Using these to power a full fledged media engine that doesn’t make use of WebRTC is still a challenge.
Not all browsers support these interfaces, and those that do still have instabilities and a lot of optimization work to pore into them.
Using these is a long term investment that won’t offer a usable solution for 2023.
Going to use your own native and proprietary media engine implementation? Good for you!
But do you need browser support in your application? Are these 5% of the user base or interactions or is it more like 50% or more?
Are you looking to make use of open source media servers and components? If so, then are these available for your proprietary implementation or will it be easier to just use ones that support… 🤔 WebRTC!
Assuming you need browser support for your application and that said browser support isn’t there just as another unused feature to win a customer deal (and then lay forgotten somewhere), then you should just use WebRTC.
Why?
Because at the end of the day, that’s what browsers have available for you.
Learn about WebRTC LLM and its applications. Discover how this technology can improve real-time communication using conversational AI.
Read MoreGet your copy of my ebook on the top 7 video quality metrics and KPIs in WebRTC (below).
Read More