Instalar C21 Live Encoder
Qué se instala
El producto C21 Live Encoder. El instalador levanta el motor de encoding, auto-detecta los drivers de hardware que el host necesita y configura las unidades systemd que mantienen el encoder en marcha.
El encoder es headless — no tiene UI propia; siempre se controla remotamente desde una instancia de C21 Live Control vía la sección Devices.
Antes de empezar
Verifica que el host cumple los prerrequisitos descritos en Preparar el host. Mínimo:
- Ubuntu 24.04 LTS, kernel ≥ 6.8, x86_64
- 4 cores / 8 GiB RAM / 50 GiB libres en
/ - Salida HTTPS hacia
get.cires21.comy Docker Hub - Hora sincronizada, DNS público resuelto
- Puertos
80,443,8484libres y, si vas a emparejarlo con Control, alcanzables desde la IP / subnet del host de Control
Pasos
1. Ejecuta el instalador one-liner
curl -fsSL https://get.cires21.com/liveencoder | sudo bash
El instalador:
- Verifica los requisitos del host.
- Auto-detecta el hardware (GPU, capturadoras, ASI, NICs) y ofrece instalar los drivers correspondientes.
- Instala Docker si hace falta y descarga el set de imágenes del encoder.
- Configura la unidad systemd y arranca el servicio.
- Cuando se requiere una actualización de kernel para cargar un driver, el instalador reinicia el host y retoma la instalación automáticamente tras el reboot.
Si vas a emparejar este encoder con un Control de inmediato y no necesitas el detector de hardware (por ejemplo, en una VM cloud sin capturadoras), añade --skip-drivers -y al final:
curl -fsSL https://get.cires21.com/liveencoder | sudo bash -s -- --skip-drivers -y
2. Obtén el fingerprint del host
Para solicitar la licencia, obtén el fingerprint con:
sudo liveencoder license info
La salida incluye:
C21 Live Encoder — License binding info
========================================
Host fingerprint: ac8933aa237c9efd017598081c7a10d1
License file: /opt/data/config/license.txt
Current license: (not installed)
Required product slots: C21LiveEncoder, Multi Publishing Points (opcional), UDP Recovery (opcional)
Envía el Host fingerprint a tu representante de Cires21 junto con los slots de producto que tu contrato cubre.
3. Instala la licencia
Cires21 te enviará un fichero license.txt:
[C21LiveEncoder]
Expiration=31-12-3000
Quantity=2
Key=<key-1>
[Multi Publishing Points]
Expiration=31-12-3000
Quantity=4
Key=<key-2>
Instálalo:
sudo liveencoder license install /ruta/a/license.txt
sudo liveencoder restart
sudo liveencoder license verify
license verify imprime cada slot con status: true. El log del servicio confirma la activación:
INFO [license] License for 2 channels found
INFO [license] License for 4 Publishing Points found
4. Empareja con una instancia de Live Control
Una vez instalado y licenciado el encoder, regístralo en una instancia de Live Control existente. Desde la UI de Control:
- Abre Devices → Add device.
- Rellena los campos:
Campo UI Valor Alias Nombre visible del encoder. Server IP IP LAN del encoder (la API la persiste como ip_address).Enabled Déjalo activo para operación normal. Register username El usuario admin integrado del encoder ( admin).Register password El password de admin— ver la nota de abajo para leerlo o rotarlo. - Guarda. Control hace handshake con el encoder, obtiene un remote token y lo persiste. La fila del Device aparece con
registration_status: registeredyauthed: true.
El Encoder incluye un único usuario admin, admin. En el host del encoder, liveencoder credentials show imprime el usuario a introducir aquí más el host fingerprint, y liveencoder credentials reset genera un password fuerte y lo muestra una sola vez — ejecútalo antes de registrar si no conoces ya el password.
Las credenciales del encoder son one-time, usadas solo en el registro. Una vez obtenido el remote token, el encoder autentica con ese token; rotar las credenciales del encoder de nuevo es un flujo de re-registro.
Plataforma soportada
| Sistema operativo | Ubuntu 24.04 LTS, x86_64 |
| Kernel | ≥ 6.8 |
| Permisos | root o sudo |
| CPU (mínimo / recomendado) | 4 cores / 8+ cores |
| RAM (mínimo / recomendado) | 8 GiB / 16+ GiB |
| Disco (mínimo / recomendado) | 50 GiB / 200+ GiB (almacenamiento de grabaciones) |
| Puertos de red | 80, 443, 8484 disponibles en el host |
Docker se instala automáticamente si no está ya presente.
Flags del instalador
| Flag | Efecto |
|---|---|
--unattended, -y, --yes | Modo no interactivo. |
--version <X> | Instala una versión específica. |
--check-only | Verifica requisitos sin instalar. |
--upgrade | Actualiza una instalación existente. |
--uninstall | Elimina la instalación. |
--drivers <set> | Subconjunto de drivers a instalar (ver tabla abajo). |
--skip-drivers | Omite la detección / instalación de drivers. |
--skip-gpu-check | Omite el chequeo de GPU. |
--skip-docker-images | No descarga las imágenes Docker en esta ejecución. |
--asi-source <ppa|source> | Cómo instalar el driver AudioScience ASI. |
--blackmagic-version <v> | Versión del driver Blackmagic DeckLink. |
--nic-drivers | Instala los drivers NIC (Broadcom + Mellanox DOCA-OFED). |
--keep-data | Al desinstalar, preserva los datos. |
--remove-data | Al desinstalar, elimina los datos. |
--debug | Logs verbosos. |
--help, -h | Imprime el listado. |
Variables de entorno
| Variable | Efecto |
|---|---|
PRODUCT_VERSION | Pinear una versión específica. |
ENCODER_DOWNLOAD_URL | Override del CDN del tarball. |
ASI_METHOD | Método de instalación del driver ASI. |
BLACKMAGIC_VERSION | Versión del driver Blackmagic. |
UNATTENDED=1 | Modo no interactivo. |
DEBUG=1 | Logs verbosos. |
Drivers de hardware
El instalador auto-detecta el hardware disponible y ofrece instalar el driver correspondiente. Cada driver es independiente — instala solo lo que necesite el deploy.
| Driver | Propósito |
|---|---|
| Blackmagic DeckLink | Captura SDI para Channels de tipo SDI. |
| NVIDIA GPU | Encoding por hardware NVENC — requerido para encoding HDR (hevc + hdr_mode != sdr). |
| NVIDIA Container Toolkit | Expone la GPU a los contenedores encoder. |
| AudioScience ASI | Captura DVB-ASI. |
| Broadcom NIC + Mellanox DOCA-OFED | Requerido en hosts Supermicro H12SSW-NT; activado con --nic-drivers. |
| NETINT Quadra VPU | Encoder por hardware alternativo — también soporta encoding HDR. |
En hosts sin hardware multimedia (por ejemplo VMs cloud), todos los detectores se saltan limpiamente. Pasa --skip-drivers para omitir incluso la fase de detección si quieres una instalación más rápida y silenciosa.
Puertos de red
El encoder escucha en:
- 80/tcp — Apache HTTP (API).
- 443/tcp — Apache HTTPS (API).
- 8484/tcp —
c21publisher(entrega de salidas).
Solo loopback: 11234, 11235 (c21publisher control), 25 (exim4 — entrega de mail interna).
Cuando emparejas el encoder con un Control, restringe los puertos 80 / 443 / 8484 inbound a la IP o subnet del host de Control vía ufw (consulta Preparar el host).
Operación diaria
El CLI liveencoder se instala junto al motor. Ejecútalo siempre con sudo.
sudo liveencoder status # Estado del servicio + GPU + streams activos
sudo liveencoder start
sudo liveencoder stop
sudo liveencoder restart
sudo liveencoder logs [-f] [-n N] # Tail
sudo liveencoder version # Versión CLI + versión del binario encoder
sudo liveencoder backup [name]
sudo liveencoder restore <fichero>
sudo liveencoder gpu # Estado GPU vía nvidia-smi (NVIDIA-only)
sudo liveencoder streams # Procesos FFmpeg / SRT activos
sudo liveencoder config [show|edit|path]
sudo liveencoder support # Genera bundle de soporte para Cires21
sudo liveencoder update [version] # `--check`, `--no-backup`, `--force`
sudo liveencoder uninstall # `--force`, `--remove-data`, `--keep-data`
sudo liveencoder license info # Host fingerprint + estado
sudo liveencoder license install <fichero>
sudo liveencoder license verify
sudo liveencoder credentials show # Usuario de registro + fingerprint + estado del password
sudo liveencoder credentials reset # Genera un password admin fuerte (mostrado una vez)
liveencoder backup produce ficheros cifrados en /var/backups/c21/system/<name>.tar.gz con retención de 7 días.
Cross-links
- Preparar el host — DNS, NTP, ufw, swap antes del install.
- Instalar C21 Live Control — la instancia de Control con la que se empareja.
- Actualizaciones — flujo de actualización para el encoder.
- Licencias — la licencia
C21LiveEncoder(por-host) y los add-ons opcionales. - Devices — referencia de la sección Devices; aquí aterriza el encoder registrado.
- Encodings — el fieldset Color & HDR; HDR requiere GPU (NVIDIA NVENC) o VPU (Netint Quadra) en el encoder.