Документация Flussonic Media Server

Содержание

Добавление EPG в MPTS

Передача EPG в выходной MPTS

Flussonic может формировать MPTS с встроенным в него электронным расписанием передач. Больше нет необходимости в дополнительном генераторе EPG и ремультиплексоре, чтобы добавлять расписание к программам.

Расписание Flussonic забирает из файлов в формате XMLTV и конвертирует в таблицы EIT служебной информации транспортного потока. В транспортный поток передаётся EIT как для текущего транспондера (Actual) так и для других (Other). EPG упаковывается в нужный битрейт, и в UDP мультикаст уходит поток с готовым расписанием.

Описание формата файла можно посмотреть на xmltv.org, а программа в этом формате доступна на teleguide.info (http://www.teleguide.info/download/new3/xmltv.xml.gz).

Как настроить импорт EPG в транспондер:

  1. В настройки транспондера нужно добавить опции EIT для импорта EPG из XMLTV файлов.

  2. При обновлении данных в XMLTV файле необходимо перезагрузить файл в транспондер API командой.

  3. При обновлении данных в XMLTV файле может потребоваться обновить номер версии, если он хранится в отдельном файле.

Настройка транспондера для передачи EPG

transponer tp1 {
  program 100 {title "program1"; eit_title "example_title"; };

other @tp2;

table eit { xmltv_url xmltv_dir1; interval pf actual=1 other=2; interval schedule other=20; } }

Здесь:

  • eit_title - имя программы в XMLTV-файле, если оно отличается от title.

  • xmltv_url - путь к каталогу c XML файлами. Может быть просто именем файла, например, xmltv_url /path/to/xmltv.xml.

  • interval pf|schedule actual=T1 other=T2 - периодичность отправки таблиц. Расписание передаётся в двух таблицах: текущая/следующая передача (pf) в одной таблице и расписание на несколько дней (schedule) — в другой.

    • pf — периодичность отправки EIT для present/following (текущая/следующая передача).
    • schedule — периодичность отправки для schedule (расписание на несколько дней).
    • actual — означает периодичность для программ, передаваемых данным транспондером (в примере это tp1), т.е. программа передаётся в этом же потоке, что и расписание для неё.
    • other - периодичность для программ, передаваемых другим транспондером в сети, указанным в опции other (в примере это tp2).

    Если установить interval в 0, таблица передаваться не будет.

    По умолчанию интервал отправки для actual (present/following) — 2c, other (present/following) — 4c, actual (schedule) и other (schedule) — 60c.

Перезагрузка расписания в транспондер

При обновлении данных расписания в файле их необходимо передать в транспондер.

Для того, чтобы Flussonic загрузил обновлённые XMLTV данные из каталога xmltv_url, нужно выполнить HTTP API вызов:

/flussonic/api/transponder/reload_xmltv/TRANSPONDER_NAME

Для нашего примера:

/flussonic/api/transponder/reload_xmltv/tp1

Версия EIT таблицы

При обновлении расписания у EIT меняется версия — число от 0 до 63.

Если версия не указана внутри XMLTV файла, то её можно указать самостоятельно в файле version.txt. Файл version.txt должен лежать в каталоге, который вы указали в опции xmltv_url.

$ cat xmltv_dir1/version.txt
55

Замечания

Файл XMLTV с сайта teleguide.info (http://www.teleguide.info/download/new3/xmltv.xml.gz) может содержать перекрывающиеся по времени передачи. Если такое встречается, то Flussonic более раннюю передачу добавит в EPG, а более позднюю исключит.