If you are loading a webpage, a delay of 3 to 5 seconds for static content may be acceptable. Further delays for dynamic content from 10 seconds up to 30 seconds may be seen. Sure, the user may get a bit impatient, but it is not a game changer. In live video, however, relay time can cause latencies that can make or break the user experience, and literally tank an application.
The Complicator: HTTP Live Streaming
WebRTC provides ultra low latency, which is great for video conferencing. However, it does not scale out to a large number of users. HTTP Live Streaming (or HLS) is a protocol commonly used to provide video to large audiences. HLS works well for both Video on Demand (VOD) and Live video.
To provide HLS from a WebRTC video conference, WebRTC video and audio must be mixed together and then transcoded into HLS format. Alongside the transcoding process, closed captioning may be included as part of the HLS data. This may often be done in parallel to the transcoding. As features are added within and alongside the transcoding process, inefficiencies are introduced, and can really add up and cause longer transcoding delays.
A natural and almost inevitable addition to applications providing WebRTC HLS broadcasting are interactions between viewers and the presenters. This is where lowering the delay of the WebRTC → HLS transcoding becomes really important. These interactive features may be difficult to provide a good UX if the delay is too large.
The Solution Team!
A client of ours was experiencing a processing delay in their webcasting module. Transcoding time between the studio recording and live broadcast was sometimes up to a full minute! They had been working hard for some time to reduce it, with no success. Our team stepped in and through a lot of little changes in many places, we deployed the final piece that solved the puzzle. Our test broadcast had a delay of 6 seconds!
The shortening of the transcoding time was essential for the viability of their upgraded webcast platform. They were launching new features such as self-serve webcasts, automated closed captions and editing, polling, audience Q&A, and a streamlined presenter interface. Online gaming and live event streaming are other use cases where even milliseconds of latency can make a huge difference in the user experience.
Is your live video application experiencing latency issues? Our expert team can help! Contact us today.