Захват потока по SRT¶
Sapsan принимает SRT-поток, слушая выделенный UDP-порт (режим listener). Для каждого потока задается свой порт.
Настройка¶
streams:
event:
inputs:
- srt:
host: 0.0.0.0
port: 9000
passphrase: verysecretpass
| Параметр | Описание |
|---|---|
host, port |
адрес и UDP-порт, на котором ждем SRT-подключение |
passphrase |
ключ шифрования (AES); при несовпадении ключа подключение отклоняется |
stream_id |
ожидаемый streamid клиента; Flussonic-формат #!::r=<имя> передается как есть |
handshake_timeout_ms, peer_timeout_ms |
таймауты рукопожатия и неактивности |
Отправить поток в Sapsan можно, например, так:
ffmpeg -re -i input.mp4 -c copy -f mpegts \
"srt://server:9000?passphrase=verysecretpass"
Надежность доставки¶
Реализован полный ARQ-механизм SRT: подтверждения (ACK/ACKACK), запросы перепосылки потерянных пакетов (NAK), буфер задержки с выдачей пакетов по порядку, отбрасывание безнадежно опоздавших пакетов (too-late drop), keepalive для простаивающих соединений. Период NAK подстраивается под измеренный RTT.
Применение изменений¶
Смена адреса, порта, passphrase или stream_id перезапускает источник; смена только таймаутов применяется на лету.
Счетчики¶
По каждому соединению: принятые пакеты и байты, RTT и его вариация, потерянные и перепосланные пакеты в обе стороны, размеры буферов, таймауты keepalive. Смотрите через Admin API.