Вы можете переопределять параметры трансляции, если хотите, чтобы при запросе плейлиста HLS или DASH проигрыватель или приложение устанавливали нестандартные значения параметров для создания трансляции, использовали не все варианты или не в том порядке, который был задан по умолчанию. Передавать такие параметры из проигрывателя или приложения можно как при добавлении маяков на сервере, так и при использовании IMA SDK или DAI API.
Как переопределить выбор и последовательность вариантов
Последовательность вариантов в плейлисте по умолчанию определяется издателем. Если параметры последовательности не указаны, варианты в возвращенных плейлистах будут выстроены в порядке, который установлен издателем.
Вы можете переопределить список вариантов и другие параметры, заданные при создании трансляции. Это позволит вам указать, какие из доступных вариантов должны содержаться в ответе на запрос главного плейлиста, а также задать их последовательность. Переопределение может пригодиться, если вы хотите варьировать приоритет вариантов исходя из контента, потребляемого пользователями.
Выбранные варианты и их порядок остаются неизменными до конца трансляции. Параметры задаются как часть структуры adTagParameters при использовании IMA SDK, как параметры DAI API или как дополнительные параметры HTTP-метода GET
при добавлении маяков на сервере.
Параметр | Протокол потоковой передачи | Описание | Примеры |
---|---|---|---|
dai-aor |
HLS, DASH | Диапазон значений пропускной способности для возвращаемых вариантов аудиоконтента. Если вы не хотите ограничивать значения пропускной способности сверху, укажите только нижний порог, используя элемент startBandwidth . Чтобы выбрать все варианты с более низкой пропускной способностью, задайте только верхний порог с помощью значения :endBandwidth (со знаком двоеточия в начале). |
dai-aor=60000 |
dai-dlid |
HLS, DASH |
При создании конфигурации сети доставки контента (CDN) для видео по запросу задайте не только конфигурацию по умолчанию, но и дополнительные настройки доставки контента. Это позволит вам использовать несколько таких сетей и с помощью пар "ключ-значение" автоматически выбирать, из какой сети будет поступать контент. После настройки и сохранения конфигураций CDN Менеджер рекламы создаст уникальное название для каждой из них. Это название должно быть добавлено в запрос создания трансляции как значение параметра Если название нужной сети доставки контента не будет указано в запросе, Менеджер рекламы выберет CDN по умолчанию. |
(значение |
dai-excl |
HLS, DASH | Контент, который необходимо исключить из плейлиста. Поддерживает параметры subtitles , codec , audio-lang , subtitle-lang , iframe и resolution . Разрешение, аудио- и видеокодеки, а также языки аудиоконтента и/или субтитров можно исключать по отдельности или с помощью списка значений, разделенного запятыми. Префикс Codec также поддерживается вместе с суффиксом "*", который позволяет исключить все версии с параметром codec и этим префиксом. |
Один кодек: Несколько кодеков Кодек с префиксом Один язык аудиоконтента Один язык субтитров Несколько языков Разрешение |
dai-os |
HLS | Пропускная способность варианта видеоконтента, который должен располагаться в начале главного плейлиста. Выбирается вариант, наиболее близкий по значению к элементу startBandwidth . Из двух равноудаленных значений приоритет имеет минимальное. Если этот параметр указан, а dai-aor – нет, будут исключаться все варианты, содержащие только аудиоконтент. |
dai-os=1700000 |
dai-ot |
HLS |
Сведения о типе последовательности, которые содержат описание типа значений, заданных параметром Если параметр |
dai-ot=bw dai-ot=bw_res |
dai-ov |
HLS |
Разделенные запятыми значения, которые описывают необходимую последовательность вариантов в возвращаемых плейлистах медиаконтента. Этот параметр используется вместе с параметром Если одному значению соответствует несколько вариантов (например, есть два варианта с одинаковой пропускной способностью, но разным разрешением), то они будут использоваться в изначально установленной последовательности. |
|
dai-sr |
HLS, DASH |
Диапазон значений пропускной способности для возвращаемых вариантов видео.Чтобы также выбрать все варианты с более высокой пропускной способностью, укажите только нижний порог с помощью значения Требования в отношении пропускной способности действуют только для видеоконтента.
|
dai-sr=1300000:2500000 |
Другие параметры для переопределения
Параметр | Протокол потоковой передачи | Описание | Примеры |
---|---|---|---|
dai-ah |
HLS, DASH | Указывает, должен ли в трансляции быть период без рекламы.Продолжительность этого периода необходимо указать в настройках трансляции. | Код для активации периода без рекламы:dai-ah=1 |
dai-apto (бета) |
HLS, DASH |
Время ожидания решения по пакету объявлений в видео по запросу и в прямых трансляциях (в миллисекундах). Это значение учитывается в момент создания трансляции при принятии решения в отношении рекламной паузы в середине контента или после него. Значение не учитывается в решениях, принимаемых после создания трансляции. В рекламных паузах, относящихся к завершенным трансляциям, эту функцию можно использовать только с плейлистами типа "Событие" или параметром dai-dpb. Значение может быть любым в диапазоне от 1 до 10 000.
Если указать слишком низкое или слишком высокое значение, это может ухудшить заполняемость или удобство использования. |
dai-apto=4000 |
dai-dpb |
HLS, DASH |
Указывает, включать ли решение для рекламных пауз в завершенных линейных трансляциях, где не используются маяки на сервере (в рамках трансляций, где применяются такие маяки, этот параметр не учитывается). Если параметр включен, решение принимается в середине трансляции. Это может повлиять на задержку при начале трансляции (управлять задержкой можно с помощью параметра Рекламные паузы в завершенных трансляциях можно будет посмотреть, только если пользователь перемотает видео назад. В этом случае количество передач кода может возрасти. |
Код, активирующий принятие решения для рекламных пауз в завершенных трансляциях:dai-dpb=true Код, деактивирующий принятие решения для рекламных пауз в завершенных трансляциях для плейлистов типа "Событие" при использовании HLS: dai-dpb=false |
dai-dvr |
HLS, DASH | Продолжительность (в секундах) интервала DVR, на который пользователь может перемотать рекламу или трансляцию назад без потери качества воспроизведения.
Значение по умолчанию – 100 секунд или другое значение, заданное в настройках трансляции. Для каждой трансляции можно установить новые лимиты: до 100 секунд при использовании маяков на сервере и до 1800 секунд, если вы работаете с SDK или API. Если вы хотите установить более продолжительный интервал DVR, обратитесь к менеджеру аккаунта. Рекомендации по использованиюДействительная продолжительность интервала DVR для плейлиста может немного отличаться от заданной в любую сторону. Это зависит от продолжительности сегментов. В разных вариантах также могут быть небольшие отличия. Максимальная продолжительность интервала DVR не должна превышать значение, заданное для него в настройках события. В противном случае интервал будет автоматически уменьшен. При использовании маяков на сервере возможное значение меньше, чем в случае с SDK или общедоступным API. Мы по возможности стараемся возвращать совместимые манифесты. Однако если значение интервала DVR слишком мало или велико, могут возникнуть проблемы с воспроизведением. Проверьте, корректно ли выполняется показ рекламы при выбранном вами значении интервала DVR, и при необходимости внесите изменения в настройки. Не используйте разные значения продолжительности для различных устройств. Если в одном случае вы укажете 30 секунд, а в других – 31 или 35, это может создать проблемы с трансляцией. В таких случаях рекомендуем использовать сегменты. Например, для одного набора устройств укажите 35 секунд, для другого – 10 минут и т. п. Это позволит обеспечить эффективное распределение ресурсов и предотвратить проблемы с показом. |
dai-dvr=60 |
dai-emsgv |
HLS |
Версия сообщения о событии – это параметр, который относится к созданию трансляции и позволяет стороне, выполняющей вызов, указывать версии поля emsg для контента в формате Common Media Application Format (CMAF). Стандарт HLS требует использования полей emsg версии 1. Этот параметр полезен при работе с некоторыми платформами (например, Roku), которые не поддерживают стандартную версию 1 и требуют версию 0.
|
dai-emsgv=1 |
dai-pre (бета) |
HLS, DASH | Позволяет указать, следует ли в рамках трансляции, для которой включена видеореклама в начале ролика, показывать такую рекламу вместо видеорекламы в середине ролика, если эти типы рекламы пересекаются. По умолчанию в подобных случаях показывается видеореклама в середине ролика. | dai-pre=1 |
Примеры переопределения параметров
Запрос
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw&dai-ov=2025837,1406061
Ответ
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2025837,RESOLUTION=960x540,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
Запрос
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw&dai-ov=audio,1406061
Ответ
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000,RESOLUTION=480x270,CODECS="mp4a.40.2"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/audio.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
Запрос
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw_res&dai-ov=1400000:640x360,audio
Ответ
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000,RESOLUTION=480x270,CODECS="mp4a.40.2"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/audio.m3u8
Запрос
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-sr=1300000:2500000&dai-aor=60000
Ответ
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2025837,RESOLUTION=960x540,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000,RESOLUTION=480x270,CODECS="mp4a.40.2"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/audio.m3u8
Запрос
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-os=1700000
Ответ
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2025837,RESOLUTION=960x540,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
Исходный манифест с субтитрами
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="tt-en.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="de",NAME="Deutsch",AUTOSELECT=YES,URI="tt-de.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="stereo",LANGUAGE="en",NAME="English",DEFAULT=YES,AUTOSELECT=YES,URI="audio.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=889549,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/889549.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
Запрос
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-excl=subtitles
Ответ
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="stereo",LANGUAGE="en",NAME="English",DEFAULT=YES,AUTOSELECT=YES,URI="audio.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=889549,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/889549.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
Исходный манифест с файлом AC3 или EAC3
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=6107776,RESOLUTION=1920x1080,CODECS="avc1.640028,ec-3",AUDIO="AUDIO-EAC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6107776.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2212301,RESOLUTION=960x540,CODECS="avc1.640028,ec-3",AUDIO="AUDIO-EAC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2212301.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=6295776,RESOLUTION=1920x1080,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6295776.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2400301,RESOLUTION=960x540,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2400301.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=6045381,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6045381.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2149906,RESOLUTION=960x540,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2149906.m3u8
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-eac3.m3u8",GROUP-ID="AUDIO-EAC3",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-ac3.m3u8",GROUP-ID="AUDIO-AC3",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-aac.m3u8",GROUP-ID="AUDIO-AAC",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
Исключен один кодек
Запрос
http://truman.com/ssai/event/<event_code>/master.m3u8?dai-excl=codec:ec-3
Ответ
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=6295776,RESOLUTION=1920x1080,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6295776.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2400301,RESOLUTION=960x540,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2400301.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=6045381,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6045381.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2149906,RESOLUTION=960x540,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2149906.m3u8
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-ac3.m3u8",GROUP-ID="AUDIO-AC3",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-aac.m3u8",GROUP-ID="AUDIO-AAC",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
Исключено несколько кодеков
Запрос
http://truman.com/ssai/event/<event_code>/master.m3u8?dai-excl=codec:ec-3,codec:ac-3
Ответ
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=6045381,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6045381.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2149906,RESOLUTION=960x540,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2149906.m3u8
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-aac.m3u8",GROUP-ID="AUDIO-AAC",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES