EIT Stream
O EIT Stream é uma ferramenta para converter arquivos XMLTV em stream MPEG-TS com tabelas de informação de eventos (EIT) para redes de transmissão como DVB, ATSC e ISDB.
Instalação
Seção intitulada “Instalação”Basta baixar um único arquivo binário e dar permissão de execução:
curl -Lo /usr/bin/eit-stream http://cesbo.com/and/eit-streamchmod +x /usr/bin/eit-streamConfiguração
Seção intitulada “Configuração”Crie o arquivo de configuração /etc/eit-stream.conf com qualquer editor de texto. Exemplo:
xmltv = /opt/xmltv.xmloutput = udp://lo@239.0.0.1:1234onid = 8000codepage = 5eit-days = 1eit-rate = 1500
[tdt-tot]country = ESToffset = +120
# First multiplex
[multiplex]tsid = 1
[multiplex/service]pnr = 101xmltv-id = discovery
[multiplex/service]pnr = 102xmltv-id = history
# Second multiplex
[multiplex]tsid = 2xmltv = /opt/xmltv-2.xml
[multiplex/service]pnr = 201xmltv-id = euronewsAs linhas que começam com o símbolo # são comentários e são ignoradas.
Opções gerais
Seção intitulada “Opções gerais”xmltv- caminho para o arquivo xmltv local, ou link http/https para um arquivo xmltv ou xmltv em gzip. Esta opção pode ser redefinida em[multiplex]ou em[multiplex/service]output- endereço UDP de destinoonid- identificador da rede originalcodepage- página de código. Esta opção pode ser redefinida em[multiplex]ou em[multiplex/service]eit-days- número de dias no epg. O padrão é 3eit-rate- bitrate em kbit/s. Padrão de 15 kbit/s para cada serviço
Páginas de código suportadas
Seção intitulada “Páginas de código suportadas”As seguintes páginas de código estão disponíveis para a codificação de texto:
0- Padrão. Latim (ISO 6937)1- Europeu Ocidental (ISO 8859-1)2- Europeu Central (ISO 8859-2)3- Europeu do Sul (ISO 8859-3)4- Europeu do Norte (ISO 8859-4)5- Cirílico (ISO 8859-5)6- Árabe (ISO 8859-6)7- Grego (ISO 8859-7)8- Hebraico (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- Celta (ISO 8859-14)15- Europeu Ocidental (ISO 8859-15)21- UTF-8
Opções de hora e data
Seção intitulada “Opções de hora e data”Seção [tdt-tot]:
country- código do país no formato ISO 3166-1 alpha-3offset- diferença de horário em minutos em relação ao GMT, com sinal. Por exemplo, +120 é GMT+2 e -300 é GMT-5
Opções do multiplex
Seção intitulada “Opções do multiplex”Seção [multiplex]
tsid- identificador do transport stream do multiplexname- campo opcional para descrever o multiplex
Opções do serviço
Seção intitulada “Opções do serviço”Seção [multiplex/service]
pnr- número do canal/pnrxmltv-id- id do canal no xmltvparental-rating- restrição de idade. O valor é definido em pares: país e idade. Por exemplo:parental-rating = EST 16 USA 14. Código do país no formato ISO 3166-1 alpha-3 (3 letras). Idade de 4 a 18 (inclusive), 0 - sem restrições.
Multiplexar o stream com EIT em um MPTS
Seção intitulada “Multiplexar o stream com EIT em um MPTS”Com o Astra você pode adicionar o stream UDP com EIT ao MPTS.
Nas configurações do MPTS, adicione uma entrada e defina o endereço UDP; por exemplo, na configuração acima o endereço é udp://lo@239.0.0.1:1234.
Nas configurações avançadas do MPTS, ative a opção “Pass EIT”.
Use a opção no_eit nas outras entradas para desativar o EIT vindo delas.
Início automático
Seção intitulada “Início automático”Registre o serviço no systemd para executá-lo em segundo plano e iniciá-lo automaticamente junto com o sistema. Crie o arquivo /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.targetOs comandos a seguir podem ser usados para gerenciar o serviço:
- iniciar o serviço:
systemctl start eit-stream - parar o serviço:
systemctl stop eit-stream - ativar o início automático:
systemctl enable eit-stream - desativar o início automático:
systemctl disable eit-stream
Reinício
Seção intitulada “Reinício”Para reiniciar o serviço uma vez por noite, adicione a linha a seguir em /etc/crontab:
0 2 * * * root systemctl restart eit-streamFormato XMLTV
Seção intitulada “Formato XMLTV”XMLTV é um formato baseado em XML para descrever informações de programação de TV. Ele oferece um mecanismo para armazenar informações de canais, a grade de programas e os metadados associados.
<?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>