SDK IMA упрощают интеграцию мультимедийной рекламы в ваши веб-сайты и приложения. SDK IMA могут запрашивать рекламу с любого рекламного сервера , совместимого с VAST , и управлять воспроизведением рекламы в ваших приложениях. С SDK IMA DAI приложения отправляют запрос на потоковое видео, включающее рекламу и контент — либо видео по запросу, либо прямой эфир. Затем SDK возвращает объединенный видеопоток, так что вам не нужно управлять переключением между рекламой и контентом внутри вашего приложения.
Выберите интересующее вас решение DAI.
Полный спектр услуг DAI
В этом руководстве показано, как интегрировать SDK IMA DAI в приложение видеоплеера. Если вы хотите посмотреть или проследить за завершенной интеграцией на примере, скачайте простой пример с GitHub.
Обзор IMA DAI
Внедрение SDK IMA DAI включает в себя два основных компонента, как показано в этом руководстве:
-
StreamRequest— либоVODStreamRequest, либоLiveStreamRequest: объект, определяющий запрос потока. Запросы потока могут быть как для видео по запросу, так и для прямых трансляций. Запросы прямых трансляций указывают ключ ресурса, а запросы VOD — идентификатор CMS и идентификатор видео. Оба типа запросов могут дополнительно включать ключ API, необходимый для доступа к указанным потокам, и сетевой код Google Ad Manager для обработки идентификаторов рекламы в SDK IMA, как указано в настройках Google Ad Manager. -
StreamManager: Объект, обрабатывающий потоки динамической вставки рекламы и взаимодействие с бэкэндом DAI. Менеджер потоков также обрабатывает запросы отслеживания и пересылает события потока и рекламы издателю.
Предварительные требования
- Три пустых файла
- dai.html
- dai.css
- dai.js
- На вашем компьютере должен быть установлен Python, или же для тестирования может потребоваться веб-сервер.
Запустите сервер разработки
Поскольку SDK IMA DAI загружает зависимости, используя тот же протокол, что и страница, с которой он загружается, для тестирования вашего приложения вам потребуется веб-сервер. Быстрый способ запустить локальный сервер разработки — использовать встроенный в Python сервер.
В командной строке из каталога, содержащего ваш файл
index.html, выполните следующую команду:python -m http.server 8000В веб-браузере перейдите по адресу
http://localhost:8000/Вы также можете использовать любой другой веб-сервер, например, Apache HTTP Server .
Создайте видеоплеер
Сначала измените файл dai.html , чтобы создать элемент HTML5-видео и div для отображения кликабельного элемента. В следующем примере импортируется SDK IMA DAI. Для получения более подробной информации см. раздел «Импорт SDK IMA DAI» .
Также добавьте необходимые теги для загрузки файлов dai.css и dai.js , а также для импорта видеоплеера hls.js Затем измените файл dai.css , чтобы указать размер и положение элементов страницы. Наконец, в dai.js определите переменные для хранения информации о запросе потока, функцию initPlayer() , которая будет выполняться при загрузке страницы, и настройте кнопку воспроизведения для запроса потока по клику.
Чтобы возобновить воспроизведение во время пауз в рекламе, настройте обработчики событий для событий pause и start видеоэлемента, чтобы отображать и скрывать элементы управления проигрывателем.
Загрузите SDK IMA DAI.
Далее добавьте фреймворк IMA, используя тег <script> в файле dai.html , перед тегом <script> для файла dai.js.
Инициализируйте StreamManager.
Для запроса набора рекламных объявлений создайте объект ima.dai.api.StreamManager , который отвечает за запрос и управление потоками DAI. Конструктор принимает элемент видео и элемент пользовательского интерфейса объявления для обработки кликов по рекламе.
Отправить запрос на трансляцию
Определите функции для запроса потоков. В этом примере представлены функции как для видео по запросу (VOD), так и для прямых трансляций, которые создают экземпляры классов VODStreamRequest и LiveStreamRequest . После создания экземпляра streamRequest вызовите метод streamManager.requestStream() с этим экземпляром запроса потока.
Оба метода запроса потока принимают необязательный ключ API. Если вы используете защищенный поток, вам необходимо создать ключ аутентификации DAI. Для получения более подробной информации см. раздел «Аутентификация запросов видеопотока DAI» . В этом примере ни один из потоков не защищен ключом аутентификации DAI, поэтому apiKey не используется.
Анализ метаданных потока
Также необходимо добавить обработчик для прослушивания событий метаданных, привязанных ко времени, и перенаправлять эти события в класс StreamManager , чтобы IMA мог генерировать рекламные события во время рекламных пауз:
В этом руководстве для воспроизведения потока используется плеер hls.js , но реализация метаданных зависит от типа используемого вами плеера.
Обработка событий потока
Реализуйте обработчики событий для основных событий видео. В этом примере обрабатываются события LOADED , ERROR , AD_BREAK_STARTED и AD_BREAK_ENDED путем вызова функции onStreamEvent() . Эта функция обрабатывает загрузку потока, ошибки потока и отключение элементов управления проигрывателем во время воспроизведения рекламы, что требуется для IMA SDK.
После загрузки потока видеоплеер загружает и воспроизводит указанный URL-адрес, используя функцию loadUrl() .
Вот и всё! Теперь вы запрашиваете и отображаете рекламу с помощью SDK IMA DAI. Чтобы узнать о более продвинутых функциях SDK, ознакомьтесь с другими руководствами или примерами на GitHub .