Skip to content

RIST

media.ingest.rist

Описание

Приём MPEG-TS по RIST с восстановлением сетевых потерь повторной передачей. Поддерживаются Simple Profile и Main Profile.

Настройка

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

streams:
- name: source1
  inputs:
  - rist:
      host: 0.0.0.0
      port: 5000
      profile: simple
      buffer_ms: 1000

Параметры

Параметр Описание
host локальный адрес или группа multicast
port чётный медиапорт Simple Profile.
buffer_ms, reorder_ms, max_retries buffer_ms (1000), reorder_ms (70), max_retries (7) управляют восстановлением.
peer_timeout_ms таймаут источника.
multicast_interface интерфейс группы.
profile simple или main.
tunnel_port, tunnel_role, encryption_passphrase, allow_insecure_encryption Для Main: tunnel_port, tunnel_role (client/server, для входа по умолчанию server), encryption_passphrase, allow_insecure_encryption (по умолчанию false).

Аутентификация

Main Profile поддерживает общий PSK через encryption_passphrase. Simple Profile шифрования не предоставляет.

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

  • Simple Profile — RTP на чётном порту P, RTCP на P+1.

  • Main Profile — GRE-туннель на tunnel_port.

  • ARQ — повторная передача в пределах приёмного буфера.

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

  • H.264
  • HEVC / H.265
  • AV1
  • JPEG 2000
  • MPEG-2 Video
  • AAC (ADTS)
  • AC-3
  • E-AC-3
  • MPEG Audio (Layer II / III)
  • SMPTE ST 302M

MPEG-TS — контейнер, а SRT, RIST, UDP и HTTP — способы его доставки. Перечень относится к извлечению кадров из MPEG-TS, а не к декодированию или поддержке этих кодеков плеером.

AV1 распознаётся по stream_type 0x06 и регистрационному дескриптору AV01 в PMT; один PES должен содержать целый temporal unit. MPEG-TS с AV1 без этой сигнализации не поддерживается. Для AAC реализован разбор ADTS; наличие stream_type 0x11 само по себе не означает поддержку LATM. Opus может быть распознан в PMT, но текущий PES-разборщик не выдаёт его кадры.

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

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

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

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

Счётчики

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

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

Rist

Поле Тип
incoming_packets counter
incoming_lost_packets counter
incoming_recovered_packets counter
incoming_unrecovered_packets counter
incoming_duplicate_packets counter
incoming_retransmitted_packets counter
incoming_reordered_packets counter
incoming_late_packets counter
incoming_invalid_datagrams counter
incoming_foreign_ssrc_packets counter
incoming_foreign_profile_packets counter
incoming_undecryptable_packets counter
incoming_encryption_mismatch_packets counter
source_restarts counter
outgoing_nak_packets counter
outgoing_packets counter
outgoing_bytes counter
outgoing_retransmitted_packets counter
incoming_nak_packets counter
retransmits_denied_cache counter
retransmits_denied_rate counter
cache_evicted_by_ceiling counter
tunnel_keepalives_sent counter
tunnel_keepalives_received counter
tunnel_discarded_unknown_version counter
tunnel_discarded_bad_encapsulation counter
tunnel_discarded_unroutable counter
tunnel_discarded_queue_full counter
tunnel_discarded_foreign_profile counter
rtt_us gauge
tunnel_up gauge
tunnel_silence_ms gauge
tunnel_streams gauge
tunnel_insecure_iv_allowed gauge
memory_bytes gauge

Mpegts

Поле Тип
bytes counter
sync_bytes counter
packets counter
frames counter
errors counter
errors_ts_pat counter
errors_ts_service_lost counter
broken counter
memory_bytes gauge

MpegtsPid

Поле Тип
pid label
pnr label
packets counter
frames counter
empty_packets counter
errors_adaptation_broken counter
errors_ts_scrambled counter
errors_ts_pmt counter
errors_ts_cc counter
errors_ts_tei counter
errors_ts_psi_checksum counter
errors_pid_lost counter
broken_pes_count counter
broken_pes_sum counter
time_corrections counter
corrected_backward_pts counter
discarded_buffer_count counter
discarded_buffer_sum counter
fillers_count counter
fillers_sum counter
unpaired_fields counter
warning_invalid_sibling_frames counter
padding_pes_count counter
padding_pes_sum counter
orphan_pes_count counter
dts_goes_backwards counter
dts_jump_forward counter
too_large_dts_jump counter
pcr_resync counter
pcr_jitter_ok_0 counter
pcr_jitter_ok_500ns counter
pcr_jitter_fail_500us counter
pcr_jitter_fail counter
hrd_buffer_min gauge
hrd_buffer_max gauge
hrd_buffer_underrun counter
ad_marks counter
errors_ad_marks_dropped counter
warning_ad_mark_descriptors_dropped counter

Прочее

Вместе с видео и звуком MPEG-TS передаёт:

  • DVB-телетекст.

  • KLV-метаданные.

  • Метки SCTE-35.

  • Языковые дескрипторы дорожек и дескрипторы DVB subtitles из PMT.

Что дальше