Skip to content

SDI

media.ingest.sdi

Описание

Sapsan принимает несжатое видео и встроенный звук с SDI-карт. Поддерживаются следующие семейства:

  • DekTec

  • DeckLink

  • AJA

  • Streamlabs

  • Softlab

  • Magewell

  • Acasis

12G-SDI — отдельное расширение приёма. Выдача SDI и приём ASI описаны отдельно.

Настройка

Настройка выполняется через API central. Фрагмент конфигурации стрима:

streams:
- name: source1
  inputs:
  - sdi:
      device: /dev/v4l/by-path/pci-0000:5e:00.0-video-index0
      pixel_format: v210

Параметры

Поле Назначение
device Путь устройства захвата V4L2; обязателен
standard Необязательный стандарт, например hd1080i50 или uhd2160p50. По умолчанию определяется по сигналу; задайте явно, если драйвер не определяет его до начала захвата
pixel_format 8 бит, по умолчанию; v210 — 10 бит
audio Список звуковых дорожек; по умолчанию — стерео из каналов 1–2
ad_marks Принимать метки SCTE-104 из VANC; по умолчанию включено
timecode Использовать таймкод ATC; по умолчанию включено
peer_timeout_ms Таймаут ожидания кадров, по умолчанию 30 000 мс

Варианты транспорта

Для захвата нужен драйвер карты с интерфейсом V4L2 и доступ процесса Sapsan к устройству. Используйте устойчивый путь /dev/v4l/by-path/….

Поддерживаемые кодеки

  • UYVY 4:2:2 (8-bit)
  • v210 4:2:2 (10-bit)
  • PCM
  • AC-3 (SMPTE ST 337)
  • E-AC-3 (SMPTE ST 337)

UYVY и v210 — форматы несжатых пикселей, а PCM — несжатый звук; это не видеокодеки H.264/HEVC. Для сжатого выхода настройте транскодирование. AC-3/E-AC-3 извлекаются из звуковой пары только при sample_type: smpte337; SMPTE ST 337 описывает упаковку, а не отдельный аудиокодек.

Поведение при ошибках

При пропаже сигнала вход ожидает его восстановления в пределах peer_timeout_ms; после таймаута причина отказа — no_signal. Смена видеостандарта перезапускает захват с новыми параметрами. При занятом устройстве проверьте направление порта и другие процессы, использующие его.

Вход использует общий механизм повторных попыток и переключения на резерв. При несовместимом формате устройства проверьте, что установлен совместимый драйвер карты.

Применение изменений

Изменения передаются через API central. При изменении адреса источника или формата захват открывается заново; это может прервать приём на время подключения. После применения проверьте состояние входа и поступление кадров.

Счётчики

Ниже — точные имена полей протокольной статистики. counter накапливает события, gauge показывает текущее значение; список включает оба вида. Нулевые поля могут отсутствовать в ответе. API и Prometheus используют разные проекции: весь список не следует ожидать в одном ответе Admin API. Доступ к детализации зависит от лицензии на счётчики.

Общие показатели входа: bytes, frames, errors, warnings. Они суммируют данные протокола, поэтому складывать их с протокольными счётчиками повторно не нужно.

Sdi

Поле Тип
line_state gauge
producer_restarts counter
producer_restarts_wrong_standard counter
producer_restarts_silence counter
datagrams counter
boundary_loss counter
crc_errors counter
unsupported_codec counter
vanc_unknown counter
vanc_cdp counter
vanc_cdp_pairs counter
ad_marks counter
errors_ad_marks_dropped counter
warning_ad_mark_descriptors_dropped counter
timecode_missing counter
timecode_rejected counter
timecode_untrusted counter
timecode_jumps counter

Прочее

Звуковые дорожки

Позиция записи в audio задаёт номер звуковой дорожки стрима. channels содержит номера SDI-аудиоканалов от 1 до 16 в нужном порядке; lang — язык по ISO 639-2. Один канал нельзя включить в две дорожки. Пустой список означает стерео из первой пары.

sample_type: pcm выбирает несжатый звук. Если канал содержит данные вместо PCM, в PCM-дорожку подставляется тишина.

AC-3 и E-AC-3 через SMPTE 337

Для сжатого звука в паре SDI-каналов задайте sample_type: smpte337 и ровно два номера каналов. Вход извлекает AC-3 или E-AC-3 без декодирования в PCM. Пакеты неподдержанных типов, включая Dolby E, и 20-/24-битные режимы ST 337 считаются в sdi_unsupported_codec_total.

audio:
  - channels: [1, 2]
    lang: rus
  - channels: [3, 4]
    sample_type: smpte337
    lang: rus

Вспомогательные данные VANC

  • OP-47 и телетекст VBI передаются в дорожку телетекста.

  • SCTE-104 преобразуется в метки общей дорожки scte35; дальнейшая передача описана в SCTE-35.

  • CDP (CEA-608/708) разбирается и учитывается счётчиками; отдельная дорожка субтитров из него не публикуется.

  • Таймкод ATC используется при включённом timecode.

  • Неизвестные пары DID/SDID учитываются счётчиками.

Приём и выдача — разные функции. Для вывода нужен выходной порт карты; ASI имеет отдельную страницу.

Что дальше