DASH¶
media.ingest.dash
Descripción¶
Sapsan captura MPEG-DASH en vivo de un servidor remoto, actualizando el MPD y descargando nuevos segmentos fMP4. Admite una representación o una escalera de calidades.
Configuración¶
Configure el stream mediante la API de central. Fragmento de configuración:
streams:
- name: source1
inputs:
- dash:
url: https://origin.example.com/studio/manifest.mpd
representation_mode: single
Parámetros¶
| Parámetro | Descripción |
|---|---|
url |
URL del manifiesto MPD. |
headers |
Cabeceras HTTP de las solicitudes a la fuente. |
representation_bandwidth |
Bitrate objetivo en bit/s: selecciona la representación más cercana por debajo; sin valor, la de mayor bandwidth. |
representation_mode |
single — una representación (por defecto); ladder — la escalera completa de calidades. |
skew_threshold_ms |
Desfase permitido entre calidades, en milisegundos; por defecto 500. |
skew_policy |
report — continuar la captura e informar del desfase (por defecto); fallback_to_single — cambiar a una representación. |
connect_timeout_ms |
Tiempo de conexión HTTP, en ms; por defecto 5000. |
read_timeout_ms |
Tiempo de recepción del cuerpo HTTP, en ms; por defecto 15000. |
max_body_bytes |
Tamaño máximo del cuerpo, en bytes; por defecto 67 108 864 (64 MiB). |
peer_timeout_ms |
Tiempo sin fotogramas, en ms; utiliza el control común del estado de la fuente. |
clear_keys |
Mapa KID → clave CENC en hexadecimal; KID también admite notación UUID. |
Autenticación¶
headers proporciona cabeceras de autorización HTTP. clear_keys proporciona pares KID/clave para CENC. Una fuente cifrada sin clave se rechaza.
Opciones de transporte¶
HTTP o HTTPS; listas/manifiestos y segmentos usan solicitudes independientes.
Códecs admitidos¶
- 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
Son los códecs que la entrada extrae de fMP4, no una lista de capacidades de decodificación. H.264 usa avc1/avc3, HEVC usa hvc1/hev1 y AV1 usa av01 con av1C. MPEG-2 Video requiere mp4v con configuración MPEG-2; esto no implica compatibilidad con MPEG-4 Visual. JPEG es una pista de imágenes. MPEG Audio se identifica mediante esds o una sample entry MP3; mp4a por sí sola no significa AAC. Opus usa Opus/dOps y G.711 usa alaw/ulaw. Las declaraciones del contenedor deben coincidir con los datos; declarar un códec en el MPD no sustituye un segmento de inicialización válido.
Comportamiento ante errores¶
El estado de la entrada y la causa del fallo están en las estadísticas del stream. Ante desconexión o ausencia de fotogramas se aplican los mecanismos de reintento y conmutación a reserva.
Aplicación de cambios¶
Aplique los cambios mediante la API de central. Cambiar la dirección o el formato vuelve a abrir la captura y puede interrumpirla durante la conexión. Compruebe después el estado y la llegada de fotogramas.
Contadores¶
Las tablas indican los nombres exactos de los campos de estadísticas del protocolo, incluidos contadores de eventos e indicadores del valor actual. Los campos nulos pueden omitirse. API y Prometheus exponen proyecciones distintas; un único resultado de Admin API no incluye necesariamente toda la lista. El detalle depende de la licencia de contadores.
Totales comunes de entrada: bytes, frames, errors, warnings. Agregan datos del protocolo; no deben sumarse otra vez a los contadores del 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 |
Otros detalles¶
La captura comienza en el borde en vivo. Se admiten MPD dinámicos y fMP4 con SegmentTemplate. No se aceptan MPD estáticos, SegmentList ni SegmentBase. Se controla la alineación de la escalera; la entrada no solicita licencias DRM a servidores Widevine/PlayReady/FairPlay.