Sopcast (P2PTV) em Linux
Sunday, 6 de April 2008 — Bruno LucasPub.
Este post é a continuação deste [Como ver emissões de TV via P2P em Linux].
Como havia dito, um dos programas/protocolos que permitem visualizar emissões televisivas P2PTV é o sopcast. Este programa é composto por duas partes, um back-end que trata das ligações a outros pares, e um front-end que permite visualizar o estado a emissão, ver a lista de canais, lançar e parar o player, etc.
Em Debian/Ubuntu normalmente bastaria fazer um “sudo aptitude install X” e ficaria tudo a funcionar, mas como estamos a falar de versões bleending edge vai ser mesmo preciso fazer umas quantas coisas à pata.
Back-end
Para instalar o back-end é necessário descarregar o ficheiro comprimido que contém o executável, extraí-lo e coloca-lo numa directoria que esteja na $PATH. Eu que sou fã do terminal fiz assim:
wget -c http://download.sopcast.cn/download/sp-auth.tgztar zxvf sp-auth.tgzcp sp-auth/sp-sc-auth ~/bin/
A partir de agora já é possível ver uma emissão P2P, basta por exemplo fazer o seguinte:
sp-sc-auth sop://broker.sopcast.com:3912/6001 3908 8908 > /dev/null &
mplayer http://localhost:8908/tv.asf
Front-End
Instalei uma versão alterada do frontend qsopcast, esta versão permite tratar as URLs adicionadas a partir do Firefox. Esta versão não estava disponível como um .deb por isso foi necessário compila-la, para tal é preciso instalar os pacotes de desenvolvimento de software (compiladores, bibliotecas, etc):
sudo aptitude update sudo aptitude install qt3-apps-dev build-essential
Depois é só descarregar o código-fonte alterado, descomprimir, entrar na directoria e compilar, ou seja:
wget -c http://www.linux.ryukent.co.uk/download/qsopcast-0.3.5.rkmod.tar.gztar zxvf qsopcast-0.3.5.rkmod.tar.gzcd qsopcast-0.3.5/srcsudo qmake ; sudo make ; sudo make install
e pronto já está quase, só falta associar no Firefox o protocolo sop:// ao qsopcast, eu fiz assim:
- abri o endereço “about:config” (sem as aspas);
- criei uma nova string, (clicar com o botão direito);
- dei-lhe o nome “network.protocol-handler.app.sop“;
- e o valor “qsopcast“.
A partir de agora sempre que se clicar numa URL começada por sop:// abre-se o qsopcast.
O funcionamento deste front-end é bastante simples, depois de escolhido o canal (via lista de canais ou via URL do Firefox), é só clicar “Lauch”, esperar que o status passe pelos modos “Conecting”, “Waiting”, e depois começam a aparecer uma série de números, o único valor a que ligo é o primeiro, creio ser a percentagem de qualidade da emissão, quanto mais alto melhor. Se clicar “Player” é lançado o player com a emissão P2PTV, se carregar “Stop” o player é parado. Bastante simples não? 🙂

Este meu tutorial é muito baseado neste outro.
Edit: Tal como o A.E. disse: Estou a assumir que têm o mplayer instaldo, se não tiverem têm de ir às configurações do qsopcast e alterar o player.







Wednesday, 23 de April 2008 at 9:55 (WordPress 2.5)
[…] Irei fazer Fiz um post sobre como instalar e correr o Sopcast em Linux e outro sobre o […]
Thursday, 18 de December 2008 at 3:45 (Mozilla Firefox 2.0.0.16 Ubuntu Linux)
Olá. Muito interessante seu artigo. Resolvi colocá-lo em prática, mas tomei um erro na hora do “sudo make”. A pilha de erros é longuíssima, coloquei apenas o início:
/qsopcast-0.3.5/src$ sudo make
g++ -c -pipe -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/share/qt3/include -I.moc/ -o .obj/channel.o channel.cpp
Em arquivo incluído de channel.cpp:21:
header.h:4:26: erro: qapplication.h: Arquivo ou diretório inexistente
header.h:5:24: erro: qtabwidget.h: Arquivo ou diretório inexistente
(…)
./myhbox.h:9: error: expected class-name before ‘{’ token
./myhbox.h:11: error: expected `)’ before ‘*’ token
./myhbox.h:16: error: ‘QString’ does not name a type
Thursday, 18 de December 2008 at 9:25 (Mozilla Firefox 3.0.4 Ubuntu Linux)
Você fez este passo?
sudo aptitude install qt3-apps-dev build-essential
parece-me que se queixa que lhe faltam uma série de headers das bibliotecas (libraries) de QT.
Friday, 19 de December 2008 at 1:59 (Mozilla Firefox 2.0.0.16 Ubuntu Linux)
Sim, fiz. Mas esse passo teve alguns erros, relatados abaixo:
Você deseja continuar? [S/n/?]
Gravando informações estendidas de estado… Pronto
Err http://security.ubuntu.com gutsy-security/main libgnutlsxx13 1.6.3-1ubuntu0.1
404 Not Found
Err http://archive.ubuntu.com gutsy-updates/main libgnutlsxx13 1.6.3-1ubuntu0.1
404 Not Found [IP: 91.189.88.31 80]
Err http://archive.ubuntu.com gutsy-updates/main libgnutls-dev 1.6.3-1ubuntu0.1
404 Not Found [IP: 91.189.88.31 80]
Err http://archive.ubuntu.com gutsy-updates/main libcupsys2-dev 1.3.2-1ubuntu7.7
404 Not Found [IP: 91.189.88.31 80]
E: Falha ao buscar http://archive.ubuntu.com/ubuntu/pool/main/g/gnutls13/libgnutlsxx13_1.6.3-1ubuntu0.1_i386.deb: 404 Not Found [IP: 91.189.88.31 80]
Lendo lista de pacotes… Pronto
Construindo árvore de dependências
Reading state information… Pronto
Lendo informações estendidas de estado
Inicializando estados de pacotes… Pronto
Construindo a base de dados… Pronto
Friday, 19 de December 2008 at 10:01 (Mozilla Firefox 3.0.5 Ubuntu Linux)
Esse erro 404 Not Found costuma indicar que você pediu ao servidor algo que já não está lá. Acho que deve ser necessário actualizar a sua lista de pacotes disponíveis.
Experimente: sudo aptitude update e depois sudo aptitude install qt3-apps-dev build-essential
Entretanto vou adicionar essa linha ao tutorial 🙂
Saturday, 20 de December 2008 at 2:17 (Mozilla Firefox 2.0.0.16 Ubuntu Linux)
Olá, amigo. Obrigado. Com esse update os erros desapareceram! Quando eu clico numa URL de sopcast, o programa é chamado, com a URL lá em cima. Porém, quando clico em “Launch”, ele fica eternamente no estado “Connecting”. Não sai desse estado de jeito nenhum, e posso ver pelo monitor do sistema que ele não está recebendo ou enviando nada. Tentei com aproximadamente 20 endereços diferentes, e o resultado foi o mesmo, o “Connecting” eterno. Será que o problema é das URLs ou tem algo errado aqui? Obrigado novamente.
Tuesday, 23 de December 2008 at 11:12 (Mozilla Firefox 3.0.5 Ubuntu Linux)
Viva,
experimente fazer um link do sp-sc-auth para sp-sc. Creio que o binário do sopcast mudou o nome de sp-sc para sp-sc-auth e o qsopcast não sabe disso. Assumindo que colocou o sp-sc-auth no ~/bin faça o seguinte:
cd ~/bin
ln -s sp-sc-auth sp-sc
e veja se funciona 🙂
Tuesday, 23 de December 2008 at 20:43 (Mozilla Firefox 2.0.0.16 Ubuntu Linux)
Olá amigo! Funcionou! Consegui assistir! Parabéns pelo artigo, e muito obrigado pela ajuda e paciência. Vou te falar que já tinha passado por vários artigos antes do seu, e nenhum resultou em nada.
Se puder te dar um conselho, só lembre de acrescentar no artigo que o usuário tem que ter o MPlayer pra poder assistir, ou então ir no Config e mudar a linha de comando. No meu caso, não tinha o mplayer (meu visualizador padrão de vídeos no firefox é o VLC), mas instalei e funcionou.
Bom trabalho, um abraço!
Tuesday, 3 de February 2009 at 21:50 (Mozilla Firefox 3.0.5 Ubuntu Linux)
Actualizei o post com suas recomendações 🙂