22 maio 2009

xmltv da Revista Eletrônica no KnoppMyth

Sei que o blog está criando teias de aranha, mas é que o KnoppMyth ficou tão estável em casa que parei de mexer nele. Já faz parte do dia-a-dia da família. E estou sem tempo para fazer algumas melhorias, então deixei como está.

Só fiquei devendo para o blog a informação que não uso mais o TVxb para baixar a programação das emissoras. Faz algum tempo que estou usando o arquivo que o Carlos Lorenz, da Revista Eletrônica, gera diariamente para os usuários que precisam de xmltv. Então aqui vai um tutorial sobre como utilizá-lo no KnoppMyth:

1 - Cadastre-se no site da Revista Eletrônica para passar a receber o arquivo. Ele é enviado por e-mail, sob demanda, o que significa que, uma vez cadastrado, você precisará entrar no site e solicitar seu envio toda vez que quiser atualizar a grade de programação do seu PVR. É um processo manual, mas foi a forma que o Carlos encontrou de não ser lesado por pessoas que estavam vendendo seu arquivo para outros sites e operadoras de TV por assinatura. Então só temos que agradecê-lo por nos fornecer gratuitamente o que dá bastante trabalho para criar.

2 - Faça uma lista dos canais que você vai incluir no Mythtv.

3 - Um vez baixado o arquivo, descompacte-o em um diretório e abra-o com um editor de textos. No início dele você encontrará a relação de canais cuja programação está no arquivo. Preste atençao à tag "channel id". Nela está o código xmltv de cada canal. Anote aqueles que estão na sua lista de canais.

4 - Cadastre os canais que você vai utilizar no Mythtv. No KnoppMyth, basta dar [Alt-S] para abrir o setup e utilizar a opção "Channel Editor". Não se esqueça do código xmltv e de repetir o número do canal na segunda tela.

5 - Antes de inserir a programação eu faço alguns ajustes no arquivo xmltv. O Mythtv dá um tratamento especial a certas categorias de programas e a informação vai ficar mais rica se você fizer esses ajustes. Para isso, eu uso um script, mas não consegui publicá-lo aqui porque o blogger interpreta o que está nele como se fossem tags html. Basicamente, troco as categorias assim:

Variedades para tvshow
Filme para movie
Esporte para sports
Séries para series

Ou seja, traduzo quatro categorias para os nomes que o Mythtv entende. Como no arquivo há uma sub-categoria, esta passa a ser reconhecida e você terá o guia eletrônico colorido e as pesquisas por categoria funcionando.

6 - Apesar da minha máquina ser perfeitamente funcional para todas as funções do Mythtv (tenho um Athlon XP 2.4 com 256MB de RAM), sinto que o arquivo é pesado demais para ela. Então eu removo os programas que já foram exibidos e divido em vários arquivos (um para cada dia), inserindo cada um separadamente, através do script:

#!/bin/bash
echo Iniciando tv_grep
tv_grep --on-after now /home/mythtv/TVxb/xmltv.xml > /home/mythtv/TVxb/xmltvnow.xml
echo Removendo arquivos antigos
rm -rf /home/mythtv/TVxb/xmltv/*
echo Iniciando tv_split
tv_split --output /home/mythtv/TVxb/xmltv/%Y%m%d.xml /home/mythtv/TVxb/xmltvnow.xml
echo Iniciando mythfilldatabase
find /home/mythtv/TVxb/xmltv -type f -iname "*" -print0 | xargs -0 -n 1 nice -n 19 mythfilldatabase --update --file 1 -1


Se você tiver máquina suficiente e quiser processar o arquivo todo de uma só vez, é só fazer

nice -n 19 mythfilldatabase --update --file 1 -1 xmltv.xml


Pronto. Terminado o processamento, você já terá no Mythtv toda a programação da sua TV. O primeiro lugar que costumo visitar é a lista de "Novos Títulos" para ficar sabendo tudo o que está para estrear e programar a gravação do que eu não quero perder. Depois dou uma olhada nas categorias que me interessam e em um ou outro canal específico.

Espero ter ajudado. Comentários e sugestões são sempre bem-vindos.

13 comentários:

João disse...

Engano seu Dalben, eu pelo menos, uma vez ou outra passo por aqui, sempre aprendendo mais um pouco com suas lições, que agradeço, Saudações JEAJ.

Davi Dalben disse...

E eu agradeço a visita, JargentinoJ.

Um abraço!

djonny disse...

Olá Davi,
Agora que consegui colocar o mythtv para funcionar com um usbuirt tentei fazer isso mas quando digito o comando final volta um erro..vc sabe se é o mesmo comando para o kubuntu?

Tenho que colocar o que dentro da página do setup do mythtv onde listo o source? (NET TV)? Lá tem uma opção de grabber para NET BRasil..mas não sei o que devo colocar lá como opção.

Obrigado.
Djonny

Davi Dalben disse...

Djonny,

Dentro do setup não é necessário colocar nenhum grabber. Mas pode colocar qualquer um do xmltv, pois eles não são acionados automaticamente.

Para poder ajudá-lo, preciso saber qual é a mensagem de erro que você está recebendo ao tentar rodar o mythfilldatabase. Pode escrever diretamente para meu e-mail: davinospam-blogger em yahoo.com.br.

Um abraço!

djonny disse...

Obrigado pela resposta.
Estou fazendo uma tentativa agora que parece que está dando certo, da linha de comando digitei mythfilldatabase --file sourceid xmlfile e está processando.
abraço e obrigado.
djonny

djonny disse...

Deu certo mesmo, funcionou perfeitamente, nem acredito.

Agora só falta conseguir deixar o mythtv na resolução certa, pq toda vez que desligo o computador e coloco no mythtv ele aparece uma faixa colorida embaixo da imagem, aí tenho que ir no setup front e mudar em playback a scalonagem vertical, so que quando reinicio ele volta para o anterior.

Davi Dalben disse...

Que bom que funcionou, Djonny.

Só preste atenção a um detalhe:

O mythfilldatabase, sem o --update, cria no backend os canais que estão no xml. Ou seja, provavelmente agora você tem no backend a programação de todos os canais que a Revista Eletrônica fornece, e não apenas aqueles que você consegue assistir.

Não tenho como confirmar isso agora, mas se você rodar novamente o comando desse jeito é possível que o mythfilldatabase crie novamente esses canais, duplicando todos eles.

Com o --update, ele não cria novos canais. Somente atualiza os que já existirem no banco de dados.

Quanto ao seu segundo problema, não sei se posso ajudar, pois uso o KnoppMyth e ele já ajusta todas as resoluções automaticamente.

Um abraço.

djonny disse...

Davi, realmente gerou esse problema de mostrar mais canais do que deveria, por exemplo uso um n800 para ser meu controle e nele aparecem esses canais que eu não uso, você sabe como faço para remover isso? Se eu fizer novamente com o arquivo atualizado da revista eletronica e dando o update ele já vai remover esses que nao são usados?
Valeu, obrigado!

djonny disse...

Ola Davi,
Ja resolvi, nunca tinha conseguido acessar o mythweb, agora que configurei minha rede consegui, e la retirei os canais que eu nao queria.
Com relacao ao comando update, fiz isso agora tambem, e o que eu estava fazendo errado era que nao estava colocando o source id.
O servico da revista eletronica pelo que usei eh muito bom.

Valeu pela ajuda,
abraco

Davi Dalben disse...

Que bom, Djonny.

Eu acho a edição de canais pelo Mythweb até mais prática que a do setup. Mas, como você descobriu, a rede tem que estar ok.

Não sei se você já está fazendo isso, mas altere as categorias do xmltv de acordo com o que eu escrevi no post. A consulta pela lista fica muito boa.

E gostei da sua idéia de usar um n800 como controle remoto. Você faz pelo Mythremote?

Um abraço.

djonny disse...

Ola Davi,

Eu uso o N800 como orbiter do LinuxMCE, entao acabo tendo controle de todo o sistema e nao so do Mythtv.
Pretendo fazer um video de demonstracao pra colocar no youtube e talvez incentivar mais pessoas a fazer isso. Apesar de nao ser tao facil quanto parece vale a pena. Se eu fizer te passo o link.

Pesquisei bastante e aqui foi um dos unicos lugares que encontrei informacoes em pt, e mesmo desatualizado ajudou bastante com o mythtv.

Obrigado.
djonny

djonny disse...

Boa tarde Davi,
Eu não sei como fazer essa alteração no xmltv pra aparecer as séries e etc. Tem como você me passar o script? Ou como faço isso?
djonny longen at gmail com
obrigado,
djonny

Davi Dalben disse...

Djonny,

Tente assim:

sed "s/Variedades/tvshow/g" xmltv.xml > xmlnew.xml
cp xmlnew.xml xmltv.xml
sed "s/Filme/movie/g" xmltv.xml > xmlnew.xml
cp xmlnew.xml xmltv.xml
sed "s/Esporte/sports/g" xmltv.xml > xmlnew.xml
cp xmlnew.xml xmltv.xml
sed "s/Séries/series/g" xmltv.xml >xmlnew.xml
cp xmlnew.xml xmltv.xml
rm xmlnew.xml

O problema é que este script troca todas as ocorrências das palavras indicadas, mesmo que estejam na sinopse dos programas, por exemplo.

Então é necessário incluir as tags do xmltv completas para que essa confusão não seja feita. Só que quando eu tento publicar o script completo aqui, o Blogger entende que são tags html "não permitidas".

Se não conseguir, entre em contato novamente.