Skip to content

CBR для DVB

Модулятору нужна не средняя скорость, а равномерность на уровне TS-пакетов: полоса выделена, и поток обязан занимать её ровно, без провалов и всплесков. То же требование у профессиональных приёмников и у сетей, где транспорт считают по полосе, а не по среднему за минуту.

CBR в Mcaster — свойство выходного мультиплексора, а не отдельная кнопка «включить CBR».

Что делает мультиплексор

  • Целевая скорость выводится из битрейта дорожек — с запасом около 5% на рост и бюджетом на служебные таблицы.
  • Разреженные места заполняются null-пакетами (PID 0x1FFF): полоса занята ровно, даже когда кадры пришли рвано.
  • PCR расставляется от дрейф-свободных часов, поэтому расхождение PCR и DTS не накапливается даже на многочасовом вещании.
  • Учитывается модель буфера декодера (HRD) — переполнения и опустошения отслеживаются, а не выясняются на приёмнике.

Ровность считается по внутренним часам потока (27 МГц), а не по настенному времени: раскладка не зависит от того, как рвано приходят кадры от источника.

Чем платится равномерность

Три требования к мультиплексу — раскладывать пакеты ровно, никогда не залипать и ничего не терять — попарно совместимы, а втроём невыполнимы. Равномерность это утверждение о будущем, а данные — факт о прошлом: чтобы разложить ровно, расписание обязано знать темп заранее, а темп измеряется только по уже пришедшему.

Практически это значит:

  • PID, которому нечего отдать, уступает свой слот, а не останавливает мультиплекс. Объявленная в PMT, но молчащая аудиодорожка не должна вешать видео — и не вешает.
  • Отставший PID догоняет внутри окна, вместо того чтобы быть выброшенным. Классический вещательный мукс в этом месте теряет данные; здесь выбран другой размен.
  • Темп измеряется по упакованному PES, а не выводится из объявленной полосы умножением на коэффициент.

Что из этого следует для оператора: выходной битрейт стоит задавать честно, с запасом под пики, а не «в притык». Заниженная полоса — это не «чуть хуже качество», а систематическое отставание PID.

Задайте выходные дорожки

Откройте стрим, вкладка Транскодер. Начать можно с пресета — например Стандартная лестница 1080/720/360 + AAC — и дальше править ступени.

У ступени в блоке Видео (лестница):

  • Битрейт (kbps) — целевая скорость дорожки. Сумма дорожек плюс служебные таблицы и есть полоса, которую займёт транспортный поток.
  • Длина GOP и Структура GOP — для вещания GOP обычно ровно секунда: точка входа для приёмника и для склейки. Кнопка Унифицировать GOP выравнивает его по всем ступеням.
  • Кодек — при значении Как есть ступень не перекодируется. Если источник уже пришёл в нужном виде, мультиплексору не нужен транскодер, чтобы уложить его ровно.
  • Высота, Rate control и Пресет кодера — остальные свойства ступени.

В блоке Кодирование выбирается, чем считать: CPU или NVIDIA GPU (с выбором карты либо автоматически — наименее загруженная).

Warning

Passthrough-ступень рядом с кодируемыми деградирует лестницу: её GOP и ключевые кадры не выровнены с остальными ступенями. Панель помечает такую ступень отдельно.

Деинтерлейс

Чересстрочный вход — SD MPEG-2, эфирный 1080i — после кодирования в прогрессивный виден как гребёнка. Деинтерлейс живёт в блоке Декодер, потому что это свойство входа, а не ступени: декод один, и разобранная картинка уходит во все выходные дорожки.

Режим Что делает
Автоматически (только чересстрочные кадры) умолчание: фильтр применяется к кадрам, помеченным декодером как чересстрочные; прогрессивный вход проходит насквозь без затрат
Принудительно (все кадры) для источников, которые врут о чересстрочности
Выключен фильтр не строится, кадры идут в кодер как есть

Частота кадров при деинтерлейсе не меняется: один прогрессивный кадр на входной.

Проверка

Что смотреть на выходе:

  • скорость на приёмнике — она не должна плавать; провал означает, что мультиплексу нечего было отдать;
  • джиттер PCR и счётчики непрерывности — см. TR 101 290; ровность потока без корректного PCR модулятору не поможет;
  • служебные таблицы — приёмник должен видеть сервис под ожидаемым номером, см. Выходной MPEG-TS.

Переопределение таблиц у отдельного направления не ломает CBR: направление получает копию общего выхода с переписанными PID и таблицами, а раскладка пакетов и PCR остаются от общего мультиплекса.

Что дальше