Overview

La lista Live streams es el catálogo de cada definición de broadcast conocida por C21 Live Control. Es el punto de entrada para Operators que gestionan broadcasts manuales y para Live streams arrancados desde un Schedule.
Vista de lista
La lista muestra una fila por Live stream con cuatro columnas — Live stream, Source, Encoding y Destination — más una franja vertical coloreada en el borde izquierdo que refleja el estado de runtime de la fila. El encoder y el slot al que apunta el broadcast aparecen como subtítulo bajo el nombre del Live stream. La acción Add Live stream en la barra superior abre el editor.
Para abrir el panel de detalle de una fila, haz doble click sobre ella — ver Opciones del Live stream.
Cómo funciona
Crear
Abre Add Live stream y rellena el editor:
- Name — nombre visible reutilizado por la UI, la API y los logs.
- Stream is enabled — toggle que controla si el Live stream se puede arrancar.
- Source — el Channel que alimenta el broadcast.
- Encoding — un Encoding o un Encoding group (escala ABR).
- Destination — un Destination o un Destination group.
Cuando el editor está en modo AV1, la opción "Destination groups" se deshabilita con la alerta "For AV1 encodings no destination groups are allowed". Cuando el Channel enlazado es NDI, una segunda alerta recuerda que cada encoder del grupo debe ver la fuente NDI para una reasignación correcta.
Programar
Opcionalmente, enlaza el Live stream a un Schedule en la sección Scheduler para que arranque y se detenga automáticamente. Consulta Scheduler para reglas de recurrencia y resolución de conflictos.
Arrancar
Un Live stream puede arrancarse desde la lista, desde la página de detalle, por un Schedule que dispara o por una llamada API contra startLivestream. Antes de enviar el arranque, el cliente debe llamar a getLivestreamStartConfig para obtener un idEncoderGroup válido y el último startConfig[] guardado.
Monitorizar
Una vez en marcha, se muestra en tiempo real el estado del Live stream, con indicadores por etapa para el Channel de entrada, el Encoding y el Destination. La superficie completa de operaciones de runtime (logo, blackout, source switch, toggle de Destinations, texto, metadatos, ad-values) vive en On air.
Detener
Detén el Live stream desde la página de detalle, desde la fila de la lista, por un Schedule que termina o por una llamada API a stopLivestream. Tras el stop, el editor vuelve a desbloquearse.
Estado de runtime
La API expone dos campos independientes sobre un Live stream: status (el estado binario on/off persistido) y errorstatus (snapshot de salud en runtime que reporta el encoder). Se mueven de forma independiente — un Live stream puede permanecer en status: 1 mientras su errorstatus transiciona entre OK, ERROR y de vuelta.
status — en emisión o no
LiveStream.status es binario: el backend persiste 0 cuando el broadcast está parado y 1 cuando está en emisión. Cualquier valor mayor que 1 que reciba la API se acota a 1. La UI lo mapea a un único badge en el panel de detalle.
status | Significado | UI (panel de detalle) |
|---|---|---|
0 | Off | El panel de estado muestra "Off". El editor queda desbloqueado. |
1 | Live | El panel de estado muestra "Live". El editor queda bloqueado. |
errorstatus — snapshot de salud
LiveStream.errorstatus es un campo aparte que lleva la última probe de salud del encoder. Combina el estado de la entrada y el estado de ingesta de cada Destination habilitado, así que un Destination que deja de ingestar (un target de YouTube que se cae, por ejemplo) saca el snapshot de OK en lugar de dejarlo en verde. Es lo que la franja vertical del borde izquierdo de la lista y los indicadores por entrypoint de la fila reflejan — no status.
errorstatus | Significado |
|---|---|
0 | None — todavía no se ha reportado señal de salud. |
1 | OK — la entrada está sana y cada Destination habilitado está ingestando. |
2 | ERROR — se perdió la entrada, o ningún Destination del broadcast es alcanzable. |
3 | WARNING — half-error: algunos Destinations están caídos mientras otros siguen publicando. |
5 | DEPLOY — un broadcast C21 Live Cloud está todavía aprovisionando su encoder cloud. |
Un único Destination que se cae nunca pone en rojo todo el Live stream por sí solo — aparece como warning mientras el broadcast sigue publicando por otros. Vía API y MCP, GET /livestreams/{id}/status reporta esta salud por cada entrada en marcha, junto con el estado de ingesta por destino bajo publishing_info.connections[].
Opciones comunes
| Opción | Descripción |
|---|---|
| Name | Nombre visible. |
| Description | Notas en formato libre. |
| Source | El Channel enlazado. |
| Encoding | Un Encoding o un Encoding group. |
| Destination | Un Destination o un Destination group. |
| Stream is enabled | Desactiva un Live stream sin borrarlo. |
La grabación en un Live stream se configura añadiendo un Destination de tipo Record a uno de los Destination groups enlazados (o enlazando un único Destination Record). No hay un flag separado on/off en el Live stream.
FAQ
Record (o un Destination group cuyos miembros sean todos Record). El Live stream sigue ejecutándose contra el encoder y escribe la grabación, pero no se produce ninguna emisión hacia la red.