Http Live Streaming, далее HLS, – протокол доставки видео (включая потоковое), используемый в Peers.TV.
Данный документ описывает расширения данного протокола, полностью совместимые со стандартом.
Содержит информацию для доставки HLS с помощью технологии доставки ByteFog. Описывает сегмент, следующий за тэгом.
Формат:
#BYTEFOG-INF:<attribute-list>
Атрибуты:
size
– число, размер сегмента в байтах, обязательный.id
– строка в кавычках, идентификатор сегмента в потоке в сети ByteFog, необязательный. При отсутствии атрибута идентификатором сегмента является полный URI сегмента.Пример плейлиста:
#EXTM3U
#EXT-X-TARGETDURATION:11
#EXT-X-MEDIA-SEQUENCE:261958
#BYTEFOG-INF:size=123456,id="261958"
#EXTINF:8,
segment-0-261958.ts
#EXT-X-PROGRAM-DATE-TIME:2018-05-07T10:36:46.423652
#BYTEFOG-INF:size=154320,id="261959"
#EXTINF:10,
segment-0-261959.ts
#EXT-X-PROGRAM-DATE-TIME:2018-05-07T10:36:56.451167
#BYTEFOG-INF:size=138888,id="261960"
#EXTINF:9,
segment-0-261960.ts
#EXT-X-PROGRAM-DATE-TIME:2018-05-07T10:37:05.481131
#BYTEFOG-INF:size=169752,id="261961"
#EXTINF:11,
segment-0-261961.ts
Содержит информацию о времени выхода сегмента в телевизионном эфире. Описывает информацию о сегменте, следующим за тегом.
Формат:
#EXT-X-MEDIA-FTS:<n>
где n
– целое число, время в формате количества миллисекунд, прошедших с 1 января 1970 года в часовом поясе UTC.
Данный тэг должен указываться у первого сегмента, а также для каждого сегмента, имеющим тэг EXT-X-DISCONTINUITY
.
Клиент может интерполировать значение времени для сегмента без тэга EXT-X-DISCONTINUITY
, следующего за сегментом с известным EXT-X-MEDIA-FTS
. Для этого нужно прибавить к известному значению EXT-X-MEDIA-FTS
длительность этого сегмента, умноженную на 1000.
В потоке может содержаться информация, привязанная к времени трансляции. Это может быть реклама, интерактивное взаимодействие и прочее. Для реализации этих возможностей, используются специальные классы тэга EXT-X-DATERANGE
.
Для отображения кнопки перехода на сайт рекламодателя в момент трансляции рекламы, используется класс TV-PEERS-BUTTON
. Дополнительные атрибуты:
X-TV-PEERS-BUTTON-TITLE
– закавыченная строка, содержащая надпись на кнопке.X-TV-PEERS-BUTTON-URI
– закавыченная строка, содержащая URI для открытия штатными средствами системы при нажатии на кнопку.X-TV-PEERS-BUTTON-PRICE
– целое число, эффективная стоимость отображения кнопки. Необязательный параметр. Отсутствие атрибута X-TV-PEERS-BUTTON-PRICE
должно интерпретироваться клиентом как нулевое значение.При выборе клиентом что показывать: рекламу поверх контента или кнопку рекламодателя, клиент должен сравнить цену отображения кнопки (из атрибута X-TV-PEERS-BUTTON-PRICE
) и цену рекламного блока (из параметра price
рекламной сети в Money Miner) и выбрать рекламу с бОльшей стоимостью.