Skip to content

Warning

Ad Injector больше не поддерживается командой разработки ядра Flussonic. Однако, Вы всё ещё можете воспользоваться им, но только в составе пакета flussonic-deprecated.

Врезка рекламы (Ad Injector)

Ad Injector — система врезки рекламы в видеопотоки

Note

Для работы с Ad Injector установите пакет flussonic-deprecated с помощью команды:
apt install flussonic-deprecated.

Ad Injector — это инструмент Flussonic для вставки рекламных роликов в видеопотоки.

Как это работает?

Вы настраиваете временные отрезки (временные слоты) для вставки рекламных роликов в трансляцию видеопотока так, что в определённый момент времени основная трансляция прерывается на "рекламную паузу" и зрителю показывается выбранный Вами ролик. По окончании этого временного отрезка реклама заканчивается и возобновляется основная трансляция. Временные слоты и рекламные ролики определяются в рамках расписания. Количество временных слотов и видео для врезки рекламы в расписании не ограничено.

Кроме того, Вы можете посмотреть количество проигрываний и уникальных просмотров каждого рекламного видеоролика в расписании.

Количество проигрываний — численное значение, указывающее на количество раз, которое данный рекламный видеоролик был проигран во время трансляции.

Количество уникальных просмотров — численное значение, указывающее на количество просмотров данного рекламного видеоролика зрителями.

Временной (рекламный) слот — временной отрезок потока, в течение которого проигрывается рекламный ролик.

Вы можете добавить расписание с помощью API или через Flussonic UI.

Настройка Ad Injector через UI

Для настройки рекламных вставок с помощью Ad Injector выполните следующие шаги:

Шаг 1. Добавьте следующую строку в секцию Plugins конфигурационного файла (/etc/flussonic/flussonic.conf):

plugin ad_injector;

и перезапустите Flussonic:

service flussonic restart

Шаг 2. Загрузите видеофайлы с рекламными роликами на сервер в папку для VOD-файлов. Более подробно про VOD вы можете прочитать по ссылке.

Шаг 3. Откройте веб-интерфейс Flussonic UI. Перейдите на вкладку Config -> Ad Injector, где располагается страница настройки Ad Injector:

Настройки Ad Injector

Шаг 4. Создайте рекламное расписание.

Для этого в секции Ad Schedules нажмите кнопку Add Schedule и введите название Вашего расписания в текстовое поле Schedule name. Затем нажмите кнопку Add Schedule, чтобы сохранить его. В секции Ad Schedules появится список рекламных расписаний в виде Schedule: <название_расписания>:

Список рекламных расписаний

В примере выше мы создали три расписания: example_schedule, another_schedule и new_schedule. Вы можете удалить созданное раннее расписание, нажав на кнопку Remove.

Шаг 5. Настройте рекламные слоты.

Для этого кликните на созданное Вами расписание Schedule: <название_расписания>, после чего нажмите кнопку Add slot в секции Time slots, чтобы задать рекламный слот:

Временные слоты

Задайте время начала проигрывания в поле From по стандарту UTC (HH:MM:SS) и продолжительность в секундах в поле Duration для каждого слота:

Настройка рекламных слотов

В примере выше настроено два слота: первый начинает проигрывание в 12 часов дня (полдень) и длится 60 секунд, а второй — в 12 часов 15 минут и длится 10 секунд. Чтобы удалить слот, нажмите на иконку мусорной корзины. Для добавления нового слота нажмите кнопку Add slot.

Шаг 6. Выберите видеофайлы для ваших рекламных слотов.

Для того, чтобы добавить видеофайл к слоту, перейдите в секцию Files и выберите папку, в которую вы загрузили видеофайлы на Шаге 2. В списке выделите галочкой все видеофайлы, которые вы хотите проигрывать в рамках Вашего рекламного расписания. Выбранные Вами файлы отобразятся в поле Filename секции Schedule files:

Video files for time slots

Вы можете удалить видеофайл из расписания, кликнув на кнопку Remove справа от названия файла либо убрав галочку слева от названия файла в списке.

Шаг 7. Настройте приоритет показа добавленных видеофайлов.

Вес
Для этого введите в поле Weight справа от названия файла в секции Schedule files его "вес" (целое число). В первую очередь проигрываются видеофайлы с большим "весом". Если у файлов одинаковый "вес", то файлы проигрываются по порядку. После каждого показа значение "веса" файла снижается на 1. Как только этот показатель для каждого файла достигает 0, файлам присваиваются их изначальные "веса" согласно Вашим настройкам.

Приоритет

Длительность
В случае, когда значение длительности рекламного видеофайла больше длительности слота, система не проигрывает этот видеофайл и переходит к следующему по «весу» видеоролик. Так происходит до тех пор, пока система не найдёт первый подходящий по длительности рекламный ролик для включения в трансляцию.

В случае, когда значение длительности рекламного видеофайла меньше длительности слота, система проигрывает текущий видеоролик и начинает следующий. Если оставшаяся длительность слота не позволяет показать следующий видеофайл целиком, то видео прекращается раньше времени, возобновляя трансляцию основного видеопотока.

Шаг 8. Сохраните ваши настройки, кликнув на кнопку Save.

Warning

Любые существующие настройки Ad Injector будут перезаписаны.

Шаг 9. Создайте поток с рекламной вставкой.

Создать поток можно как через файл конфигурации /etc/flussonic/flussonic.conf, так и через Flussonic UI.
У такого потока источник будет выглядеть следующим образом:

ad_injector://STREAM_NAME/SCHEDULE_NAME;

Давайте создадим поток channel1_adv с рекламными вставками на базе расписания example_schedule и потока channel1:

stream channel1 {
    input udp://239.0.0.1:1234;
}
stream channel1_adv {
    input ad_injector://channel1/example_schedule;
}

Ссылки на видеопоток с рекламой будут иметь следующий вид:

  • RTMP: rtmp://SERVER-IP/static/channel1_adv

  • HLS: http://SERVER-IP/channel1_adv/index.m3u8

Настройка Ad Injector с помощью API

Вы также можете создать расписание через API с помощью save_ad_schedules:

curl -u 'USERNAME:PASSWORD' 'http://FLUSSONIC-IP/flussonic/api/save_ad_schedules' -H 'Content-Type: text/plain;charset=UTF-8' --data-raw '{"schedules":[{"name":"example_schedule","files":[],"slots":[{"from":"12:00:00","duration":15}]}]}'

Параметры:

  • USERNAME:PASSWORD — имя пользователя и пароль для доступа к серверу Flussonic.

  • FLUSSONIC-IP — URL Вашего сервера Flussonic.

  • schedules — содержит список расписаний.

  • name — название расписания.

  • files — список рекламных видеофайлов для проигрывания.

  • slots — список временных слотов, где from — это время начала рекламы, а duration — продолжительность временного слота.

В примере выше мы создали расписание example_schedule с началом в 12 часов дня (полдень) и продолжительностью 15 секунд.

Статистика

Ad Injector также показывает статистику проигрываний и уникальных просмотров Вашей рекламы. Она находится в секции Adverted streams страницы настроек Ad Injector. Если расписание рекламы прикреплено к видеопотоку и имеет хотя бы один показ, то оно будет отображено в этой секции под своим названием.

Для каждого из рекламных видеофайлов отображается количество проигрываний (views) и количество уникальных просмотров (shows).

Статистика

Статистика хранится 24 часа.

Теперь Вы знаете, как настроить Ad Injector.