Ir al contenido

Guía de programación (EPG)

Un huésped que pulsa el botón de la guía espera ver qué se emite ahora, qué viene después y qué hay esta noche. Sin información de programación, el televisor muestra una cuadrícula vacía, y eso llama la atención de una forma en que la mayoría de las averías de cabecera no lo hacen.

Castmux la rellena a partir de XMLTV, el formato de intercambio habitual para datos de guía. Usted añade una o más fuentes XMLTV y asocia cada canal a su entrada en la guía. A partir de ahí, el equipo mantiene actualizados los datos de la guía y los envía a los televisores como tablas DVB Event Information Table (EIT), igual que hace un radiodifusor. El descodificador no necesita ninguna configuración para mostrarla.

Todo se configura en la página EPG de la interfaz web.

Una fuente es la URL de un archivo XMLTV tal como lo publica un proveedor de guías. Las guías comprimidas (.gz) se aceptan tal cual.

Al añadir una fuente, Castmux la descarga y lee su lista de canales: el identificador de guía de cada canal (por ejemplo rtl.de) y su nombre visible. Todavía no almacena los programas. Un archivo XMLTV puede ocupar cientos de megabytes, y no merece la pena ocupar espacio con programas de canales que nadie ha asociado.

Una fuente puede renombrarse, apuntarse a una URL nueva o eliminarse. Al eliminar una fuente se borran sus datos de guía almacenados. Los canales asociados a ella conservan su identificador de guía hasta que usted lo borre, de modo que una fuente de sustitución que use los mismos identificadores continúa donde lo dejó la anterior.

Cada canal se asocia a un identificador de guía de las listas importadas. La página EPG propone los identificadores mientras escribe. La asociación se guarda en el propio canal, como epg_id en el archivo de configuración, así que se incluye en las copias de seguridad y se restaura junto con el resto de los ajustes del canal.

Un canal sin asociación no transporta datos de guía. La asociación es por canal, así que una instalación puede asociar los canales que tienen datos de guía y dejar los demás como están.

Cada fuente se vuelve a descargar una vez por hora. En cada sincronización, los programas se almacenan solo para los identificadores de guía que tienen al menos un canal asociado. Todo lo demás del archivo se lee y se descarta sin tocar el disco. Los programas terminados se eliminan, de modo que el almacén contiene solo lo que se emite ahora y lo que está por venir.

Sync now en una fuente la descarga de inmediato e informa del resultado real; es el botón que debe usar tras añadir una fuente o cambiar una asociación. Con una guía grande puede tardar unos minutos.

Los datos de guía se guardan en un pequeño archivo de base de datos, epg.db, junto al archivo de configuración.

Para cada canal asociado, el equipo escribe los programas actuales y próximos como EIT y los añade al transport stream del canal. Esto cubre tanto la información de ahora y a continuación como la programación de más adelante. Funciona en la salida multicast y en DVB-C: un canal transportado en un múltiplex conserva su EIT, renumerada para su servicio en ese múltiplex.

Los detalles que conviene conocer:

  • Las horas de la guía proceden del reloj del equipo. Mantenga la hora del equipo correcta, por ejemplo con NTP. Un reloj del sistema erróneo muestra el programa equivocado como “ahora” en todos los televisores.
  • Las actualizaciones llegan a los canales en marcha sin reiniciarlos. La EIT se vuelve a leer a medida que cambian los datos de guía, así que una sincronización horaria aparece en pantalla en cuestión de segundos y no se interrumpe ningún canal.
  • Un canal recién asociado empieza a transportar EIT en su siguiente arranque. Asocie el canal, ejecute Sync now y reinicie el canal: apáguelo y vuelva a encenderlo, o llame a POST /api/channels/{id}/restart.
  • Un canal asociado sin programas muestra un hueco rotulado. Si la guía aún no tiene nada para un canal, o ha dejado de listarlo, el televisor muestra “No information available” (no hay información disponible) en bloques de cuatro horas en lugar de una guía vacía, y el canal sigue emitiéndose.
  • Los caracteres acentuados necesitan el juego de caracteres adecuado. Por defecto, el texto de la guía se codifica en el juego de caracteres predeterminado de DVB, que algunos receptores descodifican mal, normalmente con diéresis estropeadas. Ajuste el juego de caracteres de la EPG en Settings (epg_charset bajo global.dvb) al que esperan los receptores de la instalación. ISO-8859-15 es el adecuado para Europa occidental, y un parque de receptores moderno puede usar UTF-8.

La tarjeta de cada canal asociado en la página Channels muestra lo que se emite ahora y lo siguiente, de modo que puede comprobar una asociación sin tener un televisor a mano. Un canal asociado que no tiene nada en emisión en ese momento lo indica, y no es una avería: las guías tienen huecos.

La página EPG lista cada fuente con la hora de su última descarga y si tuvo éxito; es el primer sitio que debe mirar cuando la guía de los televisores deja de avanzar.