Resources

Release Notes

Versiones recientes de la C21 Streaming Platform.

Los productos de Plataforma de Streaming, C21 Live Control y C21 Live Encoder, se entregan como software — stack Docker sobre host Linux, instalación y actualización a través de un único comando. Cada entrada describe qué entrega una versión concreta de ese software.

v6.14.0

October 6, 2026

  • Input YouTube Live en espera — Cuando la fuente de YouTube ha terminado, no es un directo, es privada o se ha eliminado, o la bloquea el control anti-bot de YouTube, el Encoder deja el input en espera en lugar de relanzarlo en bucle.
  • Un input YouTube Live en espera pone el Live stream en ámbar (warning), nunca en rojo, con un texto de estado explícito como YouTube source ended, y el Encoder deja de consultar a YouTube.
  • Lo mismo aplica tras un cambio de fuente a un Channel YouTube Live: si esa fuente termina, el cambio se mantiene — no vuelve sola a la fuente anterior y no se detiene nada.
  • Fix: El diálogo Edit Schedule preselecciona los Encodings reales del Schedule; GET /schedules/{scheduleId} devuelve ahora ids de Encoding.
  • Fix: La vista previa de un Live stream arrancado por un Schedule vuelve a estar disponible; sus renditions se toman del Encoding group.

v6.13.4

October 2, 2026

  • El Encoder avisa cuando una salida deja de generar contenido mientras su input sigue entregando datos: lo registra como error y lo muestra en el estado de publicación del Live stream.
  • Nuevo comando livecontrol license import, que instala la licencia del Control en la ruta que el producto lee; livecontrol license info indica ahora esa ruta.
  • Fix: Un input cuyo reloj no avanza al ritmo real, como la cartela de un proveedor, ya no congela la salida HLS: el Encoder sigue segmentando con la hora real y deja de llenar el log de avisos.
  • Fix: El diálogo Edit Schedule muestra la configuración del propio Schedule, y guardarlo ya no la sobrescribe con la del Live stream.

v6.13.2

September 25, 2026

  • Un único Destination CMAF puede servir Widevine, PlayReady y FairPlay con un solo empaquetado CBCS, en lugar de dos Destinations y dos juegos de segmentos.
  • Las playlists HLS de un Destination CMAF llevan EXT-X-PROGRAM-DATE-TIME en cada segmento, para que reproductores y sistemas de terceros alineen el contenido con la hora real.
  • Los trabajos de C21 Live Cloud con una codificación 4K HEVC piden el estándar de encoder UHD en lugar de FHD, el más alto que la selección automática sabía pedir hasta ahora.
  • Los inputs y las salidas SRT funcionan sobre libsrt 1.5.7, que corrige vulnerabilidades críticas de las versiones anteriores. Sin cambio de comportamiento en runtime.
  • Fix: Con la persistencia de logs activa (la activa el modo debug), el Encoder ya no se detiene — y con él sus Live streams — ante una línea de log de contenedor sin fracción de segundo.
  • Fix: Tras reiniciarse el servicio del Encoder, los inputs de sus Live streams vuelven a arrancar; la limpieza de los contenedores previos podía eliminar los recién creados.
  • Fix: Un Live stream con un Destination DASH en VP9 / Opus ya no entra en un bucle de reinicios.
  • Fix: El cambio de fuente en caliente ya no adopta el relevo de un Live stream que ha dejado de emitir, y acepta ahora fuentes MPEG-TS sobre UDP.
  • Fix: Un Live stream que ha cambiado a una fuente HLS deja de mostrar un estado de error falso.
  • Fix: La salida HLS de un Destination CMAF vuelve a publicarse con sus segmentos.
  • Fix: El buffer HLS local purga los segmentos vaciados tras su publicación, y su almacenamiento deja de crecer sin límite.
  • Fix: Un segmento rechazado por el origen ya no se marca como entregado, y el manifiesto deja de anunciar contenido que nunca llegó a publicarse.
  • Fix: Añadir o quitar miembros de un Encoding group vuelve a funcionar, tanto desde la API como desde la UI.
  • Fix: El aviso de modo HDR al construir un Encoding group aparece solo cuando el grupo es realmente HDR.
  • Fix: Detener un Live stream desde un agente cancela solo la ocurrencia en emisión de un Schedule recurrente, en lugar de toda la serie.

v6.13.1

September 10, 2026

  • Destinations de almacenamiento de objetos — La salida HLS / TS, DASH y CMAF puede publicarse directamente en almacenamiento compatible S3 o en Azure Blob Storage.
  • Un Destination de almacenamiento de objetos toma endpoint, bucket y prefijo de clave en una sola URL; en S3 la región de firma se descubre desde el endpoint y se corrige automáticamente.
  • Las credenciales guardadas de un Destination no se devuelven en ninguna ruta de lectura: las lecturas devuelven el sentinel enmascarado, y reenviarlo preserva el valor almacenado.
  • Las cabeceras de grupo del menú lateral y los listados de On air, Live streams y configuración son ahora operables por teclado y se anuncian correctamente en lectores de pantalla.
  • Fix: Un Destination de una sola rendition activado en emisión ya no publica con el stream name alterado, ni desaloja el slot de publicación de otro Destination.
  • Fix: Un Destination activado en emisión sin ninguna rendition seleccionada se rechaza con un motivo explícito en vez de retener un slot de publicación inservible, y todo rechazo se registra.
  • Fix: Corrige la deriva de audio en un input YouTube Live cuya captura se sirve como dos descargas separadas.

v6.12.0

September 1, 2026

  • Estado de actualizaciones del sistema operativo del host — Al terminar una instalación o actualización, los instaladores de Control y Encoder informan de si las actualizaciones automáticas del host están activas, cuántas actualizaciones de seguridad hay pendientes y si queda un reinicio pendiente — solo detectan y reportan, no modifican nada.
  • Control entrega ahora los assets de logo y blackout de un Live stream al Encoder antes de la orden que los necesita, en vez de que el Encoder los descargue bajo demanda — menos fallos de "logo no disponible" al arrancar, y soporte para Encoders C21 Live Cloud sin conectividad de salida directa hacia Control (por ejemplo, tras NAT).
  • Se evitan peticiones innecesarias a YouTube cuando el directo de YouTube ya ha finalizado.
  • Fix: El arranque de un output ya no se corta por una condición de carrera: la ventana de gracia de arranque se ancla ahora al final de la validación de entrada (antes se medía desde antes de empezar), eliminando un corte determinista en directos cuya validación tarda más que esa ventana — por ejemplo, entradas YouTube Live o HLS multivariante.
  • Fix: Un input Stream sobre un HLS multivariante podía coger silenciosamente la variante de menor calidad; la selección de variante es ahora explícita y determinista.
  • Fix: La configuración de arranque de un Live stream sigue ahora la pertenencia actual a su Destination group, no el último cuerpo de arranque enviado — un Destination que el operador había apagado explícitamente podía volver a activarse por sí solo en el siguiente arranque.
  • Fix: El estado de un Live stream podía mostrar un slot de publicación liberado con el nombre del Destination anterior; cada slot informa ahora explícitamente de su estado (publicando, deshabilitado, no disponible o libre) y de su posición en el grupo.
  • Fix: Abrir un Destination SDIOUT ya configurado podía dejar el campo Device en blanco en el panel de detalle, y los campos Device y Output sin preseleccionar en el formulario de edición, aunque el Destination tuviera esos valores guardados — ocurría cuando el Device asignado no tenía registrada su capacidad SDI en el backend.
  • Fix: Cuando falla el intercambio de claves con el proveedor DRM, la API informa ahora de la causa real (credenciales, endpoint, host inalcanzable...) en vez de un mensaje genérico. La validación de un proveedor DRM puede fallar de verdad ahora — antes aceptaba cualquier respuesta 2xx/3xx y podía marcar como válido un proveedor con credenciales incorrectas.
  • Fix: Las llamadas a herramientas del agente cloud se despachan ahora en paralelo, no una a una sobre el mismo bucle de lectura del WebSocket — evita que una ráfaga de llamadas sature la conexión y provoque cortes por timeout de keepalive.
  • Fix: Los botones Start/Stop del pie de On air y Live streams tienen ahora nombre accesible — antes eran icono puro, indistinguibles para un lector de pantalla pese a ser los controles que arrancan y paran un directo en producción.
  • Fix: Eliminados un diálogo residual "Start Live stream - undefined" que un lector de pantalla podía anunciar sin haberse abierto nunca, un enlace de documentación sin nombre accesible en la cabecera, y una lectura fantasma de "GPU -1%" en hosts sin GPU.

v6.11.11

August 20, 2026

  • Más visibilidad de incidentes en el ingest de directos YouTube Live: el Encoder traslada ahora las decisiones tomadas al arrancar la captura — qué estado de emisión devolvió YouTube en cada intento — a encoder.log / encoder.log.debug, con el mismo formato que el resto de su registro. Antes esa información solo vivía en el log interno propio del ingest y se perdía tras el incidente.
  • Fix: Una entrada YouTube Live que tarda en arrancar ya no entra en un bucle de reinicios: la comprobación de salud del Encoder podía detener el ingest por «falta de señal» antes de que pudiera esperar correctamente un arranque tardío. Solo para YouTube Live (RTMP, SRT y NDI no se ven afectadas), la comprobación delega ahora en el estado del propio ingest: tolera «adquiriendo señal» y solo reinicia ante una pérdida de señal real o un ingest caído.

v6.11.10

July 23, 2026

  • Fix: Parar, deshabilitar o recargar una entrada YouTube Live podía dejar su ingest auxiliar en ejecución sin consumidores; ahora se limpia siempre.
  • Fix: El ingest auxiliar de una entrada YouTube Live aplica ahora un retardo exponencial (20 s-180 s) ante fallos repetidos, en vez de forzar el challenge anti-bot de YouTube cada pocos segundos.
  • Fix: Una entrada YouTube Live que apuntaba a un vídeo no en directo (VOD o una emisión ya finalizada) lo descargaba entero en bucle, desperdiciando ancho de banda y exposición ante el challenge anti-bot de YouTube. El ingest comprueba ahora el estado del vídeo antes de descargar: la captura finaliza si no está en directo, y espera en silencio si el directo está programado.

v6.11.7

July 22, 2026

  • El instalador de Control elimina ahora las imágenes Docker obsoletas tras un deploy correcto, priorizando mantener disponible la versión estable anterior como respaldo; un deploy que agota el tiempo de espera de su comprobación de salud falla ahora directamente, de forma que la limpieza solo se ejecuta tras un deploy correcto.
  • Reducido el ruido de logs del Encoder: se eliminan cinco fuentes de mensajes constantes y de bajo valor de los logs de error y depuración del Encoder.
  • Fix: Desactivar el toggle Primary de un Destination Record o SDIOUT ya no lo deja grabando: cualquier forma de accionar ese toggle, incluidos los endpoints de API antiguos, mantiene ahora sincronizadas todas las calidades de un Encoding con varias resoluciones. Los Live streams que quedaron en el estado afectado por el comportamiento anterior se corrigen automáticamente, y el contrato OpenAPI refleja la corrección.
  • Fix: Los Destinations de salida SDI (DeckLink) no arrancaban. Se resuelve un problema de empaquetado en el Encoder que rompía el soporte de DeckLink.
  • Fix: Los Schedules recurrentes creados por API sin fecha until se creaban ya caducados. Omitir until significa ahora que el Schedule se repite indefinidamente, y una fecha until con un valor de calendario inválido se rechaza en lugar de posponerse silenciosamente.
  • Fix: Los fallos de publicación TLS/SSL que antes se mostraban como un error opaco y sin nombre se reportan ahora con un motivo específico, y los fallos de conexión SSL se reintentan como corresponde.

v6.11.6

July 17, 2026

  • Fix: Desactivar un Destination RTMP en runtime detiene ahora su salida de forma fiable — la salida remanente ya no sigue publicando ni bloquea una activación posterior de otro Destination.
  • Fix: En Live streams con más de nueve Destinations, activar un Destination en runtime ya no falla por un conflicto con otro Destination activo.
  • Fix: Un blackout con el audio de entrada mantenido ya no pierde el vídeo del slate en Live streams con más de ~26 horas en emisión; antes solo el audio seguía fluyendo hasta un reinicio.
  • Fix: En la vista Week del Scheduler, los bloques de evento se dimensionan ahora según su duración — un Schedule de cuatro horas se muestra con cuatro horas de alto, igual que en la vista Day.
  • Fix: CVE-2026-45073 — dependencia symfony/cache actualizada a 6.4.42 (antes 6.4.27). Sin cambio de comportamiento en runtime.

v6.11.3

July 14, 2026

  • El listado de Live streams añade los Destinations configurados y el Channel de origen en una consulta (includeDestinations, includeChannel), mejorando el rendimiento de aplicaciones y agentes.
  • Los agentes MCP recomiendan ahora grupos de encoders según su capacidad real y la disponibilidad de sus dispositivos.
  • Fix: La PAT ya no se pierde durante un blackout con el audio de entrada mantenido, lo que podía interrumpir la previsualización y los Destinations de publicación.
  • Fix: La edición de un Destination SDIOUT recupera ahora correctamente los valores configurados, incluidos Destinations cuyo Device ha sido eliminado.
  • Fix: Los Assets de logo y blackout se descargan ahora correctamente en Encoders desplegados tras NAT.
  • Fix: Las herramientas MCP de Live streams tratan ahora correctamente los identificadores numéricos.

v6.11.2

July 7, 2026

  • Un agente de voz puede ahora listar las acciones planificadas de todos los Live streams: getAllPlannedActions se incorpora al perfil de voz del MCP, completando el juego de tools de acciones planificadas disponible por voz (crear, leer, actualizar, borrar y listado global).
  • Fix: Un Live stream podía quedarse atrapado en un bucle infinito de reinicio de salida, sin emitir hasta detenerlo y arrancarlo manualmente, tras un source switch abortado. El Encoder detecta ahora la situación y se recupera solo.
  • Fix: En las vistas Day y Week del Scheduler, una ocurrencia de Schedule y una acción planificada que coinciden en el tiempo ya no se pintan una encima de otra — ahora comparten el clúster y se colocan lado a lado.

v6.11.0

July 6, 2026

  • Acciones planificadas sobre emisiones en marcha — Difiere una operación runtime de un solo disparo a un instante fijo sobre un Live stream ya en emisión: activar o desactivar un Destination, aplicar o quitar un logo, entrar o salir de un blackout, cambiar la fuente de entrada, inyectar metadata o establecer ad values. Las acciones se gestionan desde el Scheduler y su calendario, vía REST API y por agentes de voz.
  • Botón Documentation en la cabecera — Un nuevo botón en la cabecera abre este sitio de documentación (docs.cires21.com).
  • Los agentes MCP descubren ahora el catálogo de tools mediante una herramienta de búsqueda (search_tools / call_tool), cargando solo los schemas que necesitan en cada turno — un gran recorte del coste de contexto del agente.
  • Los listados de Destinations y Channels devueltos a los agentes MCP se recortan a sus campos operativos, reduciendo el tamaño de las respuestas hasta un 95% en despliegues grandes.
  • Los Destinations MediaCopilot se comportan ahora como salidas de un solo programa: con un Encoding multi-rendition, solo se contribuye la calidad más alta a MediaCopilot.
  • Fix: Corregido un error al realizar un source switch sobre Channels de entrada de tipo Stream configurados con un Encoding de solo audio y códec Logo.
  • Fix: Mejorada la estabilidad de los source switches encadenados — el segundo y sucesivos cambios sobre la misma emisión se aplican ya de forma fiable.
  • Fix: Los Channels YouTube Live arrancan ahora de forma fiable bajo alta carga del sistema, con mayor tolerancia de arranque en la entrada y la salida.

v6.10.8

June 29, 2026

  • Omitir una ocurrencia de un Schedule recurrente — Omite una ocurrencia concreta de un Schedule recurrente sin afectar al resto de la serie. La omisión está disponible ahora también desde el agente de voz.
  • Ampliada la protección frente a reinicios en el takeover de planificaciones: un Live stream arrancado manualmente ya no se detiene ni se reinicia al programarle una parada automática, aunque su configuración difiera de la planificada — adopta la emisión en curso y aplica solo la hora de fin.
  • Optimizado el takeover de Live streams programados, evitando reinicios innecesarios cuando la configuración ya coincide con la emisión en curso.
  • Las tablas On Air y Live Streams permiten ahora la ordenación por columnas.
  • Los agentes MCP recomiendan automáticamente el dispositivo de arranque según la ocupación real de los recursos disponibles.
  • Mejorada la usabilidad y accesibilidad del formulario de configuración de Destinations YouTube/RTMP.
  • Simplificadas las opciones de recurrencia del Scheduler: se elimina la opción Monthly.
  • Fix: Corregido el arranque de los Channels que utilizan logos.
  • Fix: Mejorada la recuperación automática del PID de audio en streams con múltiples pistas de audio.
  • Fix: Eliminados mensajes repetitivos e innecesarios del log del Encoder relacionados con el cálculo de timestamps de audio.
  • Fix: Al pedir al agente el cambio de la hora de fin de una planificación, el cambio ahora se guarda correctamente.
  • Fix: Corregido un caso en el que el calendario de planificaciones podía mostrarse vacío en determinadas integraciones de agente.
  • Fix: Corregido un error que impedía eliminar un Live stream por residuos de planificaciones eliminadas previamente.
  • Fix: Mejorado el manejo de los parámetros de fecha (por ejemplo, «desde» / «hasta») en las herramientas del agente MCP.

v6.10.6

June 22, 2026

  • Edición de grupos de destinos mediante agente MCP — Un agente MCP puede añadir o eliminar Destinations en un grupo directamente: updatePublishingGroup, getPublishingGroupById y getAllPublishingGroups están disponibles para el agente. Los cambios de grupo en Live streams en emisión o detenidos ya no requieren un paso manual en la interfaz.
  • Fix: Los encodings verticales 9:16 ya no fallan al arrancar con "No active outputs." La selección de salidas se basa ahora en el grupo de encodings en lugar de un campo de aspect ratio a nivel de emisión que ya no se mantiene.
  • Fix: En hardware GPU Nvidia, el crop necesario para la salida vertical se aplica correctamente mediante un paso hwdownload → crop → hwupload_cuda.
  • Fix: Iniciar un Live stream cuyo grupo de destinos no tiene Destinations activos queda bloqueado en la API con el error APIF655 (422), coherente con la validación ya existente en la creación y edición.
  • Fix: Los bloques de evento en las vistas Semana y Día del Scheduler ahora ocupan su contenedor — un evento de 4 horas es visualmente de 4 horas de altura.
  • Fix: La búsqueda por nombre y el orden por columna funcionan de nuevo en las tablas de gestión de Encoding Groups, Destination Groups y Device Groups.
  • Fix: CVE-2026-12143 — dependencia form-data actualizada a 4.0.6 (antes 4.0.5). Sin cambio de comportamiento en runtime.

v6.10.4

June 15, 2026

  • Edición de grupos de destinos en uso — Añade o elimina Destinations mientras el grupo respalda Live streams en emisión; el encoder lo activa sin reiniciar el Live stream.
  • Modelo pool de grupos de destinos — Un grupo admite hasta 20 Destinations; el encoder mantiene activos hasta los publishing points de su licencia, repartiendo los slots dinámicamente.
  • Protección de grupos de encoders de sistema — Los grupos de encoders gestionados por el sistema se ocultan de la lista y rechazan ediciones, para que no se modifiquen por accidente.
  • Validación de entrada al arrancar — Iniciar un Live stream valida el tipo de entrada frente al grupo de encoders on-prem o cloud elegido, y fija las entradas físicas a su Device cableado.
  • EXT-X-PROGRAM-DATE-TIME por segmento en HLS — Las salidas HLS bajo Source-Synchronized Encoding incorporan EXT-X-PROGRAM-DATE-TIME por segmento, manteniendo las señales alineadas entre encoders.
  • La ventana On Air refleja automáticamente los cambios en los grupos de destinos, sin refresco manual.
  • Los agentes MCP solo listan cuentas C21 Live Cloud válidas como dispositivos de inicio de Live stream.
  • El estado de un Live stream vía API y MCP refleja ahora el estado real de publicación de sus Destinations.
  • Las cargas de assets a MediaCopilot se transfieren en passthrough, evitando recodificaciones innecesarias en el servicio.
  • Las descripciones del contrato OpenAPI público se simplifican para centrarse en el comportamiento observable de la plataforma.
  • Fix: Guardar los Destinations seleccionados al crear o editar un grupo desde la interfaz de usuario ya funciona.
  • Fix: Ya se pueden crear Live streams con un grupo de destinos vacío.
  • Fix: Resueltas las inconsistencias al gestionar grupos de destinos usados por emisiones activas.
  • Fix: Mejorada la documentación del endpoint GET /livestreams/{id}/status.

v6.10.3

June 8, 2026

  • Servidor MCP: control por agente ampliado — Un agente de chat o voz dirige directos vía el servidor MCP: ubicación on-prem/cloud por entrada, programación, conmutación en caliente y estado.
  • Las programaciones se crean "cerradas" — asociadas a un grupo de encoders con Destinations activos — así un directo programado ya no falla al arrancar; el editor exige elegir el grupo.
  • Mensajes de error más claros al programar con fechas y zonas horarias.
  • Los Destinations de un solo programa (RTMP, SRT, SDI, Stream) emiten solo la calidad más alta si hay varias rendiciones; los adaptativos (HLS, DASH, CMAF, Enhanced RTMP) las mantienen todas.
  • Refinamientos de logs y estabilidad.
  • Fix: Actualizar la stream key de un Destination (incluido RTMP), incluso con el directo en emisión, ahora se aplica de forma fiable en el encoder.
  • Fix: La conmutación de fuente en caliente hacia una entrada YouTube Live ya no falla al arrancar.
  • Fix: La importación de certificados SSL es más robusta — admite claves EC y aplica el certificado correctamente en el servicio.

v6.10.2

June 3, 2026

  • Instalación de licencia por CLI — Instala un fichero de licencia en el Encoder con liveencoder license install.
  • Gestión de credenciales del Encoder — Muestra y rota las credenciales de registro del Encoder con liveencoder credentials show | reset.
  • Las tablas de listado de Configuración (Sources, Devices, Encodings, Destinations) y External Storage ahora ordenan al hacer clic en la cabecera de columna.
  • Plantilla de configuración del Encoder más limpia — retirados ajustes obsoletos y sin uso; el Encoder ya no gestiona la red ni el NTP del host.
  • Fix: Los Live streams con video codec logo ahora generan HLS estándar, resolviendo la reproducción en negro y el rechazo por reproductores estrictos y sistemas de terceros como AWS MediaPackage.
  • Fix: Dar de alta un Device Encoder desde la UI de Control ya no falla con un error HTTP 500.
  • Fix: La validación de una cuenta C21 Live Cloud sin producto Encoder ahora se completa de forma satisfactoria.
  • Fix: El CLI livecontrol token (crear, listar y revocar bearer tokens) vuelve a funcionar.

v6.10.1

May 27, 2026

Release fundacional

v6.10.1 cierra la transición v5 → v6. Los dos productos — Live Control y Live Encoder — dejan de ser un appliance y pasan a ser un par de servicios componibles que se instalan y actualizan con un único comando sobre los hosts que tú gestionas. Esta release captura la forma de la plataforma de v6 en adelante como referencia; las entradas posteriores v6.10.x y v6.11.x siguen el formato estándar Feature / Improvement / Fix.

v5 → v6.10.1 de un vistazo

v5 (appliance)v6.10.1 (software)
EntregaImagen + hardwareStack Docker, instalador one-liner (por producto)
UI operadorServer-renderedVue 3 sobre un sistema único de design tokens
APIImplícita por featureREST pública + servidor MCP
VersionadoPor componenteUn único git tag (Control + Encoder + MCP + Edge Agent)
SeguridadPatch manualTrivy en CI + SHA-512 + catálogo de tokens + roles
DespliegueReinstall en updateSnapshot de backup + rollback automático

C21 Live Control — orquestación, UI, agentes e integraciones

Live Control es el plano de control de la plataforma. Orquesta Channels, Encodings, Destinations y operaciones de runtime sobre uno o más Encoders, y expone la UI operador, la REST API pública, el servidor MCP y las integraciones externas.

UI — plano de control en Vue 3

Toda la UI operador es Vue 3 sobre un sistema único de design tokens. Cuatro grupos en la barra lateral cubren la operación:

  • Live production — On air, Live streams, Scheduler, Recordings, Biblioteca de Assets.
  • Configuration — Devices, Sources, Encodings, Destinations.
  • Settings — Users, Security, Assets, External Storage, Integrations.
  • System status — Commands y Logs.

Consulta On air y Live streams.

REST API — /c21apiv2

La API pública expone cada superficie operador como endpoints nombrados con operationId — utilizable directamente para scripting e integraciones, y consumida internamente por el servidor MCP.

  • Autenticación bearer con API tokens de primera clase (POST/GET/DELETE /c21apiv2/security/tokens); los tokens heredan el rol del usuario emisor.
  • Catálogo de errores estable con prefijos APIf*, SECf*, SYSf*, DRMf*, MNTs* — los códigos se mantienen entre versiones.
  • Envelope de paginación — cada endpoint de lista devuelve el mismo shape {rows, pagination} (page 1-based, pageSize por defecto 500).
  • Mutaciones idempotentes vía la cabecera Idempotency-Key — los reintentos seguros no duplican efectos.

Consulta REST API.

Servidor MCP — integración con IA y agentes

Live Control entrega su propio servidor MCP (Model Context Protocol), envolviendo un subconjunto curado de la REST API como un catálogo de tools que cualquier cliente compatible con MCP puede llamar.

  • Perfiles del servidor (voice, readonly, operator, full) acotan el catálogo de tools anunciado a cada cliente conectado.
  • Autenticación compartida con la REST API — un único API token autentica ambas superficies; el rol del usuario sigue aplicando.
  • Paridad de auditoría — cada llamada MCP lleva la misma cabecera X-Request-Id que la llamada REST equivalente.

Consulta Servidor MCP.

Seguridad

El baseline v6.10.1 asume red hostil y escenarios de operador adversarial.

  • Política de password. Hashing SHA-512, histórico configurable (3–10), lockout (3–10 intentos fallidos), expiración (1–999 días), timeout de sesión por inactividad (15–60 min). Forzar rotación vía livecontrol security password reset <user>.
  • Roles. Dos roles de producto — System Administrator (superficie completa, incluyendo licencias e integraciones) y Operator (broadcast del día a día). Los API tokens heredan el rol del usuario emisor.
  • Remediación de CVE. Cada imagen Docker gatea sobre Trivy en CI. El conjunto de imágenes v6.10.1 se publica sin CVEs High o Critical conocidos.
  • Enforcement de licencias para C21LiveControl, C21LiveEditor, C21LiveDeploy, C21LiveYouTube, C21LiveEncoder, Multi Publishing Points y UDP Recovery.

Consulta Seguridad y Licencias.

Integraciones

Las integraciones externas son ahora superficies CRUD de primera clase, controladas por el rol System Administrator.

  • C21 Live Cloud. Acceso por cuenta a la plataforma cloud gestionada de Cires21; registrar una cuenta habilita el tipo de Channel Stream – C21 Live Cloud (transportes RTMP, SRT o UDP-R) y sus Destinations cloud equivalentes. Consulta C21 Live Cloud.
  • DRM providers. Multi-DRM vía SPEKE (Widevine, PlayReady, FairPlay) en salidas CMAF, DASH y HLS. El catálogo de proveedores cubre actualmente AXINOM y EZDRM. Consulta DRM.
  • MediaCopilot. Dos caminos hacia el SaaS de MediaCopilot de Cires21 para transcripción, subtitulado, doblaje y generación automática de clips:
    • Live ingest — MediaCopilot aparece como proveedor de Destination sobre HLS; Live Control empuja los segmentos en directo al tenant MediaCopilot configurado durante la emisión, así que el pipeline de MediaCopilot procesa el activo mientras el broadcast sigue al aire.
    • Send-to desde el Editor — una grabación cerrada o un clip cortado de ella en el Editor se exporta vía exportMediaCopilot para procesado asíncrono.

    Ambos caminos comparten la misma cuenta de MediaCopilot configurada en Integrations → MediaCopilot. Controlado por la licencia C21LiveEditor. Consulta MediaCopilot.

C21 Live Encoder — motor de procesado de medios

Live Encoder es el motor de streaming de la plataforma. Captura fuentes, codifica streams y entrega las salidas. Live Control enlaza una o más instancias de Encoder como Devices y las dirige remotamente; el Encoder no tiene UI operador propia.

Pipeline de medios

  • Entradas. SDI, AES/EBU, NDI, SRT, Stream – C21 Live Cloud, MPEG-TS Stream, File, Youtube Live.
  • Encoding. H.264, HEVC, VP9 con aceleración por hardware sobre NVIDIA NVENC y Netint Quadra. Soporte HDR completo (hdr_mode = sdr / bt2020_sdr / hlg / hdr10). Mejoras en CBR.
  • Multi-audio. Procesado de múltiples programas de audio por broadcast — mapeo de tracks y etiquetado de idioma propagados hasta las salidas.
  • Salidas. HLS / TS, DASH, CMAF, RTMP, Enhanced RTMP, SRT, MPEG-TS sobre UDP/RTP, salida SDI (parte ahora de Multi Publishing Points), Recording.
  • Real-Time encoding — pipeline de contribución sub-segundo para escenarios de baja latencia.
  • Señalización SCTE-35 — markers de inserción publicitaria propagados extremo a extremo en salidas HLS / TS.
  • CMAF Ingest (Interface-1) con control de TTL y compatibilidad Unified Streaming.
  • DVB Teletext y OP-47. Soporte de subtitulado a partir de estos dos tipos de entradas.
  • DRM en encode — cifrado por-destination vía claves SPEKE en salidas CMAF, DASH y HLS.
  • Source Synchronized Encoding (SSE) — dos o más codificaciones bloqueadas sobre la misma línea temporal de fuente, produciendo salidas CMAF que se emparejan sin pérdida en downstream.
  • Cambio de fuente mid-broadcast — cambia el Channel fuente de un broadcast en marcha sin detenerlo.
  • Adquisición Youtube Live — tipo de Channel Youtube Live nativo; el Encoder fetch-ea la sesión upstream y la trata como entrada de contribución.

Consulta Sources, Encodings y Destinations.

Despliegue — común a ambos productos

Live Control y Live Encoder publican la misma forma operativa sobre el host: stack Docker levantado por un instalador one-liner, backup antes de cada actualización y una superficie CLI paralela para la operación del día a día.

  • Instaladores one-liner. curl -fsSL https://get.cires21.com/livecontrol | sudo bash levanta el stack del Control; la URL equivalente levanta el Encoder. Ambos exponen --version, --check-only y flags adicionales documentados en Instalación.
  • Backups + rollback. livecontrol backup / livecontrol restore <file> para snapshots de base de datos y configuración en el Control; el Encoder publica un liveencoder backup / restore paralelo. El instalador toma un backup antes de cada actualización y hace rollback automático si algún paso falla.
  • Postura de OS. Control corre sobre Ubuntu 22.04 LTS o 24.04 LTS; Encoder corre sobre Ubuntu 24.04 LTS, kernel ≥ 6.8. Ambos validados contra Ubuntu Pro para despliegues Tier-1 regulados.
  • Superficie CLI. livecontrol status / start / stop / restart / logs / config / backup / restore / update / ssl / security / cleanup / uninstall. El Encoder publica un CLI paralelo liveencoder con subcomandos gpu y streams para diagnóstico en runtime.

Consulta Instalación, Instalación Encoder y Actualizaciones.

Qué viene a continuación

A partir de v6.10.2, las release notes vuelven al formato estándar Feature / Improvement / Fix.

Para el changelog a nivel código fuente, los git tags del producto llevan el histórico de pull requests mergeados.

Copyright © 2026