Skip to content

Чтение телетекста из VBI

Flussonic позволяет читать EBU Телетекст и субтитры (EBU Teletext subtitle data) из VBI (Vertical Blanking Interval) потоков, полученных с SDI-платы, и передавать их в видео, которое вы отправляете в MPTS или SPTS.

VBI — это перерыв в последовательности строк, который используется в аналоговом телевидении. Во время VBI информация об изображениях не передается. Это время используется для возвращения в верхнюю часть экрана луча кинескопа в телевизорах с электронно-лучевыми трубками. Область VBI не видна, но она содержит информацию, необходимую для синхронизации изображений. Она также может содержать такую информацию, как телетекст или скрытые субтитры.

При получении видеопотока с SDI-платы Flussonic:

  1. Декодирует полученные данные.
  2. Считывает из VBI информацию о телетексте.
  3. Cжимает данные для последующей передачи по Интернету.
  4. Упаковывает поток с телетекстом в MPEG-TS.

Включение чтения телетекста

Flussonic позволяет описать информацию о телетексте в таблице PMT (Program Map Table) итогового MPEG-TS потока, двумя способами:

Если вы используете карты захвата Stream Labs для приёма телетекста, то укажите vbi_device=/dev/vbiN. Из устройства /dev/vbiN Flussonic будет получать данные телетекста, например vbi_device=/dev/vbi0.

В Flussonic UI

  1. На вкладке Media > Streams откройте настройки потока, нажав на имя потока.
  2. На вкладке Input откройте настройки захвата, нажав Options справа от URL источника.
  3. Найдите раздел Teletext descriptors и укажите параметры телетекста: номер страницы телетекста (page), язык телетекста (language), тип страницы телетекста (page type) и, если необходимо, дополнительные параметры (extra source params).
  4. Чтобы сохранить настройки, нажмите Save.

Teletext descriptors UI

В конфигурационном файле

  1. Откройте конфигурационный файл flussonic.conf.
  2. Укажите в настройках выбранного потока опцию ttxt_descriptors с параметрами телетекста следующим образом:

ttxt_descriptors=page:lang:type[,page:lang:type]...

Настройка ttxt_descriptors определяет, что будет прописано в опциях телетекст-трека. Эти данные передаются в таблице PMT потока MPEG-TS. По умолчанию используется значение 0x100:rus:initial.

Пример: ttxt_descriptors=0x100:rus:initial,0x888:rus:subtitle

Flussonic самостоятельно определяет те страницы телетекста, данные с которых должны быть отмечены в PMT как субтитры.

Параметры телетекста

В настройке ttxt_descriptors укажите следующие параметры:

  • page — номер страницы телетекста. Получите информацию о страницах у поставщика потока. Укажите значение page в следующем формате: 0x[teletext_magazine_number][teletext_page_number], где teletext_magazine_number — номер журнала телетекста от нуля (0) до семи (7), а teletext_page_number — номер страницы телетекста в шестнадцатеричной системе счисления от 00 до FF. Например, 0x288 указывает на страницу 88 второго (2) журнала.
  • lang — язык телетекста. Указывается в соответствии со стандартом ISO 639-2.
  • type — тип страницы телетекста, определённый в соответствии со спецификацией Specification for Service Information (SI) in DVB systems, 6.2.32 Teletext descriptor в EN 300 468 Digital Video Broadcasting (DVB). В таблице PMT поддерживаются следующие типы страниц телетекста:

    • initial — начальная страница телетекста,
    • subtitle — страница с субтитрами,
    • impaired — страница с субтитрами для людей с нарушениями слуха.

Note

Flussonic не поддерживает страницы additional и program_schedule. Если они вам нужны, сообщите нам на support@flussonic.com.

Примеры конфигураций для чтения телетекста из разных источников

Ниже указаны примеры конфигураций Flussonic Media Server для чтения телетекста из разных источников:

  • Из потока с карты Stream Labs:
stream example_stream {
    input v4l2:// audio_device=plughw:1,0 ttxt_descriptors=0x100:rus:initial,0x888:rus:subtitle vbi_debug=true vbi_device=/dev/vbi0 video_device=/dev/video0;
}
  • Из потока с карты Decklink:
stream example_stream {
    input decklink://0 pixel=10 ttxt_descriptors=0x100:rus:initial,0x888:rus:subtitle;
}
  • Из потока с карты Decklink с NVENC-кодированием:
stream example-stream {
  input decklink://2 pixel=10 ttxt_descriptors=0x100:rus:initial,0x888:rus:subtitle;
  transcoder deviceid=0 external=false hw=nvenc vb=5000k vcodec=h264 open_gop=false preset=veryfast size=3840x2160:fit:#000000 ab=128k split_channels=false;
}

Flussonic по умолчанию считывает телетекст из потока MPEG-TS. Вы можете переписать значение дескриптора телетекста в настройках потока, если это необходимо. Flussonic затем отправляет эти данные в выходном потоке MPEG-TS.

Чтобы переписать значение дескриптора телетекста в настройках потока, выполните следующие шаги:

  1. Настройте поток с дорожкой телетекста.
  2. Укажите новое значение для параметра ttxt_descriptors следующим образом:
stream teletext_stream {
  input udp://MULTICAST-IP:PORT ttxt_descriptors=0x888:rus:impaired;
}