La interfaz web
Inicio de sesión
Section titled “Inicio de sesión”La interfaz escucha por defecto en el puerto 8080. Las credenciales proceden de las variables de entorno CASTMUX_WEB_USERNAME y CASTMUX_WEB_PASSWORD definidas al iniciar el contenedor; no hay un almacén de usuarios aparte ni un asistente de creación de cuenta en el primer arranque.
Un inicio de sesión correcto establece una cookie de sesión que dura siete días. Se eligen siete días para que un operador que revisa la cabecera semanalmente no tenga que autenticarse en cada visita, y para que un portátil olvidado en un armario acabe dejando de ser una vía de entrada.
Una sola cuenta, por ahora
Section titled “Una sola cuenta, por ahora”Hay una única cuenta de administrador. Todo el que inicia sesión tiene control total: puede editar canales, cambiar los valores predeterminados del motor y reiniciar el equipo.
Esto no es suficiente para una instalación en la que necesitan acceso tanto el personal de recepción como el instalador, y conviene decirlo claramente en lugar de disimularlo. Recepción necesita ver si un canal está en el aire y quizá reiniciarlo; no necesita poder cambiar la interfaz de salida. Una contraseña compartida significa que o bien las credenciales del instalador circulan entre el personal, o bien el personal no tiene acceso alguno y cualquier pregunta trivial se convierte en una visita técnica.
Varios usuarios con roles distintos figuran en la hoja de ruta. Hasta entonces, la mitigación realista es a nivel de red: restrinja qué direcciones pueden llegar al puerto 8080.
Disposición
Section titled “Disposición”La navegación superior contiene las cuatro áreas de trabajo y dos controles:
| Elemento | Qué es |
|---|---|
| UDP channels | La página principal. Una tarjeta por canal multicast. |
| HDMI channel | Configuración de la salida HDMI local, si el equipo tiene una. |
| DVB-C | Configuración de los múltiplex y estado del modulador. |
| Settings | Valores predeterminados de todo el equipo e identificación de la instalación. |
| Selector de tema | Claro u oscuro. Se guarda en el navegador, no en el equipo. |
| Sign out | Borra la cookie de sesión. |
El pie de página
Section titled “El pie de página”El pie de página está presente en todas las páginas y muestra el estado del propio equipo: versión, carga de CPU, uso de memoria, temperatura de la CPU y bitrate de red por interfaz. Se actualiza cada quince segundos.
Dos de estos valores son más útiles de lo que parece a primera vista. La temperatura de la CPU importa porque el hardware de referencia no tiene ventilador y vive en un armario, y una rejilla de ventilación obstruida aparece aquí semanas antes de manifestarse como inestabilidad. El bitrate por interfaz es la forma más rápida de confirmar que el tráfico sale por la interfaz que usted cree: si la NIC que da a los televisores no muestra nada mientras la NIC de gestión muestra varios megabits, la ruta multicast apunta al sitio equivocado; consulte Instalación → enrutamiento multicast.
La página de canales
Section titled “La página de canales”Una tarjeta por canal. La tarjeta está diseñada para que la pregunta «¿está este canal en el aire?» pueda responderse sin abrir nada.
El interruptor de activación
Section titled “El interruptor de activación”Habilita o deshabilita el canal. Un canal deshabilitado no se inicia en ninguna circunstancia, independientemente de los espectadores o del ajuste always-on. Es el interruptor que debe usar para dejar un canal fuera de servicio; eliminarlo hace perder la configuración.
Insignias
Section titled “Insignias”always-on / on-demand
Si el canal funciona de forma continua o solo mientras alguien lo ve. Un canal bajo demanda que no muestra actividad ni espectadores se está comportando correctamente, no está fallando: una distinción que conviene recordar antes de notificar una avería.
número de espectadores
Cuántos clientes se han unido al grupo multicast de este canal, obtenido a partir de la pertenencia IGMP observada y no supuesto. Pase el cursor por encima para ver las direcciones de cada cliente; así es como se confirma que el televisor de la habitación 214 es el que realmente lo está viendo.
motor
Qué motor usa este canal. Conviene comprobarlo antes de leer los indicadores de métricas, porque los dos motores no rellenan los mismos indicadores.
perfil de resolución
El escalón de calidad solicitado y, entre paréntesis, lo que realmente tenía el servidor de origen. Véase más abajo.
La insignia de resolución en ámbar
Section titled “La insignia de resolución en ámbar”Un perfil de resolución solicita un escalón de la escalera de calidades de la fuente: 4K, Full HD, HD, SD o mobile. Los servidores de origen publican las escaleras que les parece, así que con frecuencia el escalón solicitado no existe. Castmux selecciona la altura disponible más cercana en lugar de negarse a arrancar, porque un canal que emite en 480p cuando usted pidió 576p es mejor que un canal que no arranca porque nadie sirve exactamente 576p.
Cuando la coincidencia no es exacta, la insignia muestra ambos valores —4K (1080p) significa que se pidió 4K y que 1080p es lo que ofrecía el servidor de origen— y se colorea en ámbar.
Perfiles de resolución describe las reglas de selección, incluido por qué se rechaza directamente una escalera con el audio entregado por separado.
El banner de licencia
Section titled “El banner de licencia”Encima de las tarjetas, un banner muestra el estado de la licencia del equipo. Su color indica lo que importa: si los canales están en el aire.
| Color | Significado |
|---|---|
| Verde | Con licencia. Se muestran el plan y el límite de canales. |
| Ámbar | Emitiendo, pero algo requiere atención: no se puede acceder al servidor de licencias y el equipo funciona con su licencia almacenada, o se han rechazado canales suministrados por el servidor de licencias. Se indica el motivo. |
| Azul | En espera: el equipo se está registrando o está pendiente de aprobación. Todavía no se emite nada. |
| Rojo | La emisión está bloqueada; se indican el motivo y a quién contactar. |
El código de dispositivo se muestra a la derecha. Es lo que pide el soporte técnico y lo que identifica a este equipo cuando se aprueba. Mientras la licencia no esté activa, un botón Retry realiza la comprobación de inmediato. El equipo también lo reintenta por sí solo cada cinco minutos mientras está bloqueado, así que el botón es para cuando acaba de corregir la causa. La página se recarga unos segundos después, porque una comprobación puede añadir, eliminar o modificar canales suministrados por la licencia.
Cuando no se emite nada, este banner es lo primero que hay que mirar. La interfaz web está disponible deliberadamente aunque no se pueda acceder al servidor de licencias, precisamente para que este banner pueda indicar el motivo. Consulte Acceso a Internet.
Indicadores de métricas
Section titled “Indicadores de métricas”| Indicador | Qué es | Source |
|---|---|---|
| Bitrate | La tasa que el motor notifica para el flujo que está procesando. | Notificado por el motor |
| Speed | Si el canal sigue el ritmo del tiempo real. Cualquier valor claramente inferior a 1× significa que se está quedando atrás. | Notificado por el motor |
| Uptime | Cuánto tiempo lleva funcionando este canal desde su último arranque. Un tiempo de funcionamiento corto en un canal que nadie ha tocado es la firma de un bucle de reinicios. | Castmux |
| UDP bitrate | Lo que realmente sale por la interfaz de red para este grupo. | Medido en el cable |
| Source ping | Tiempo de ida y vuelta al servidor de origen. Un aviso temprano útil: si el ping a la fuente empeora antes de que un canal se vuelva inestable, el problema apunta a la red, no a Castmux. | Castmux |
La distinción de la última columna es la importante. Las cifras notificadas por el motor describen lo que un proceso cree estar haciendo; el bitrate UDP describe lo que ha ocurrido. Cuando no coinciden, el bitrate UDP tiene razón. También es el único indicador que se rellena igual con ambos motores: el motor pass-through nunca descodifica el vídeo, así que no tiene frecuencia de fotogramas ni velocidad que notificar, y esos indicadores estarán vacíos en un canal pass-through perfectamente sano.
Los indicadores son una instantánea en directo. Para ver el historial, use el botón Stats de la tarjeta: muestra gráficas de los últimos 30 minutos del flujo que realmente sale del equipo, con los errores desglosados: errores de continuidad y de transporte, precisión de PCR y bitrate con su dispersión. Es la vista que indica si una imagen que “a veces se pixela” se está dañando antes de llegar al equipo o después.
Acciones de la tarjeta
Section titled “Acciones de la tarjeta”Cinco botones: Preview, Logs, Stats, Edit y Delete. Stats abre gráficas de la calidad del transport stream del canal —bitrate, precisión de PCR y errores de transporte durante la última media hora—, descritas en Calidad del transport stream. Delete pide confirmación y elimina el canal de la configuración; no hay forma de deshacerlo salvo restaurar una copia de seguridad del directorio de configuración. En un canal suministrado por el servidor de licencias, Edit y Delete están desactivados, porque la siguiente comprobación de licencia los desharía; consulte Canales suministrados por la licencia.
Un canal asociado a una guía de programación también muestra qué se emite ahora y qué viene a continuación.
Añadir y editar un canal
Section titled “Añadir y editar un canal”El mismo cuadro de diálogo sirve para ambas cosas. Campos:
Name
Se usa en la interfaz y en los registros y, con el motor pass-through, se convierte en el nombre de servicio que se transmite en el transport stream, así que es lo que puede mostrar un televisor.
Source type
HLS, SRT, RTMP o MPEG-TS (por UDP multicast o HTTP). Consulte Tipos de fuente.
Source URL
De dónde se obtiene el canal. Para HLS, normalmente es la lista de reproducción maestra.
Destination address
El grupo multicast. Use el rango de ámbito administrativo, 239.0.0.0/8.
Destination port
El puerto UDP. Cada canal necesita su propia combinación de grupo y puerto.
Engine
Pass-through o remultiplexado, lo que anula el valor predeterminado del equipo para este canal.
Resolution profile
Qué escalón de la escalera HLS seleccionar, o vacío para aceptar lo que el servidor de origen ponga primero. Vacío es el valor predeterminado y el que tienen todos los canales preexistentes.
Force always-on
Hace que el canal funcione de forma continua en lugar de solo mientras tiene espectadores.
Los cambios surten efecto en el siguiente arranque del canal, así que editar un canal en funcionamiento lo reinicia.
Vista previa
Section titled “Vista previa”La vista previa reproduce el canal en el navegador. Para ello vuelve a leer la propia salida multicast del canal en lugar de abrir una segunda conexión con el servidor de origen, lo que significa que lo que ve es lo que están recibiendo los televisores, incluida cualquier avería introducida entre el motor y el cable. Una vista previa que falla del mismo modo que un televisor es realmente informativa; una vista previa que descargara por separado desde la fuente no lo sería.
Registros
Section titled “Registros”Cada canal mantiene su propio búfer circular de líneas de registro: 1000 entradas o 24 horas, lo que se alcance antes. El botón Logs de la tarjeta lo abre.
Por canal y no como un flujo combinado, porque la pregunta que se plantea casi siempre se refiere a un canal, y en un equipo de veinte canales un registro combinado entierra las seis líneas relevantes bajo varios miles de líneas irrelevantes. El búfer está en memoria y no sobrevive a un reinicio, así que capture lo que necesite antes de reiniciar el contenedor.
La página DVB-C
Section titled “La página DVB-C”Donde los canales IP se agrupan en un múltiplex sobre una portadora de RF real: estado del modulador, composición del múltiplex y parámetros de la portadora. Está presente haya o no un modulador instalado. Todos los detalles están en Multiplexación DVB-C.
La página EPG
Section titled “La página EPG”Donde se añaden las fuentes de la guía de programación y se asocian los canales a sus entradas de la guía: la última descarga de cada fuente y su resultado, un botón Sync now y un campo de asociación por canal que sugiere identificadores de guía mientras escribe. Consulte Guía de programación (EPG).
La página HDMI
Section titled “La página HDMI”Configuración de la salida HDMI local del equipo: un único canal reproducido en una pantalla conectada directamente, normalmente para una pantalla de vestíbulo o de sala de espera. Consulte Salida HDMI.
Settings
Section titled “Settings”Valores de todo el equipo, en cuatro tarjetas.
Global Settings
Location y Re-Seller. Location es algo más que una etiqueta: identifica la instalación en las métricas exportadas, se comunica al servidor de licencias como nombre de la instalación y es el nombre de red DVB-C que muestran los televisores durante la búsqueda, salvo que se defina un nombre de red más abajo. Re-Seller identifica al instalador o partner responsable de la instalación y también etiqueta las métricas exportadas.
UDP Settings
El Streaming Engine que usan los canales que no eligen el suyo propio, y el UDP Device: la dirección de origen desde la que se envía el multicast saliente. No decide por qué interfaz salen los paquetes; eso lo decide la tabla de rutas del kernel; consulte Instalación → enrutamiento multicast. En Advanced overrides se encuentran los dummy listeners y los ajustes automáticos de latencia SRT y tamaño de paquete UDP, descritos en la Referencia de configuración.
DVB-C Network
Ajustes de la red de cable en su conjunto y no de una frecuencia: nombre e ID de red, QAM y tasa de símbolos, el juego de caracteres del texto de la guía de programación y los slots de reserva. Consulte Multiplexación DVB-C.
License
Datos de licencia de solo lectura: el código de dispositivo, el plan, el cliente, el número de canales con licencia, cuándo finaliza la suscripción, cuándo se registró el equipo, su última comprobación, cuándo se renueva la licencia y el id de licencia. Recheck licence & channels realiza la comprobación de inmediato. A diferencia del botón Retry del banner, está siempre disponible, porque también es la forma de obtener un cambio de parrilla del servidor de licencias sin esperar a la siguiente comprobación.
No todos los guardados son inocuos para lo que está en el aire:
- Global Settings se aplica sin interrumpir nada.
- UDP Settings cambia la forma en que se inicia cada motor, así que guardarlo reinicia todos los canales activos. Un cambio en UDP Device también reconstruye todos los múltiplex DVB-C.
- Los valores de DVB-C Network forman parte de la configuración del modulador y de la señalización de los múltiplex, así que guardarlos reconstruye todos los múltiplex. Todas las portadoras se caen mientras dura el proceso, y los televisores conectados al cable pierden toda la parrilla durante unos segundos.
Guarde estos dos últimos en un momento tranquilo.
Los ajustes de emisión bajo demanda e IGMP no están en esta página. Se definen en el archivo de configuración; consulte Emisión bajo demanda y la Referencia de configuración.
Lo que deliberadamente no está aquí
Section titled “Lo que deliberadamente no está aquí”Las cadenas de parámetros en bruto del motor no se exponen en la interfaz. Existen y pueden definirse en /config/config.yaml —consulte la Referencia de configuración—, pero no se pueden editar desde un navegador.
El motivo es el alcance del daño. Una cadena de parámetros mal formada no estropea un canal: estropea la invocación del motor para todos los canales que la usan, y lo hace en el momento en que arranca el siguiente canal, no en el momento en que se cometió el error. Ponerlo tras un cuadro de texto en una página de ajustes, donde una edición de aspecto razonable deja fuera del aire toda una instalación a las tres de la tarde, no compensa para el pequeño número de instalaciones que lo necesitan. Editar el archivo en su lugar es un freno deliberado: requiere acceso a la shell, produce algo que se puede comparar con diff y no es algo que nadie haga por accidente.
Acciones del sistema
Section titled “Acciones del sistema”Restart all streams
Detiene y reinicia todos los canales sin reiniciar el equipo. Los canales vuelven de forma escalonada, con unos tres segundos de separación, así que en una instalación grande tarda aproximadamente un minuto en completarse. El escalonado no es estético: arrancarlo todo a la vez satura el enlace ascendente hacia las fuentes y hace que todos los canales fallen a la vez.
Reboot
Reinicia el equipo. Conviene recurrir a ello menos a menudo de lo que dicta el instinto: un reinicio no puede arreglar una ruta multicast que apunta a la interfaz equivocada, ni tampoco una fuente que ha dejado de servir. Si un reinicio parece solucionar un problema que luego vuelve, el reinicio no era la solución.