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

Video: Broadcast in the cloud!

Milan Video Tech’s back with a three takes on putting broadcast into the cloud. So often we see the cloud as ‘for streaming’. That’s not today’s topic; we’re talking ingest and live transmissions in the cloud. Andrea Fassina from videodeveloper.io introduces the three speakers who share their tips for doing cloud well by using KPIs, using the cloud to be efficient, agile & scale and, finally, running your live linear channels through the cloud as part of their transmission path.

First up is Christopher Brähler from Akamai who looks at a how they helped a customer becomes more efficient, be agile and scale. His first example shows how using a cloud workflow in AWS, including many AWS services such as Lambda, the customer was able to reduce human interaction with a piece of content during ingest by 80%. The problem was that every piece of content took two hours to ingest, mainly due to people having to watch for problems. Christopher shows how this process was automated. He highlights some easy wins by front-loading the process with MediaInfo which could easily detect obvious problems like incorrect duration, codec etc. Christopher then shows how the rest of the workflow used AWS components and Lamda to choose to transcode/rewrap files if needed and then pass them on to a whole QC process. The reduction was profound and whilst this could have been achieved with similar MAM-style processing on-premise, being in the cloud allows the next two benefits.

The next example is how the same customer was able to quickly adjust to a new demand on the workflow when they found that some files were arriving and weren’t compatible with their ingest process due to a bug in a certain vendor’s software which was going to take months to fix. Using this same workflow they were able to branch out, using MediaInfo to determine if this vendor’s software was involved. If it was it would be sent down a newly-created path in the workflow that worked around the problem. The benefit of this being in the cloud touches on the third example – scalability. Being in the cloud, it didn’t really matter how much or little this new branch was used. When it wasn’t being used, the cost would be nothing. If it was needed a lot, it would scale up.

The third example is when this customer merged with another large broadcaster, The cloud-based workflow meant that they were able to easily scale up and put a massive library of content through ingest in a matter of two or three months, rather than a year or more than otherwise would be the case on dedicated equipment.

Next up is Luca Moglia from Akamai who’s sharing with his experience on getting great value out of cloud infrastructure. Security should be the basis of any project whether it’s on the internet or not, so it’s no surprise that Luca starts with the mandate to ‘Secure all connections’. Whilst he focuses on the streaming use case, his points can be generalised to programme contribution. He splits up the chain into ‘first mile’ (origin/DC to cloud/CDN), ‘middle mile’ (cloud/CDN to edge) and last mile which is the delivery from the edge to the viewer. Luca looks at options to secure these segments such as ‘AWS Connect’ and other services for Azure & GCP. He looks at using private network interconnections (PNIs) for CDNs and then examines options for the last mile.

His other pieces of advice are to offload as mich ‘origin’ as you can, meaning to reduce the load on your origin server by using an Origin Gateway but also a Multi-CDN strategy. Similarly, he suggests offloading as much logic to the edge as is practical. After all, the viewer’s ping to the edge (RTT) is the lowest practical, so having two-way traffic is best there than deeper into the CDN as the edge is usually in the same ISP.

Another plea is to remember that CMAF is not just there to reduce latency, Luca emphasises all the other benefits which aren’t only important for low-latency use cases such as being able to use the same segments for delivering HLS and DASH streams. Being able to share the same segments allows CDNs to cache better which is a win for everyone. It also reduces storage costs and brings all DRM under CENC, a single mechanism supporting several different DRM methods.

Luca finishes his presentation suggesting looking at the benefits of using HTTP/2 and HTTP/3 to reduce round trips and, in theory, speed up delivery. Similarly, he talks about the TCP algorithm BBR which should improve throughput.

Last to speak is Davide Maggioni from Sky Italia who shows us how they quickly transitioned to a cloud workflow for NOWTV and SKYGO when asked to move to HD, maintain costs and make the transition quickly. They developed a plan to move the metadata enrichement, encryption, encoding and DRM into the cloud. This helped them reduce procurement overhead and allowed them to reduce deployment time.

Key to the project was taking an ‘infrastructure as code’ approach whereby everything is configured by API, run from automated code. This reduces mistakes, increases repeatability and also allowed them to, more easily, deploy popup channels.

Davide takes us through the diagrams and ways in which they are able to deploy permanent and temporary channels showing ‘mezzanine’ encoding on-premise, manipulation done in the cloud, and then a return to on premise ahead of transmission to the CDN.

Watch now!
Speakers

Christopher Brähler Christopher Brähler
Director of Product Management,
SDVI Corporation
Davide Maggioni Davide Maggioni
OTT & Cloud Process and Delivery,
Sky Italia
Luca Moglia Luca Moglia
Media Solutions Engineer,
Akamai
Andrea Fassina Andrea Fassina
Freelance Developer,
https://videodeveloper.io

Video: A 360-degree view on Video Piracy

There will always be piracy, but that’s no reason not to fight against it. And the entertainment industry always has, sometimes effectively, and sometimes farcically (such as the DeCSS debacle at the turn of the century). One of the traditional cat and mouse games, this set of short talks gives a rounded view of the types of protection, types of piracy and methods of detection.

Recorded at the Milan Video Tech meetup, Senior Consultant at VideoDeveloper.io, Andrea Fassina, introduces the first speaker who is Ilker Ürgenc from Akamai with a rounded overview of the threat service for programme producers, broadcasters and streaming providers who starts by looking at piracy rates around the world and its impacts.

When people talk about anti-piracy measures, their mind typically goes straight to DRM. DRM is the most ‘tangible’ aspect of content protection as most people have had to deal with it, or rather the consequences of not being able to watch something both at home and at work. But Ilker’s point is that the protection has to go much further than DRM. It needs to be about protecting against screen recording, against phishing and hacking the production systems or contribution streams. The whole chain needs protections which Ilker details as a protective ecosystem. His solutions, apart from IT best practices are fingerprinting, content watermarking and stream monitoring.

Next up is Matteo Freddi from CHILI who talks about protecting streams whether they be HLS, DASH or other protocols. He starts with outlining the DRMs compatible with the different Microsoft Smoothstreaming, HLS and MPEG DASH in terms of the streaming specifications before bringing us down to earth by looking at what’s actually supported by the different manufacturer devices such as Roku, Apple TV etc. Players are implemented either natively within an OS or through programming interfaces (APIs). APIs allow for a wider ecosystem of players, but they don’t offer some of the tight integrations OSes can provide. Further, Matteo explains how this also affects how easily they can process DRM.

Finally, we have Steve Epstein from Synamedia, who details the techniques which allow providers to protect against misuse of accounts, resharing and restreaming of content. Steve looks at techniques to minimise credential stuffing, watermarking and active monitoring of the streaming service in order to identify misuse of accounts such as multiple simultaneous logins, logins from different parts of the world.

Watch now!
Speakers

Ilker Ürgenc Ilker Ürgenc
Senior Technical Media Solutions Specialist,
Akamai Technologies
Matteo Freddi Matteo Freddi
Head of Technology Operations,
CHILI
Steve Epstein Steve Epstein
Distinguished Engineer – Analytics, Data Science, & Cybersecurity,
Synamedia
Andrea Fassina Moderator:Andrea Fassina
Senior Consultant
videodeveloper.io

Video: All you need to know about video KPIs

KPIs are under the microscope as Milan’s Video Tech meet up fights against the pandemic by having its second event online and focused on measuring, and therefore improving, streaming services.

Looking at ‘Data-Driven Business Decision Making‘, Federico Preli, kicks off the event looking at how to harness user data to improve the user experience. He explains this using Netflix’s House of Cards as an example. Netflix commissioned 2 seasons of House of Cards based not on a pilot, but on data they already have. They knew the British version had been a hit on the platform, they could see that the people who enjoyed that, also watched other films from Kevin Spacey or David Fincher (the director of House of Cards). As such, this large body of data showed that, though success was not guaranteed, there was good cause to expect people to be receptive to this new programme.

Federico goes on to explain how to balance recommendations based upon user data. A balance is necessary, he explains, to avoid a bubble around a viewer where the same things keep on getting recommended and not to exaggerate someone’s interests at the detriment of nuance and not representing the less prominent predilections. He outlines the 5 parts of a balanced recommendations experience: Serendipity, diversity, coverage, fairness & trust. Balancing these equally will provide a rounded experience. Finally, Federico discusses how some platforms may choose to under invest in some of these due to the nature of their platforms. Relevance, for instance, may be less important for an ultra-niche platform where everything has relevance.

Performance Video KPIs at the Edge‘ is the topic of Luca Moglia‘s talk. A media solutions engineer from Akamai, he looks at how to derive more KPI information from logs at the edge. Whilst much data comes from a client-side KPI, data directly reported by the video player itself to the service. Client-side information is vital as only the client knows on which button you clicked, for instance and how long you spent in certain parts of the GUI. But in terms of video playback, there is a lot to be understood by looking at the edge, the part of the CDN which is closest to the client.

One aspect that client-side reporting doesn’t cover is use of the platform by clients which aren’t fully supported meaning they report back less information. Alternatively, for some services, it may be possible to access them with clients which don’t report at all. Depending on how reporting is done, this could be blocked by ad blockers or DNS rules. As such, this is an important gap which can be largely filled by analysis of CDN logs. This allows you to enhance the data analysis done elsewhere and validate it.

Luca gives examples of KPIs that can be measured or inferred from the edge, such as ‘hand-waving latency’ which can be understood from the edge-to-origin latency and time to manifest. He also shows an example graph analysing the number of segments served at the edge within the segment duration time. This helps indicate how many streams weren’t rebuffering. Overall, Luca concludes, analysing data from the edge helps track improvements, gives you better visibility on consumer/global events and allows you to enhance the performance of the platform.

Bitmovin’s Andrea Fassina covers ‘Client KPIs – Five Analytics Metrics That Matter‘ which he summarises at the beginning of his talk ahead of explaining each individually. ‘Impressions & Total Hours Watched’ is first. This metric has really shown its importance as the SARS-CoV-2 pandemic has rolled around the globe. Understanding how much more people are watching is important in understanding how your platform is reacting. After all, if a platform is struggling this could be for many reasons that are correlated with, but not because of, more hours streamed. For instance, in boxing matches, it’s often the payment system which struggles before the streaming does.

Video startup time is next. Andrea explains the statistics of lost viewers as your time-to-play increases. You can look at startup time across each device and see where the low-hanging fruit for improvements and prioritise your work. This metric can be extended to ad playing and DRM load time which need to be brought into the overall equation.

Third is Video Bitrate Heatmap which allows you to see which type of chunks are most used and, similarly, which rungs on your ABR ladder aren’t needed (or could be improved.) The fourth KPI discussed is Error Types and Codes. Analysing codes generated can give you early warning to issues and allow you to understand whether you suffer more problems than the industry average (6.6%) but also proactively talk to connectivity providers to reduce problems. Lastly, Andrea explains how Rebuffering percentage helps understand where there are gaps in your service in terms of devices/apps which are particularly struggling.

Source: Andrea Fassina, Bitmovin

Video Quality Metrics‘ rounds off the session as Fabio Sonnati tackles the tricky problem of how to know what quality of video each viewer is seeing. Given that the publisher has each and every chunk and can view them, many would think this would mean you could see exactly what each stream would look like. But a streaming service can only see what each chunk looks like on their device in their environment. When you view a chunk encoded at 1080i on an underpowered SD device, what does the user actually see and would they have been better receiving a lower resolution, lower bitrate chunk instead?

In order to understand video quality, Fabio briefly explains some objective metrics such as VMAD, SSIM and PSNR. He then discusses the way that Sky Italia have chosen to create their own metric by combining metrics, subjective feedback and model training. The motivation to do this, to tailor your metric to the unique issues that your platform has to contend with. This metric, called SynthEYE, has been expanded to be able to run without a reference – i.e. it doesn’t require the source as well as the encoded version. Fabio shows results of how well SynthEYE Absolute predicts VMAF and MOS scores. He concludes by saying that using an absolute metric is useful because it gives you the ability to analyse chunk-by-chunk and then match that up with resolution and other analytics data to better understand the performance of the platform.

The session concluded with 20 minutes of Q&A

Watch now!
Speakers

Luca Moglia Luca Moglia
Media Solutions Engineer,
Akamai
Andrea Fassina Andrea Fassina
Developer Evangelist,
Bitmovin
Fabio Sonnati Fabio Sonnati
Media Architect and
Encoding & Streaming Specialist
Federico Preli Federico Preli
Senior Solution Architect,
ContentWise
Stefano Morello Moderator: Stefano Morello
Senior Sales Engineer,
ContentWise