Skip to content

Добавление 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. Если номер версии EIT хранится в отдельном файле, то при каждом обновлении данных в XMLTV файле может потребоваться обновить номер версии в файле.

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

transponder tp1 {

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

  other @tp2;

  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=<INTERVAL 1> other=<INTERVAL 2> - периодичность отправки таблиц. Расписание передаётся в двух таблицах: текущая/следующая передача (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.

    Замечание. Чтобы передавать большой объем данных EPG, можно увеличить interval и/или уменьшить количество программ.

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

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

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

/flussonic/api/transponder/reload_xmltv/TRANSPONDER_NAME

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

/flussonic/api/transponder/reload_xmltv/tp1

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

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

Замечания

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