DASH¶
media.ingest.dash
Descrição¶
O Sapsan captura MPEG-DASH ao vivo de um servidor remoto, atualizando o MPD e baixando novos segmentos fMP4. Aceita uma representação ou uma escada de qualidades.
Configuração¶
Configure o stream pela API do central. Trecho de configuração:
streams:
- name: source1
inputs:
- dash:
url: https://origin.example.com/studio/manifest.mpd
representation_mode: single
Parâmetros¶
| Parâmetro | Descrição |
|---|---|
url |
URL do manifesto MPD. |
headers |
Cabeçalhos HTTP das solicitações à fonte. |
representation_bandwidth |
Bitrate alvo em bit/s: seleciona a representação mais próxima abaixo dele; sem valor, a de maior bandwidth. |
representation_mode |
single — uma representação (padrão); ladder — a escada completa de qualidades. |
skew_threshold_ms |
Desvio permitido entre qualidades em milissegundos; padrão 500. |
skew_policy |
report — continuar a captura e informar o desvio (padrão); fallback_to_single — mudar para uma representação. |
connect_timeout_ms |
Tempo limite de conexão HTTP em ms; padrão 5000. |
read_timeout_ms |
Tempo limite do corpo da resposta HTTP em ms; padrão 15000. |
max_body_bytes |
Tamanho máximo do corpo em bytes; padrão 67.108.864 (64 MiB). |
peer_timeout_ms |
Tempo sem quadros em ms; usa o mecanismo comum de estado da fonte. |
clear_keys |
Mapa KID → chave CENC em hexadecimal; KID também aceita notação UUID. |
Autenticação¶
headers fornece cabeçalhos de autorização HTTP. clear_keys fornece pares KID/chave para CENC. Uma fonte criptografada sem chave é rejeitada.
Opções de transporte¶
HTTP ou HTTPS; listas/manifestos e segmentos usam requisições independentes.
Codecs compatíveis¶
- H.264
- HEVC / H.265
- AV1
- MPEG-2 Video
- JPEG
- AAC
- AC-3
- E-AC-3
- MPEG Audio (Layer II / III)
- Opus
- G.711 A-law / μ-law
São os codecs que a entrada extrai de fMP4, não uma lista de capacidades de decodificação. H.264 usa avc1/avc3, HEVC usa hvc1/hev1 e AV1 usa av01 com av1C. MPEG-2 Video requer mp4v com configuração MPEG-2; isso não implica suporte a MPEG-4 Visual. JPEG é uma faixa de imagens. MPEG Audio é identificado por esds ou uma sample entry MP3; mp4a por si só não significa AAC. Opus usa Opus/dOps e G.711 usa alaw/ulaw. As declarações do contêiner devem corresponder aos dados; declarar um codec no MPD não substitui um segmento de inicialização válido.
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¶
Aplique as alterações pela API do central. Alterar o endereço ou o formato reabre a captura e pode interrompê-la durante a conexão. Verifique depois o estado e a chegada de quadros.
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.
Dash¶
| Campo | Tipo |
|---|---|
segments |
counter |
bytes |
counter |
frames |
counter |
manifest_reloads |
counter |
discontinuities |
counter |
segments_skipped |
counter |
segments_gone |
counter |
segments_cancelled |
counter |
segments_gap |
counter |
errors_manifest |
counter |
errors_segment_network |
counter |
errors_segment_status |
counter |
errors_segment_decode |
counter |
errors_decrypt |
counter |
fragment_gaps |
counter |
fragment_overlaps |
counter |
fragment_seam_error_ms |
counter |
media_time_drifts |
counter |
edge_distance_ms |
counter |
manifest_updated_at |
gauge |
frames_emitted_at |
gauge |
memory_bytes |
gauge |
Outros detalhes¶
A captura começa na borda ao vivo. São aceitos MPDs dinâmicos e fMP4 com SegmentTemplate. MPDs estáticos, SegmentList e SegmentBase não são aceitos. A escada é verificada quanto a desalinhamento; a entrada não solicita licenças DRM a servidores Widevine/PlayReady/FairPlay.