EIT Stream
EIT Stream es una herramienta para convertir archivos XMLTV en un flujo MPEG-TS con Tablas de Información de Eventos (EIT) para redes de transmisión como DVB, ATSC, ISDB.
Instalación
Sección titulada «Instalación»Solo descarga el archivo binario y dale permisos de ejecución:
curl -Lo /usr/bin/eit-stream http://cesbo.com/and/eit-streamchmod +x /usr/bin/eit-streamConfiguración
Sección titulada «Configuración»Crea un archivo de configuración /etc/eit-stream.conf con cualquier editor de texto. Ejemplo:
xmltv = /opt/xmltv.xmloutput = udp://lo@239.0.0.1:1234onid = 8000codepage = 5eit-days = 1eit-rate = 1500
[tdt-tot]country = ESToffset = +120
# Primer multiplex
[multiplex]tsid = 1
[multiplex/service]pnr = 101xmltv-id = discovery
[multiplex/service]pnr = 102xmltv-id = history
# Segundo multiplex
[multiplex]tsid = 2xmltv = /opt/xmltv-2.xml
[multiplex/service]pnr = 201xmltv-id = euronewsLas líneas que comienzan con el símbolo # son comentarios y se ignoran.
Opciones generales
Sección titulada «Opciones generales»xmltv- ruta al archivo xmltv local, o enlace http/https a un archivo xmltv o xmltv comprimido en gzip. Esta opción puede redefinirse en[multiplex]o en[multiplex/service]output- dirección UDP de destinoonid- identificador de red originalcodepage- codepage. Esta opción puede redefinirse en[multiplex]o en[multiplex/service]eit-days- número de días en la guía EPG. Por defecto es 3eit-rate- bitrate en kbit/s. Por defecto 15 kbit/s por cada servicio
Codepages soportados
Sección titulada «Codepages soportados»Los siguientes codepages están disponibles para la codificación de texto:
0- Predeterminado. Latín (ISO 6937)1- Europa Occidental (ISO 8859-1)2- Europa Central (ISO 8859-2)3- Europa del Sur (ISO 8859-3)4- Europa del Norte (ISO 8859-4)5- Cirílico (ISO 8859-5)6- Árabe (ISO 8859-6)7- Griego (ISO 8859-7)8- Hebreo (ISO 8859-8)9- Turco (ISO 8859-9)10- Nórdico (ISO 8859-10)11- Tailandés (ISO 8859-11)13- Báltico (ISO 8859-13)14- Céltico (ISO 8859-14)15- Europa Occidental (ISO 8859-15)21- UTF-8
Opciones de fecha y hora
Sección titulada «Opciones de fecha y hora»Sección [tdt-tot]:
country- código de país en formato ISO 3166-1 alfa-3offset- diferencia horaria en minutos respecto a GMT. Por ejemplo +120 es GMT+2 o -300 es GMT-5
Opciones de multiplex
Sección titulada «Opciones de multiplex»Sección [multiplex]
tsid- identificador del flujo de transporte del multiplexname- campo opcional para describir el multiplex
Opciones de servicio
Sección titulada «Opciones de servicio»Sección [multiplex/service]
pnr- número de canal/pnrxmltv-id- id del canal en xmltvparental-rating- restricción de edad. El valor se define en pares: país y edad. Por ejemplo:parental-rating = EST 16 USA 14. Código de país en formato ISO 3166-1 alfa-3 (3 letras). Edad de 4 a 18 (inclusive), 0 - sin restricciones.
Multiplexar flujo con EIT a MPTS
Sección titulada «Multiplexar flujo con EIT a MPTS»Con Astra puedes añadir el flujo UDP con EIT al MPTS.
En la configuración de MPTS añade la entrada y establece la dirección UDP, por ejemplo en la configuración anterior la dirección es udp://lo@239.0.0.1:1234.
En la configuración avanzada de MPTS activa la opción “Pass EIT”.
Usa la opción no_eit en otras entradas para desactivar EIT de otras fuentes.
Inicio automático
Sección titulada «Inicio automático»Registra el servicio en systemd para iniciar el servicio en segundo plano y arrancar automáticamente al iniciar el sistema. Crea el archivo /etc/systemd/system/eit-stream.service:
[Unit]Description=eit-stream serviceAfter=network-online.target
[Service]Type=simpleExecStart=/usr/bin/eit-stream /etc/eit-stream.confKillMode=processRestart=on-failure
[Install]WantedBy=multi-user.targetEl siguiente comando puede usarse para gestionar el servicio:
- iniciar servicio:
systemctl start eit-stream - detener servicio:
systemctl stop eit-stream - habilitar inicio automático:
systemctl enable eit-stream - deshabilitar inicio automático:
systemctl disable eit-stream
Recarga
Sección titulada «Recarga»Para reiniciar el servicio una vez por la noche añade la siguiente línea en /etc/crontab:
0 2 * * * root systemctl restart eit-streamFormato XMLTV
Sección titulada «Formato XMLTV»XMLTV es un formato basado en XML para describir información de la programación de TV. Proporciona un mecanismo para almacenar información de canales, horarios de programas y sus metadatos asociados.
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE tv SYSTEM "xmltv.dtd"><tv generator-info-name="Some tv generator"> <channel id="1"> <display-name lang="en">Channel 1</display-name> <icon src="http://site.domain/1.png"/> </channel> <channel id="2"> <display-name lang="en">Channel 2</display-name> <icon src="http://site.domain/2.png"/> </channel> <programme start="20180920140000 +0300" stop="20180920141500 +0300" channel="1"> <title lang="en">Program title 1</title> <desc lang="en">Program description 1</title> <date>Program release date 1</date> <category lang="en">Category 1</category> <category lang="en">Category 2</category> </programme> <programme start="20180920150000 +0300" stop="20180920141600 +0300" channel="1"> <title lang="en">Program title 2</title> <desc lang="en">Program description 2</title> <date>Program release date 2</date> <category lang="en">Category 1</category> </programme> <programme start="20180920143000 +0300" stop="20180920141500 +0300" channel="2"> <title lang="en">Program title 3</title> <desc lang="en">Program description 3</title> <date>Program release date 3</date> <category lang="en">Category 1</category> <category lang="en"> Category 2</category> </programme></tv>