Выдача SDI¶
media.push.sdi
Назначение¶
Функция media.push.sdi выдаёт видео и встроенный звук стрима в физический выход SDI-карты. Она настраивается отдельно от приёма SDI. Для выдачи требуется выходной порт карты.
Требования к стриму¶
Для выдачи нужна несжатая видеодорожка v210 или uyvy422. SDI push упаковывает готовые кадры: декодирование и изменение размера выполняет транскодер. Для стрима только с кодированным видео добавьте сырую видеодорожку правилом !set v210 или !set uyvy422. Вход SDI с подходящим форматом можно направить на другой SDI-порт без транскодирования.
Стандарт видеодорожки должен соответствовать режиму выходного порта. Для новой карты отдельно проверьте выдачу видео и звука под рабочей нагрузкой.
Настройка¶
Передайте конфигурацию через API central. Пример стрима с приёмом и выдачей на разные порты:
streams:
- name: tv1
inputs:
- sdi:
device: /dev/v4l/by-path/pci-0000:5e:00.0-video-index0
pixel_format: v210
pushes:
sdi-out:
sdi:
device: /dev/v4l/by-path/pci-0000:5e:00.0-video-index1
queue: 4
audio:
- track: 1
channels: [1, 2]
Пути устройств в примере замените путями входа и выхода своей карты. Поле standard необязательно: без него стандарт определяется по видеодорожке. Если поле задано, несовпадение с дорожкой приводит к ошибке push. Стандарт ntsc на выходе не поддерживается.
pixel_format указывается у входа; на выходе формат определяется видеодорожкой. queue задаёт очередь выходного устройства от 2 до 8 кадров, по умолчанию 4. В списке audio поле track — номер звуковой дорожки стрима, с единицы, а channels — пара SDI-аудиоканалов назначения. Без явной раскладки дорожки занимают пары по порядку, не более восьми пар.
Работа при пропаже источника¶
После открытия линии при временном отсутствии кадров push выдаёт чёрное поле с тишиной. Кадры заполнения учитываются отдельно от кадров стрима. Для первого открытия требуется описание стрима с несжатой видеодорожкой. Занятое устройство и несовпадение стандарта переводят push в состояние Error; причину содержит last_error.
Связанные функции¶
12G-SDI ingest — отдельное расширение приёма; его наличие не подтверждает возможность выдачи 12G на выбранной карте. ASI передаёт MPEG-TS и документируется отдельно; выдача ASI относится к функции media.push.asi.
Транспорт¶
Физический SDI-выход карты; видео и встроенный звук передаются по одной линии.
Поддерживаемые кодеки¶
- v210
- uyvy422
- PCM (16-bit)
- S32P
- FLTP
Видео должно поступать несжатым в формате v210 или uyvy422. Для встроенного звука поддерживаются PCM 16 бит, S32P и FLTP; сжатые дорожки H.264/HEVC/AAC сами по себе в SDI не декодируются — заранее подготовьте нужные сырые дорожки.