sábado, 8 de março de 2008

Placa de TV Kworld no Linux

Postagem atualizada em 16/01/2010. Leia comentários.

Há alguns meses comprei uma placa de TV para assistir e gravar programas de televisão em meu computador. A placa que comprei é a "Kworld PlusTV analog lite PCI". O preço dela foi relativamente barato.

Depois de instalá-la fisicamente, fiz a instalação dos drivers no Windows XP, para testá-la. Fiquei um pouco decepcionado com algumas coisas: a taxa de quadros ficou muito baixa, o vídeo é processado com atrazo de alguns décimos de segundo. Quando testei com uma TV de verdade ao lado percebi claramente o atraso, tanto de vídeo como de áudio. Além do mais, o programinha Hipermidia é muito ruim, e pesado também. Apesar disso tive que me conformar, pois era isso que se esperava de uma placa barata.

Só que atualmente utilizo mais o Linux que o Windows. Como nenhumas das distribuições que uso conseguiu configurar, nem mesmo detectar a placa, tive que sair procurando pela Internet. Depois de tentar várias sugestões espalhadas e de ler outros tantos tutoriais, consegui encontrar uma solução simples. Isso deu muito trabalho. Por isso, estou disponibilizando aqui no meu blog a solução que encontrei.

Tudo que é necessário fazer é incluir estas linhas abaixo num arquivo chamado /etc/modprobe.d/televisao. Só isso (além de ter já ter um visualizador de TV instalado, como o XawTV). A maioria das distribuições atuais vêm com os drivers necessários para trabalhar com essa placa da KWorld. Depois de acrescentar essas linhas e reiniciar o sistema, a placa deverá ser reconhecida e funcionará corretamente.

  • alias char-major-81 videodev
  • alias char-major-81-0 saa7134
  • options saa7134 card=153 tuner=56

Em que:

  • SAA7134 é o driver que deverá ser carregado para que a placa funcione;
  • Card=153 diz qual é o modelo da placa;
  • Tuner=56 diz qual é o modelo do sintonizador.

Quando finalmente consegui assistir TV no linux fiquei contente, não apenas por ter resolvido o problema que me custou alguns neurônios, mas porque a qualidade de imagem ficou melhor que no Windows! Isso que estou dizendo não é coisa de quem gosta de criticar o Windows. Realmente ficou melhor. O atraso incômodo de alguns décimos de segundo não aconteceram mais! O som e o vídeo estão saindo no tempo certo. Isso parece bastante interessante: A empresa que montou a placa de TV constroi seus drives pensando no Windows (tem até certificação pro Vishhta), mesmo assim, ela funciona melhor no Linux...

Observação: Não esqueça de conectar um cabo de audio (RCA) saindo do da placa de TV para a entrada Line-in da placa de som do sistema. A placa de TV tem seu próprio processador de som, o qual deve ser conectado à entrada da placa-mãe/placa-de-som.

Observação 2: Esta dica também serve para a placa Kworld/Tevion V-Stream Xpert TV.

Caso isso não ajude encontrei um tutorial completo sobre placas de captura baseadas no chip SAA7134. Visitem o blog do Tadeu Ramos para ver o tutorial: http://tadeuramos.com.br/?p=104. Ou clique AQUI.

Caso esta dica seja útil, ou você tem alguma coisa a dizer, sinta-se a vontada para comentar.

10 comentários:

  1. Posso instalar ela no sistema fenix Linux será que ele irá dá suporte?

    ResponderExcluir
  2. Olá, Márcio!

    Não conheço o Fenix Linux. Portanto não tenho certeza se essa placa tem suporte. Mas dá pra fazer testes. Um deles é verificar o kernel dele tem suporte, pelo que vi no site deles, o kernel é um recente (ele provavelmente vai suportar).

    O negócio é testar dando um "sudo modprobe ssa7134" pra ver se carrega esse módulo. Como eu disse acima, caso sua distribuição tenha suporte, basta adicionar aquelas três linhas no arquivo "modprobe.conf", para que os módulos necessários sejam carregados com suas respectivas configurações.

    Não vi no site se o sistema deles vem com o XawTV. O XawTV é um visualizador de tv bem leve e de fácil manuseio. Eu uso ele aqui em casa.

    Caso você consiga fazer funcionar no Fenix, favor informar.

    Muito obrigado pelo comentário.

    ResponderExcluir
  3. Maravilha, estou me preparando pra instalar o ubuntu aqui (estou usando o XP), e isso era uma das coisas que estava pesquisando para fazer essa mudança!

    ResponderExcluir
  4. Que bom que esse artigo tenha ajudado.

    Essa dica funciona direitinho no Ubuntu 8.04. Recomendo que use o Xawtv como vewer. Ele é bem simples, leve e de fácil configuração.

    Obrigado pela visita ao blog.

    ResponderExcluir
  5. Oi, tenho um receptor de TV Digital KWorld PlusTV, adicionei as três linhas que você disse no tutorial ao arquivo /etc/modprobe.conf e tentei usar o xawTV, mas abriu foi a webcam. Estou usando o ubuntu 9.10. Ao tentar carregar o módulo é essa resposta que obtenho: jose@jose-laptop:~$ sudo modprobe saa7134
    [sudo] password for jose:
    WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
    WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.

    ResponderExcluir
  6. Algumas distribuições recentes não aceitam mais o uso do arquivo /etc/modprobe.conf. O uso dele foi abandonado. Quando eu postei essa dica em 2008 esse arquivo ainda era aceito por todas as distribuições.

    Agora, é aconselhado que haja um arquivo separado para cada dispositivo dentro do diretório /etc/modprobe. Você pode incluir essas linhas em um arquivo chamado "/etc/modprobe.d/televisao"

    Mas como a placa atualmente já está listada no kernel do linux, é provavel que você nem precise mais dessa configuração. No fedora 12 o reconhecimento da placa e do sintonizador é automática. Então, você tem certeza que ela é necessária no Ubuntu 9.10?

    ResponderExcluir
  7. Quando eu postei esta dica em 2008 essa placa não estava listada no kernel do linux. Agora ela está listada e tem um número próprio: 153. Sendo assim, a configuração nova seria esta:

    options saa7134 card=153 tuner=56

    É bem provável que algumas distribuições novas também abandonem os arquivos dentro do diretório /etc/modprobe.d. O Fedora por exemplo já avisa que no futuro passará a ignorar essa pasta. É um tendência das distros de não deixar o usuário final configurar nada e deixar tudo automático. Mas é também uma pena, pois o usuário perde a possibilidade de fazer as coisas funcionarem por si mesmo. Aos poucos estão abandonando a razão de ser do Linux!

    ResponderExcluir
  8. Acabei de atualizar a informação que postei:

    VELHA CONF:
    * alias char-major-81 videodev
    * alias char-major-81-0 saa7134
    * options saa7134 card=59 tuner=56

    NOVA CONF:
    * alias char-major-81 videodev
    * alias char-major-81-0 saa7134
    * options saa7134 card=153 tuner=56

    VELHO ARQUIVO:
    /etc/modprobe.conf (deprecated)

    NOVO ARQUIVO:
    /etc/modprobe.d/televisao (deprecated no futuro)

    Futuramente esses arquivos serão ignorados em algumas distribuições.


    Grato.

    ResponderExcluir
  9. Mesmo seguindo a dica de vocês não consegui fazer funcionar meu receptor de TV Digital, olhem o resultado do lsusb http://pastebin.com/m76f67aef e vejam se há como usar esse receptor no Ubuntu 9.10.
    Desde já agradeço

    ResponderExcluir
  10. Realmente esta dica não lhe será útil. A placa de que fala esta postagem é baseada no chip Philips SAA713x com interface PCI. No seu caso o adaptador tem interface USB e é de TV Digital.

    Grato.

    ResponderExcluir