quarta-feira, 6 de junho de 2007

VDR no Brasil

Decidi dar um tempo ao MythTV e ao Knoppmyth para me dedicar um pouco ao VDR (Video Disk Recorder). Para quem não sabe o VDR é um projeto da comunidade opensource que visa transformar um PC comum num sistema multimídia com recursos ilimitados a partir de plugins desenvolvidos pela comunidade. Ele tem como centro as placas DVB (Digital Video Broadcasting) muito comuns na Europa e que aos poucos estão se tornando comuns aqui no Brasil graças aos provedores de banda larga via satélite como a raggio.

O que muitos não sabem é que além do serviço de internet via satélite oferecido por vários provedores do Brasil também é possível sintonizar inúmeros canais de TV e Rádio presentes nos vários satélites que tem footprint no Brasil. Isto porque estes satélites transmitem os seus sinais para o Brasil usando o sistema Europeu, chamado de DVB-s. Além dos satélites brasileiros (Brasilsat B2, B3 e B4) inúmeros outros latino-americano e até mesmo europeu operam no Brasil oferecendo canais abertos de rádio e televisão. Uma visita aos sites do Lyngsat e Brasilsat Digital torna-se suficiente para observar que é possível sintonizar pelo menos 26 canais (rádio e TV) digitais abertos somente no satélite brasileiro Brasilsat B4 (o mesmo usado pelos brasileiros para sintonia de canais analógicos). Entusiastas do setor estimam que há pelo menos uns 200 canais a nossa disposição nos vários satélites que cobrem o Brasil.

Quando tomei ciência do VDR fiquei entuasiasmado pois a qualidade de vídeo e áudio dos canais DVB é muito boa (similar a DVD). Infelizmente, tal recurso no MythTV anda meio precário apesar do bom suporte a placas DVB no Linux. Como o VDR já está bem maduro para o DVB pois foi concebido para tê-lo como atrativo principal decidi experimentá-lo. Dei sorte ao topar com uma distribuição Linux chamada LinVDR pelos motivos que listarei a seguir. O objetivo desta distro é justamente facilitar o processo de instalação do VDR que não é dos mais fáceis. Isto porque a maioria dos usuários dele está na Europa e fala alemão. Poucas são as páginas da internet que o menciona em outra língua mais acessível. O próprio LinVDR tem como língua padrão o alemão mas já há algumas partes do site traduzidas para o inglês. Além do LinVDR existem outras distros que facilitam a instalação do VDR: VDRLive e CTDVR ambas em francês.

De início achei o VDRLive bem mais atrativo por causa do seu boot gráfico (Boot Splash) mas como nunca obtive êxito desisti e fui atrás de uma outra opção. Encontrei no LinVDR a solução mais do que satisfatória. Esta distro foi desenvolvida baseada no seguinte requisito de hardware:

. Placa DVB Full Featured (MPEG 2 decoder por hardware e saída TV-Out);
. Receiver serial para controle remoto (Homebrew);
. Controle Remoto da placa DVB WintTV Nexus da Hauppauge.

Por coincidência tenho os três itens da lista. A minha placa DVB é uma Technotrend Premium que já não é mais fabricada mas tem um excelente suporte em Linux e que serviu de base para o projeto VDR no seu início. Hoje o VDR já suporta outras placas DVBs inclusive sem decoder MPEG 2 (Budget) como a Skystar 2 facilmente encontrada no Brasil no site da Ragio. Outra opção elegante é adquirir uma DXR3 (Hardware Decoder para DVD) e combinar com uma Skystar 2. A vantagem de se ter um Decoder MPEG 2 via hardware é que o requisito de CPU cai drasticamente. Veja o hardware que usei para implementar o meu LinVDR Box:

. Placa mãe PCCHIPS m748LMRT;
. P2 450 MHz;
. 128 MB de RAM DIMM PC133;
. HD de 20 GB IDE ATA 100;
. Leitor de DVD;
. Placa DVB Technotrend Premium (MPEG Decoder e TV-out);
. Sensor Infrared Serial Homebrew;
. Controle Remoto (Placa de Captura WintTV da Hauppauge).

Apesar do processador ser bem limitado para a função de captura e execução de vídeo e DVD fiquei satisfeito com o resultado obtido. Claro que tudo isso não seria possível se a placa DVB não efetuasse o trabalho pesado de decodificação MPEG 2 tanto para os canais de TV em DVB quanto para os filmes em DVD.

Para ter o meu Box VDR segui os seguintes passos:

. Baixe a imagem iso mais recente do LinVDR;
. Gravei-a num CD-RW;
. Configurei o SETUP da BIOS para dar boot pelo CD;
. Segui os passos do instalador reservando um HD de 20 GB para a instalação;
. Retirei o CD da bandeja e dei boot pelo HD.

Após a instalação algumas coisas já estavam funcionando como por exemplo o controle remoto e a saída TV-Out da placa DVB. Foi só ligar na TV e já dava para ver os menus OSD com as várias opções oferecidas pelo VDR. Tive que criar na unha um arquivo channels.conf com os canais do Satélite Brasilsat B4 a partir da lista de transponders deste satélite. Para isso usei o seguinte comando em uma outra estação linux (Kubuntu 7.04) dotada do pacote dvb-utils e de uma placa DVB (Skystar 2 da Technisat):

$ scan -o vdr BrasilsatB4-70.0W > channels.conf

Note que tive que criar o arquivo BrasilsatB4-70.0W com a lista de transponders deste satélite para gerar o arquivo channels.conf contendo os canais (rádio e TV).

Feito isso, tenho agora um excelente PVR com bom suporte a DVB e que roda num reles P2 450 MHz que estava encostado quase indo para o sucatão. Com este PVR estou executando as seguintes tarefas:

. Servidor de Arquivos via Samba;
. Sintonia de TV e Radio DVB;
. Gravação de programas de rádio e TV com qualidade digital;
. MP3 Player;
. DVD Player;
. Games (Tetris, Snake, ...);
. VCD Player;
. CD Audio Player.

Ainda falta ajustar alguns detalhes para ampliar os recursos deste PVR mas já estou mais que satisfeito com os atuais. Mas isto é assunto para um futuro post.