Skip to content

TSHTTP

media.ingest.tshttp

Описание

Sapsan подключается к HTTP-серверу и принимает непрерывный MPEG-TS из тела ответа. Для приёма по UDP и multicast см. MPEG-TS.

Настройка

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

streams:
- name: source1
  inputs:
  - tshttp:
      url: https://origin.example.com/studio/mpegts
      peer_timeout_ms: 5000

Параметры

Параметр Описание
url адрес HTTP-источника
peer_timeout_ms таймаут отсутствия данных.

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

HTTP или HTTPS; поддерживается chunked-передача. Слушающий UDP-порт этому входу не нужен.

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

  • 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-разборщик не выдаёт его кадры.

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

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

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

Смена url перезапускает вход; изменение только peer_timeout_ms применяется без разрыва.

Счётчики

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

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

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.

Что дальше