Reproducción por HLS y LL-HLS¶
Todo stream de Sapsan está disponible de inmediato por HLS (fMP4/CMAF) sin configuración adicional. Los streams en vivo reciben por defecto LL-HLS con segmentos parciales.
URL de reproducción¶
| Qué | URL |
|---|---|
| Playlist maestro (todas las calidades) | http://server/streaming/v/<stream>/index.m3u8 |
| Playlist de una sola pista | http://server/streaming/v/<stream>/variant/<track>/index.m3u8 |
| Rebobinado (rewind) | http://server/streaming/v/<stream>/rewind/<segundos-atrás>/index.m3u8 |
| Archivo por tiempo absoluto | http://server/streaming/v/<stream>/index.m3u8?from=<utc_ms>&to=<utc_ms> |
El playlist maestro lleva las calidades con RESOLUTION, FRAME-RATE y CODECS; el audio pasa a grupos rendition (EXT-X-MEDIA). El audio G.711 (PCMA/PCMU) no se sirve por HLS — transcodifique primero esos streams a AAC.
LL-HLS¶
Para los streams en vivo Sapsan sirve un LL-HLS completo (versión 9 del protocolo):
- segmentos parciales
EXT-X-PARTen el borde en vivo yEXT-X-PRELOAD-HINTpara la siguiente parte; - blocking playlist reload: los parámetros de cliente
_HLS_msny_HLS_partretienen la petición hasta que aparece el segmento o la parte solicitada; - actualizaciones delta del playlist:
_HLS_skip=YESacorta el playlist con la etiquetaEXT-X-SKIP; EXT-X-RENDITION-REPORTpara un cambio de calidad rápido;PART-HOLD-BACK,CAN-SKIP-UNTIL,HOLD-BACKse calculan automáticamente a partir de las duraciones del segmento y de la parte.
El LL-HLS se puede desactivar por cliente con ?llhls=false — el playlist maestro lo propaga a todas las URLs de las variantes, y el reproductor recibe un HLS clásico (versión 7).
Tokens en los playlists¶
Si la reproducción está protegida con un token, ?token= se añade automáticamente a todas las URLs anidadas del playlist: variantes, segmentos init, segmentos, partes y preload hints. Al reproductor le basta con abrir el playlist maestro con el token.
Cantidad de segmentos¶
La longitud del playlist en vivo la fija el parámetro segments del stream:
streams:
- name: tv1
inputs:
- udp: {host: 239.0.0.1, port: 5000}
segments: 6
Diagnóstico¶
Sapsan trae incorporado un validador de playlists HLS: estima la latencia esperada y señala problemas de configuración con códigos como LL-DISABLED, TARGETDURATION-INFLATED, PART-TARGET-LARGE, SPARSE-INDEPENDENT-PARTS (un GOP demasiado largo para el LL-HLS).
Note
TODO: cómo ejecutar el validador (CLI/API).