Video: Milan Video Tech on WebAssembly, DRM, Video Monitoring & Error KPIs in IPTV/OTT

Web Assembly, low-latency streaming, DRM and monitoring are the topics of this Milan Video Tech meeting, part of the 24-hour mega meetup. To keep evolving your services, you need to understand the newest technologies and be ready to use them when the time is right. In this video, we look at a basic DRM workflow, experiment with the latest player tech. work out how to distribute your service monitoring to be able to quickly diagnose issues and how to use monitoring to your advantage.

Evolution provides live Casino feeds since 2006 as part of a B2B (business to business) offering. With offices in 20 countries and over 800 tables, there’s a lot to do. They offer browser-based playback which does achieve low latencies using current Websockets and HLS technologies, down to 1.5 seconds, but Behnam Kakavand explains how they’re improving on that with a move to WebAssembly.

WebAssembly allows you to run pre-compiled code on any browser on any platform where ‘pre-compiled is a euphemism for ‘optimised’. The code tuns up to 4 times faster than interpreted javascript and gives you flexibility on which language to use to code in such as C, Rust, Go etc. Bahnam runs through the reasons they chose the WASM player which revolve around high levels of control of the whole playback experience and a reluctance to use Apple’s LL-HLS as its latency gains are too slow as well as their reluctance to use WebRTC which is unattractive because its fixed AVC transport implementation.

Without using WebAssemly, Behnam shows that you get little playback control in the case of native HTML5 elements. With MSE there is a lot more control but it’s not available on iOS. Using Web Assembly they can use any codec, customise the buffers and reduce battery usage. Behnam explains the workflow they use to compile the code into WebAssembly and talks about their future plans such as bringing SIMD operations into WebAssembly, bring down battery use, reduce player bundle size and use web codecs.

 

 

Andrea Fassina gives a great overview of DRM playback. Talking against a whiteboard, he shows how the workflow checks for user authentication to gain access to the copyrighted content. When they choose a video the selection, the request is sent out and the video is fetched from storage. The licence checker is a browser component that safely sends tata to the DRM licence server to check if they are allowed to view the playback. The DRM licence proxy server aggregates service and user information with IDs. If a positive decision is made, licences are sent back which include the decryption key.

Akamai’s Luca Mogali shows how to create video monitoring dashboards with near real-time logs and CMCD KPIs. Luca shows how by adding some extra data into the URL a player uses to access the CDN, this data can be passed back almost immediately to a logging server. Grafana or other tools can then be used to visualise this data which can give essential insight into what’s working and what’s not.

Finishing off the video, Alexy Malikov from Elecard explains how the use a distributed monitoring system to get to the bottom of issues that customers face. The probes which can sit before/after key pieces of equipment are important to use in logical fault finding. Doing all the central monitoring server would be possible, but this wouldn’t account for problems arriving locally at your eiquipment. When you have that in place, Alexy shows a number of case studies that become much easier to diagnose with the probes present than without. His examples of issues that could be fixed/mitigated by distributed monitoring include stuttering during ad breaks, streams becoming unavailable, download speeds problematic, system unable to detect audio on occasion.

Watch now!
Speakers

Behnam Kakavand Behnam Kakavand
Video R&D Engineer
Evolution
Luca Moglia Luca Moglia
Senior Solutions Engineer,
Akamai
Alexey Malikov Alexey Malikov
Business Development Director EMEA,
Elecard
Andrea Fassina Andrea Fassina
Web Technologies Developer
videodeveloper.io