Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anteriorRevisão anterior
Próxima revisão
Revisão anterior
ubalab:transmipi [2016/05/18 14:06] efeefeubalab:transmipi [2016/06/05 20:12] (atual) efeefe
Linha 1: Linha 1:
-[[ubalab]] > TransmiPi+[[ubalab]] > [[gaivotafm:midialivre|MidiaLivre]] > TransmiPi
  
-Criar uma estacão de transmissão de áudio via icecast com uma Raspberry Pi e uma placa de som USB. Todos os scripts estão disponíveis [[https://gitlab.com/ubalab/transmipi|repositório no gitlab]].+====Transmipi==== 
 + 
 +Criar uma estacão de transmissão de áudio via icecast com uma Raspberry Pi e uma placa de som USB. Todos os scripts estão disponíveis no [[https://gitlab.com/ubalab/transmipi|repositório no gitlab]].
  
 Responsável: [[:felipefonseca|efeefe]] Responsável: [[:felipefonseca|efeefe]]
Linha 26: Linha 28:
   iface eth0 inet dhcp   iface eth0 inet dhcp
     up /usr/local/bin/informa-ips     up /usr/local/bin/informa-ips
 +
 +Acho que não funcionou automaticamente. Depois voltarei a isso. Por enquanto, fazendo testes com o darkice. Usei novamente o comando dietpi-software para instalar o ALSA (e aproveitei para mandar o FFMPEG também, mesmo que não use por enquanto pode vir a ser útil). Então peguei um arquivo de configuração do darkice que costumo usar para outros projetos (tem um exemplo razoável [[https://gist.github.com/exiva/1255496|aqui]]) e comecei um stream. Único senão: a placa USB barata que estou usando não deixou usar os dois canais. De todo modo, vou testando para ver quantas horas ele permanece sem problemas...
 +
 +Stream funcionando ok, mas teve alguns buffer overruns (como já tive em outros testes). Ainda tenho a dúvida se isso acontece por causa da própria placa de som, de instabilidade na rede, ou das restrições de clock da própria Pi. Para experimentar sobre essa última, usei o comando dietpi-config para fazer um overclock médio. Testando novamente.
 +
 +Ainda com bastante buffer overrun. Pensando em deixar de lado o darkice do repositório e fazer uma versão compilada. Encontrei um [[https://stmllr.net/blog/live-mp3-streaming-from-audio-in-with-darkice-and-icecast2-on-raspberry-pi/|tutorial]] aqui.
 +
 +==20/05/16==
 +
 +Aproveitei a ocasião do [[cienciaaberta:workshopdadosgeo|Workshop sobre Dados Georreferenciados]] da plataforma [[cienciaaberta:cienciaaberta|Ciência Aberta]] para testar a TransmiPi. Primeiro problema: a internet não estava funcionando no auditório da Escola Tancredo Neves. Por sorte havia levado a EstacaoRedeMovel, que andava parada desde o ano passado mas funcionou razoavelmente.
 +
 +O script para informar o IP não está rodando, mas através da interface web de administração do roteador wifi da estação, consegui verificar quais eram os clientes que haviam pedido IP por DHCP e consegui assim entrar na Pi. Rodei o darkice, e o stream começou. Estava usando um microfone ambiente, só para testes mesmo. Testei algumas vezes com o mplayer e consegui escutar, mesmo com todas as limitações da qualidade do áudio e da conexão. Usei o curl para gravar um pedaço no meu computador. Consegui um arquivo de 4.1Mb, com duração de menos de sete minutos:
 +
 +{{:ubalab:teste-transmipi-3g-tancredo.mp3|Áudio de teste}}
 +
 +Depois, a conexão 3G caiu. Ainda conseguia acessar a Pi pela rede local, mas não consegui mais fazer a EstacaoRedeMovel conectar-se. Talvez algo a ver com a franquia diária de dados do plano pré-pago de 3G que estava usando com ela. De todo modo, para todos os efeitos a transmissão funcionou.
 +
 +Nos próximos dias, temos uma oportunidade real para testar a Transmipi em um evento grande. Para isso, preciso fazer o darkice iniciar automaticamente, configurar a conexão direto pelo modem 3G USB, e talvez usar o noip para descobrir o IP da conexão (apesar de achar que a Vivo não vai me deixar conversar direto com ela, remotamente).
 +
 +==25/5/16==
 +
 +  * Instalando o cliente no-ip. Não está no repo da Dietpi, mas [[http://www.awesomeweirdness.com/projects-diy/raspberrypi/setup-noip-client-raspberry-pi/|esse tutorial]] resolve. Configurei um domínio grátis, mas só depois do 3G funcionar vou saber se a operadora me deixa acessar a máquina de fora.
 +  * Quando inicio a Pi com o modem 3G, ele está em modo mass storage. Preciso então rodar o usb_modeswitch. Depois de penar um pouco, consegui encontrar um [[http://bytefish.de/blog/huawei_e352s5/|tutorial]] que funciona com o meu modelo (Huawei E303).
 +  * Uma vez modificado o modo USB para poder acessar o modem, precisei encontrar uma solução para conectar à rede 3G. Usei o [[http://www.sakis3g.com/|Sakis3G]]. Encontrei também um [[https://lawrencematthew.wordpress.com/2013/08/07/connect-raspberry-pi-to-a-3g-network-automatically-during-its-boot/|tutorial]] sobre como rodar o Sakis automaticamente a cada boot. Precisei dos [[http://www.androidpit.com.br/forum/576315/tutorial-configurar-internet-3g-tim-claro-vivo-oi-em-todos-smartphones-android|dados da operadora]] para fazer funcionar.
 +  * Voltando ao Darkice: simplesmente habilitar o daemon em /etc/defaults/darkice não surtiu efeito. Tentei seguir os passos descritos [[http://ubuntuforums.org/showthread.php?t=2183222|aqui]], mas não deram certo. A correção do script rolou, então o comando service darkice start funciona. Mas o início automático não.
 +
 +==27/5/16==
 +
 +A ideia era usar a Transmipi para fazer o stream do Sampa Jazz Fest, na Praça da Baleia. A ausência de internet na praça atrasou os testes. Eu usaria um modem 3G emprestado, já que o meu não tem sustentado a conexão por muito tempo. Mas só consegui pegar o emprestado na noite de quinta-feira, quando o primeiro show já começava. Vai ficar para outra ocasião, infelizmente.
 +
 +==28/5/16==
 +
 +De volta à bancada. Inseri um cartão wifi, configurei para pegar um IP estático na minha rede doméstica. Entrei na PI e comecei a transmissão, a partir da saída analógica de uma mesinha de som conectada ao meu laptop e com um microfone plugado. A transmissão funcionou relativamente bem (engasgou um pouco nos primeiros minutos, mas depois ficou estável). Tinha um lag de cerca de trinta segundos até sair do outro lado. Mas o som estava horrível, com um ruído de fundo bem agudo, o tempo inteiro. Agora preciso isolar esse problema. Minha primeira suspeita é a placa de som USB, dessas baratinhas sem marca. 
  
  
 +===TODO===
  
 +  * Conectar a Pi diretamente pelo 3G.
 +  * Fazer o darkice rodar automático (daemon ou script?)
 +  * Descobrir o IP e testar se consigo acessar.
  
 ===Arquivo=== ===Arquivo===