Wowza Live HLS Server-Guided Ad insertion

Wowza Live HLS Server-Guided Ad insertion (SGAI)

Wowza Streaming Engine plugins have the potential to customize and extend WSE for any use case. Thanks to the plugin architecture, it's possible to insert EXT-X-DATERANGE tags for HLS interstitials, either by detecting signaling such as SCTE-35 or through an endpoint defined by the plugin itself.

During the MonteVIDEO Summer Camp 2025, we created a proof of concept on how to use Wowza Streaming Engine alongside the VAST-2-SGAI project. This demonstrated how simple it is to implement SGAI using Wowza and hls.js.

What is SGAI and HLS Interstitials?

Server-Guided Ad Insertion (SGAI) is a method where ad insertion is guided by the server through HLS and DASH manifests. In this process, the packager determines when ads should be inserted by using markers such as Interstitial Markers in HLS or AlternativeMPD Events in DASH. 

When the player detects these markers in the manifest, it then requests the corresponding ad content from the ad server. 

To return multiple Ads in HLS, we can provide an Asset List, which is a JSON containing the URL and duration of each ad. On the other hand, with DASH, we can return a ListMPD, which also informs the player about the ads that should be played at the event specified by the AlternativeMPD event.

VAST-2-SGAI

During the MonteVIDEO SummerCamp 2025 we built a proxy between the Ad server and the player that provides everything needed for the player to play ads using SGAI. 

This service is decoupled and packager agnostic, run with docker and it's a stateless microservice that scales with user views.

How it Works:

"Video streaming advertising has evolved from CSAI and SSAI to a hybrid approach called SGAI, which enables real-time ad decisions at the server level. One of the 2025 Qualabs Summer Camp projects was to bring together VAST and SGAI in a simple and easy to use service. Working with the team at Qualabs we were able to quickly integrate Wowza Streaming Engine live video workflows into this service, providing a quick and easy way to insert ads into a live stream."