ST 2110¶
media.ingest.st2110
Описание¶
Sapsan принимает студийный сигнал ST 2110: несжатое видео, звук и вспомогательные данные передаются отдельными дорожками. Для этого протокола одновременно работают два источника конфигурации: central размещает стрим на стримере и задаёт состав входа, внешний NMOS-контроллер настраивает непосредственные адреса multicast и форматы приёмных дорожек.
Настройка¶
Настройка выполняется через API central. Фрагмент конфигурации стрима:
streams:
- name: source1
inputs:
- st2110:
network: studio
receivers:
video:
enabled: true
audio:
enabled: true
data:
enabled: true
Параметры¶
| Поле | Описание |
|---|---|
network |
метка медиасети, заданная разметкой интерфейса на стримере. |
receivers |
приёмные дорожки; enabled включает приём. |
reduce_to_8bit |
понижение 10-битного видео до 8 бит. |
recv_buffer_bytes |
буфер сокета; queue_max_bytes — предел очереди; audio_frame_ms — длительность звукового кадра. В ручном режиме для дорожки задаются host, port, source и format; sdp позволяет передать транспортное описание. |
Аутентификация¶
IS-05 обслуживается самим стримером. Доступ NMOS-контроллера ограничивается управляющей сетью; настройка NMOS не заменяет авторизацию API central.
Варианты транспорта¶
-
ST 2110-20 — видео по RTP/UDP multicast.
-
ST 2110-30 — звук.
-
ST 2110-40 — вспомогательные данные.
PTP синхронизирует временную шкалу. Для SSM указывается адрес отправителя.
Поддерживаемые кодеки¶
- YCbCr 4:2:2 (8-bit)
- YCbCr 4:2:2 (10-bit)
- PCM L16
- PCM L24
YCbCr — формат несжатых пикселей, L16/L24 — несжатые отсчёты PCM. Видео принимается по ST 2110-20, звук — по ST 2110-30. Приём AM824/AES3 (ST 2110-31) в текущем медиатракте не реализован. SMPTE ST 291 для ANC — упаковка вспомогательных данных, а не видеокодек.
Поведение при ошибках¶
Состояние входа и причина отказа доступны в статистике стрима. При обрыве или отсутствии кадров действует общий механизм повторных подключений и переключения на резерв.
Применение изменений¶
Изменения central и команды NMOS не заменяют друг друга: central владеет размещением и составом входа, контроллер — коммутацией дорожек. Активация IS-05 применяется стримером к адресации дорожки. При смене адреса или формата соответствующий приёмник переподключается.
Счётчики¶
Ниже — точные имена полей протокольной статистики. counter накапливает события, gauge показывает текущее значение; список включает оба вида. Нулевые поля могут отсутствовать в ответе. API и Prometheus используют разные проекции: весь список не следует ожидать в одном ответе Admin API. Доступ к детализации зависит от лицензии на счётчики.
Общие показатели входа: bytes, frames, errors, warnings. Они суммируют данные протокола, поэтому складывать их с протокольными счётчиками повторно не нужно.
St2110¶
| Поле | Тип |
|---|---|
declared_tracks |
gauge |
receiving_tracks |
gauge |
diverged_clock_tracks |
gauge |
clock_drift_ms |
gauge |
xdp_reopens |
counter |
RtpChannel¶
| Поле | Тип |
|---|---|
channel_id |
label |
rtp_packets |
counter |
rtcp_packets |
counter |
bytes |
counter |
frames |
counter |
pt_reject_count |
counter |
pt_reject_bytes |
counter |
ts_goes_backwards |
counter |
ts_jump_forward |
counter |
ts_stuck |
counter |
errors_dts_stuck |
counter |
sr_ts_stuck |
counter |
ts_stuck_restarts |
counter |
resync_sr |
counter |
marker_packets_count |
counter |
no_marker_mode_flag |
gauge |
errors_broken_payload |
counter |
errors_lost_packets |
counter |
errors_dropped_packets |
counter |
errors_late_packets |
counter |
errors_incomplete_frames |
counter |
nack_count |
counter |
onvif_buffer_overflow |
counter |
onvif_seq_gap |
counter |
onvif_marker_mismatch |
counter |
onvif_resync_dropped |
counter |
Прочее¶
NMOS IS-04 объявляет приёмники контроллеру, IS-05 коммутирует их. В сети без контроллера адреса и форматы можно задать вручную через API central. Несжатое видео требует достаточной пропускной способности сети и памяти; для HLS и других сжатых выходов добавьте транскодирование.