Skip to content

Подготовка DVB-совместимого потока для одного телеканала

Flussonic Media Server подготовит из любого потока на входе SPTS с постоянным битрейтом (CBR) для передачи в DVB-сети.

Flussonic по умолчанию транскодирует поток на центральном процессоре (CPU).

Warning

Чтобы получить поток с постоянным битрейтом (CBR) на выходе транскодера, транскодируйте на центральном процессоре (CPU), а не на графическом (GPU). Иначе из-за ограничений алгоритмов, заложенных в GPU, вы не получите поток с постоянным битрейтом (CBR).

Допустим, на выходе вам нужно получить SD-поток. Ниже рассматриваются способы настройки Flussonic Media Server в веб-интерфейсе и конфигурационном файле.

В веб-интерфейсе

Шаг 1. Настройте транскодирование потока в CBR

1) Откройте настройки потока, нажав на имя потока на странице Streams.

2) Перейдите на вкладку Transcoder и нажмите Enable Transcoder.

3) В разделе Audio укажите битрейт аудиодорожки (Bitrate) — 128k и аудиокодек (Codec) — mp2a.

4) В разделе Video > Track 1 укажите:

  • GOP (GOP size) — 28 для 25 FPS;
  • битрейт видеодорожки (Bitrate) — 2613k, вычисляемый по следующей формуле: 0.95 × (общий битрейт потока − 250);
  • высоту (Height) — 1048 и ширину (Width) — 576 окна воспроизведения для плеера;
  • стратегию изменения размера кадра (Resize) — scale;
  • скорость кодирования (Preset) — fast;
  • размер буфера. В разделе Extended, введите ключ Keybufsize и его значение Value2475000. Размер буфера вычисляется по следующей формуле: 900 × (общий битрейт потока − 250).

5) Примените настройки, нажав Save.

SPTS CBR transcoder settings

Шаг 2. Отправьте поток в мультикаст-группу

1) В настройках потока перейдите на вкладку Output в раздел Push live video to certain URLs и укажите адрес мультикаст-группы следующим образом: udp://239.172.0.1:1234.

2) Перейдите в настройки отправляемого потока, нажав Options. Укажите среднее значение битрейта видеодорожки, включая заголовки и инкапсуляцию (Video bitrate), и общий битрейт потока (TS Bitrate). Среднее значение битрейта видеодорожки вычисляется по следующей формуле: общий битрейт потока − 250.

3) Примените настройки, нажав Save:

SPTS CBR push udp settings

Шаг 3. Убедитесь, что всё работает

Для этого используйте специальную утилиту, например, DVB Inspector (см. Проверка в DVB Inspector) или любую программу, которая проверяет поток на соответствие стандарту ETSI TR 101 290.

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

1) В настройках потока укажите transcoder и настройте его следующим образом:

stream spts-cbr {
  input file://vod/bunny.mp4;
  transcoder gop=28 vb=2613k bufsize=2475000 preset=fast size=1048x576:scale ab=128k acodec=mp2a;
}

, где:

  • gop=28 — размер GOP (Group Of Pictures) для 25 FPS (Frames Per Second);
  • vb=2613k — битрейт видеодорожки, вычисляемый по следующей формуле: 0.95 × (битрейт всего потока − 250);
  • bufsize=2475000 — размер буфера в битах, вычисляемый по следующей формуле: 900 × (битрейт всего потока − 250);
  • preset=fast — скорость кодирования;
  • size=1048x576:scale — размер окна воспроизведения для плеера, где scale — стратегия изменения размера кадра, при которой картинка вписывается в заданный размер без сохранения пропорций;
  • ab=128k — битрейт аудиодорожки;
  • acodec=mp2a — аудиокодек.

2) В настройках потока добавьте push и укажите адрес мультикаст-группы (udp://239.172.0.1:1234), общий битрейт потока (bitrate) и среднее значение битрейта видеодорожки, включая заголовки и инкапсуляцию (vb): push udp://239.172.0.1:1234 bitrate=3000 vb=2750. Среднее значение битрейта видеодорожки вычисляется по следующей формуле: (общий битрейт потока − 250).

3) Убедитесь, что всё работает. Для этого используйте специальную утилиту, например, DVB Inspector (см. Проверка в DVB Inspector) или любую программу, которая проверяет поток на соответствие стандарту ETSI TR 101 290.

Проверка качества выходного SPTS в DVB Inspector

1) Запишите отрезок потока длительностью пару минут с помощью следующей команды в терминале: /opt/flussonic/contrib/multicast_capture.erl udp://239.172.0.1:1234 spts-cbr-output.ts. Закончите запись, использовав сочетание клавиш Ctrl+C.

2) Скачайте получившийся отрезок spts-cbr-output.ts на локальный компьютер.

3) Проверьте записанный отрезок в DVB Inspector.

DVB Inspector SPTS CBR BitRate View

DVB Inspector SPTS CBR BitRate View bad ex

В результате вы получите CBR SPTS, который можно передать в QAM-модулятор и отправить в кабельную сеть, эфир или спутник.

Note

Значение по умолчанию шага замера в DVB Inspector (View > Filter > Steps) сглаживает битрейт отдельных PID при большой длительности отрезка. Это значит, что чем больше длительность отрезка записываемого потока, тем ровнее битрейт отдельных PID. Так, если вы запишете отрезок потока длительностью 10 минут и откроете его в DVB Inspector, то увидите идеальный график с ровными битрейтами отдельных PID. Если на этом же отрезке вы установите шаг замера равным 500, то увидите, что в битрейтах отдельных PID есть небольшие колебания. Такие небольшие колебания около одного Кбит/с не влияют на результат и такой поток всё ещё CBR.