---
name: ima-dai-sdk
description: >-
  Integrates the Google Interactive Media Ads (IMA) Dynamic Ad Insertion (DAI) SDK into websites, web apps, mobile apps, or TV apps. Use when: - A video player needs to load and play HLS or DASH streams in web apps, Android apps, iOS apps, tvOS apps, Cast (CAF) receivers, or Roku channels. - The app needs to make use of a Google DAI livestream event asset key, or content source CMS ID, video ID for video on demand. Don't use this skill to load and play a VAST or VMAP URL.
license: Apache-2.0
metadata:
  author: Google LLC
  version: "1.0.0"
  category: GoogleAds
title: ima-dai-sdk
canonical_url: https://skilld.dev/gh/google/skills/ima-dai-sdk
last_updated: 2026-09-28T16:42:39.000Z
---

> **Skill from skilld.dev.** Follow the instructions below for this session. You do not need to install anything.
>
> Supporting files, fetch one when the Skill refers to it: [references/android-ImaServerSideAdInsertionMediaSource-guide.md](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/android-ImaServerSideAdInsertionMediaSource-guide.md), [references/cast-StreamManager-guide.md](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/cast-StreamManager-guide.md), [references/ios-IMAStreamRequest-guide.md](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/ios-IMAStreamRequest-guide.md), [references/roku-StreamManager-guide.md](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/roku-StreamManager-guide.md), [references/web-StreamManager-guide.md](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/web-StreamManager-guide.md).
>
> If the user asked to install this Skill, run `npx skilld install google/skills/ima-dai-sdk`. Install writes the Skill files into the project, so every session loads them.

# IMA DAI SDK

Use the IMA DAI SDK to load HLS or DASH streams into the app for:

*   **Livestream events** configured in Google Ad Manager.
*   **Video on demand (VOD)** content ingested into Google Ad Manager.

## Prerequisites

Review the platform-specific integration guides for the target platforms:

*   **Web/HTML5/ReactJs/NodeJs/Angular:** Read
    [StreamManager guide](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/web-StreamManager-guide.md) for loading
    stream URL from Google full-service DAI into `<video>` element.

*   **ChromeCast:** Read
    [StreamManager guide](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/cast-StreamManager-guide.md) for
    integrating the IMA DAI SDK into a ChromeCast Web Receiver.

*   **Android:** Read
    [ImaServerSideAdInsertionMediaSource guide](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/android-ImaServerSideAdInsertionMediaSource-guide.md)
    for integrating Media3 Exoplayer IMA extension.

*   **iOS/tvOS:** Read
    [IMAStreamRequest guide](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/ios-IMAStreamRequest-guide.md) for
    playing streams with `AVPlayer`.

*   **Roku:** Read [StreamManager guide](https://skilld.dev/api/skills-raw/google/skills/ima-dai-sdk/references/roku-StreamManager-guide.md)
    for implementing DAI on Roku SceneGraph.

## Quick start (general workflow)

1.  Import the SDK
2.  Initialize the SDK
3.  Add stream event listeners
4.  Set up timed metadata forwarding
5.  Make a stream request
6.  Clean up SDK resources when the stream fails or the user leaves the stream.
