Full service Dynamic Ad Insertion (DAI) is Google's end-to-end implementation of server-side ad insertion (SSAI). It allows publishers to provide a content stream in either HLS or MPEG DASH format, and Google's DAI servers will select and insert appropriate advertisements into the stream, before presenting it to the user.
  1. The web page or app loads the IMA DAI SDK through:
    • an embedded script tag for HTML5
    • a native app for Android, Google Cast, iOS, tvOS, or Roku
  2. The SDK requests either a VOD stream or live stream from Google Ad Manager 360.
  3. Ad Manager 360 responds with the video stream that includes inserted ad breaks.
  4. The SDK parses the response, determines the correct media type based on environment, and delivers the video stream (and companion ads if needed) to the web page or app.
  5. The video player negotiates the playback details with the SDK and plays the content.
  6. The video player listens for instream metadata and passes it to the SDK for processing.
  7. The SDK fires impression pings and tracking events as needed.

For detailed instructions on how to implement a client video player using the IMA DAI SDK, check out our SDK guides:

  1. The client's player app requests either a VOD stream or live stream from Google Ad Manager 360.
  2. Ad Manager 360 responds with the video stream that includes inserted ad breaks.
  3. The client's player app begins playback of the stream, and either requests ad metadata once (for VOD streams) OR begins regularly polling for ad metadata (for live streams).
  4. The client's player app listens for instream metadata, parses it, and compares it to the values in the ad metadata to identify ad events.
  5. The client's video player app fires ad impression pings and tracking events as needed.

For detailed instructions on how to implement a client video player, using the DAI REST API, check out our API guides.: