SRT¶
media.ingest.srt
Descrição¶
O Sapsan conecta-se a um servidor SRT remoto e captura MPEG-TS no modo caller. A entrada abre uma porta UDP local efêmera, independente de listeners e das portas de publicação. host e port identificam o servidor remoto. Consulte Publicação SRT para conexões de fontes.
Configuração¶
Configure o stream pela API do central. Trecho de configuração:
streams:
- name: source1
inputs:
- srt:
host: origin.example.com
port: 9000
stream_id: '#!::r=studio,m=request'
latency_ms: 120
peer_timeout_ms: 5000
Parâmetros¶
| Parâmetro | Descrição |
|---|---|
host |
IP ou DNS do servidor remoto |
port |
sua porta UDP. |
stream_id |
stream_id é enviado na conexão. |
passphrase |
senha de criptografia acordada. |
latency_ms |
latência de recepção e orçamento de recuperação. |
handshake_timeout_ms |
tempo de conexão |
peer_timeout_ms |
espera sem dados. |
Autenticação¶
A passphrase deve coincidir com a do emissor. O servidor remoto define o formato de stream_id, incluindo o token de acesso quando necessário.
Opções de transporte¶
-
UDP — conexão cliente ao listener SRT remoto.
-
ACK/ACKACK — confirmação de entrega.
-
NAK/ARQ — solicitações de retransmissão e recuperação.
-
Buffer de latência — ordenação de pacotes.
-
Too-late drop — descarte de pacotes atrasados.
-
Keepalive — monitoramento da conexão.
Codecs compatíveis¶
- 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 é o contêiner; SRT, RIST, UDP e HTTP são transportes de entrega. A lista descreve a extração de frames de MPEG-TS, não sua decodificação nem a compatibilidade do reprodutor.
AV1 requer stream_type 0x06 e o descritor de registro AV01 na PMT; cada PES deve conter um temporal unit completo. AV1 em MPEG-TS sem essa sinalização não é aceito. AAC é analisado como ADTS; reconhecer stream_type 0x11 não implica suporte a LATM. Opus pode ser identificado na PMT, mas o analisador PES atual não emite seus frames.
Comportamento em caso de erro¶
O estado da entrada e a causa da falha estão nas estatísticas do stream. Desconexão ou ausência de quadros usa os mecanismos de repetição e comutação para reserva.
Aplicação de alterações¶
A troca de endereço, porta, passphrase ou stream_id reinicia a fonte; a troca apenas dos tempos limite é aplicada em tempo real.
Contadores¶
As tabelas mostram os nomes exatos dos campos de estatísticas do protocolo, incluindo contadores de eventos e indicadores do valor atual. Campos zerados podem ser omitidos. API e Prometheus expõem projeções diferentes; uma única resposta da Admin API não contém necessariamente toda a lista. O detalhe depende da licença de contadores.
Totais comuns da entrada: bytes, frames, errors, warnings. Eles agregam dados do protocolo; não devem ser somados novamente aos contadores do protocolo.
Srt¶
| Campo | Tipo |
|---|---|
incoming_bytes |
counter |
outgoing_bytes |
counter |
incoming_packets |
counter |
outgoing_packets |
counter |
incoming_lost_packets |
counter |
outgoing_lost_packets |
counter |
incoming_retransmitted_packets |
counter |
outgoing_retransmitted_packets |
counter |
incoming_recovered_packets |
counter |
missing_packets |
counter |
incoming_ack_packets |
counter |
outgoing_ack_packets |
counter |
incoming_ackack_packets |
counter |
outgoing_ackack_packets |
counter |
incoming_drop_request |
counter |
incoming_drop_requests |
counter |
outgoing_drop_requests |
counter |
incoming_nak_packets |
counter |
outgoing_nak_packets |
counter |
outgoing_drop_too_late_packets |
counter |
incoming_drop_late_seq |
counter |
incoming_drop_late_time |
counter |
incoming_drop_far_time |
counter |
incoming_drop_too_late |
counter |
incoming_drop_buffer_full |
counter |
loss_tracking_overflows |
counter |
keepalive_timeouts |
counter |
receive_buffer_size |
gauge |
send_buffer_size |
gauge |
rtt_us |
gauge |
rtt_var_us |
gauge |
source_clock_drift_us |
gauge |
memory_bytes |
gauge |
Mpegts¶
| Campo | Tipo |
|---|---|
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¶
| Campo | Tipo |
|---|---|
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 |
Outros detalhes¶
Além de vídeo e áudio, MPEG-TS transporta:
-
Teletexto DVB.
-
Metadados KLV.
-
Marcadores SCTE-35.
-
Descritores de idioma e legendas DVB da PMT.