Como transmitir minha saída de áudio GNU / Linux para dispositivos Android via WI-FI?

29

Quero transmitir minha saída de áudio pela rede (Wi-Fi) para meus dispositivos Android. Eu não estou procurando uma solução de streaming de música / vídeo, mas gostaria de transmitir qualquer saída de áudio do meu desktop GNU / Linux para o meu trabalho Android como um fone de ouvido bluetooth.

Meu desktop GNU / Linux é o Debian Wheezy e o som é fornecido pelo pulseaudio.

Eu testei o módulo raop do Pulseaudio (e o habilitei em paprefs) + app AirBuddle do Android, mas o áudio não é transmitido (pulseaudio seens se conecta ao AirBuddle, mas o som não é reproduzido, há uma falha de conexão em alguns softwares , em alguns outros softwares o som fica preso).

    
por semente 09.06.2013 / 03:20

5 respostas

20

Existe uma solução muito simples porque o PulseAudio já possui todas as ferramentas necessárias.

  1. Obtenha o nome do seu dispositivo de origem com o comando pactl list | grep Name
  2. Crie o seguinte script chamado pashare :

    #!/bin/sh
    case "$1" in
      start)
        $0 stop 
        pactl load-module module-simple-protocol-tcp rate=48000 format=s16le channels=2 source=<source_name_here> record=true port=8000
        ;;
      stop)
        pactl unload-module 'pactl list | grep tcp -B1 | grep M | sed 's/[^0-9]//g''
        ;;
      *)
        echo "Usage: $0 start|stop" >&2
        ;;
    esac
    
  3. Faça algumas verificações e preparações (para permitir a execução de scripts e verifique se a porta foi aberta com sucesso):

    chmod 755 pashare
    ./pashare start
    netstat -nlt | grep 8000 
    telnet 127.0.0.1 8000
    
  4. Faça o download e instale o PulseDroid.apk

  5. Inicie o aplicativo no seu telefone. defina o endereço IP para o seu computador e a porta para 8000 .

P.S. Você também pode verificar esta página Wiki para obter informações gerais sobre streaming de rede Pulseaudio, e esta página Wiki sobre o streaming da RTP. Não espere muito de streaming de áudio bruto por WiFi; requer enormes larguras de banda. Mesmo com um AP / roteador sem fio de última geração com um sinal poderoso, não consegui mais do que gaguejar o áudio. A sua melhor aposta é provavelmente configurar um servidor de mídia apropriado (como o Rygel, que funciona bem com o Pulseaudio) para transcodificar o áudio bruto para algo como MP3 e transmitir em vez disso.

    
por 06.05.2014 / 13:57
9

Você pode usar o VLC para exibir um fluxo de MP3 da saída do pulseaudio via HTTP.
A principal vantagem é que você não precisa instalar nenhum software especial no seu dispositivo remoto, um navegador da Web (ou tocador de música) é tudo que você precisa para reproduzir o fluxo. A desvantagem é que é apenas áudio, alguns segundos de atraso tornam inútil para vídeos

  1. Encontre o nome da saída do pulseaudio com:

    pactl list | grep "Monitor Source" 
    
  2. Inicie o servidor http do VLC, substituindo XXXX pelo seu nome de saída:

    cvlc -vvv pulse://XXXX --sout '#transcode{acodec=mp3,ab=128,channels=2}:standard{access=http,dst=0.0.0.0:8888/pc.mp3}'
    
  3. Se necessário, localize seu endereço IP local com ifconfig

  4. No seu dispositivo remoto, aponte o navegador (ou aplicativo de streaming de áudio) para:

    http://your.local.ip.address:8888/pc.mp3
    

Observação: o fluxo não é afetado pelo volume definido no servidor, a menos que você o desative totalmente. Se necessário, você pode manter o nível um pouquinho acima de 0 para ouvir apenas o dispositivo remoto.

    
por 04.01.2016 / 23:29
8

Para transmitir saída de áudio via Wi-Fi para o seu telefone Android, você precisa instalar o software do servidor, que envia áudio, no PC e no software cliente no dispositivo Android. Opções disponíveis são

Alto-falante Sem Fio de Áudio WiFi

Execute o aplicativo WiFi Audio Android e pressione Iniciar, você verá o endereço IP do dispositivo móvel na parte inferior depois disso, execute o aplicativo Windows / Linux e coloque o endereço IP do dispositivo móvel no campo de endereço IP e, em seguida, pressione Iniciar no aplicativo do PC. Agora todo o áudio que sai do PC será enviado para o dispositivo móvel e você ouvirá áudio no dispositivo móvel. Download

SoundWire

Transmita sem fio qualquer música ou áudio do seu PC para seu telefone, tablet ou outros PCs Android na página inicial Veja também

Outros links úteis XBMC android SE

    
por 02.05.2014 / 05:50
0

Para aqueles que usam o Soundwire e enviam o Wi-Fi do seu laptop ou PC, usando o ifconfig CERTIFIQUE-SE DE QUE USAR O ENDEREÇO IP CORRETO. Isso ainda funciona até hoje, mas a maioria das distribuições Linux precisa de um segundo adaptador wifi para enviar o Wi-Fi e você tem que usar o que o seu Android está conectado. não é o único que recebe internet. Aquele enviando para fora.

i.e. - > Se você estiver usando o adaptador Wi-Fi "A" para se conectar à Internet e "B" para enviar o Wi-Fi de "A", conecte o SoundWire no Android a "B" NÃO "A".

O SoundWire NÃO se conectará ou transmitirá se você se conectar ao adaptador sem enviar o wifi, então insira seu endereço IP em seus aplicativos Andoroid de acordo, usando o comando terminal ifconfig de acordo.

Sim, há atraso, mas este aplicativo, SoundWire, é o mais simples sistema "multi-connect to ip and forget" disponível. Nenhum menu louco para passar. E sim, aceita mais de uma conexão. Eu usei 2 no outro dia. Ele acrescenta o número de dispositivos conectados a ele na janela principal do dispositivo que envia a transmissão.

Usando isso pessoalmente como um sistema de rádio wi-fi multi-sala / curta distância em minha casa até hoje.

Aproveite.

    
por 29.12.2017 / 02:30
-4

Wow isso é velho ...

De qualquer forma, use o VLC. Bastante GUIs todo o caminho.

  • Acione o VLC na sua área de trabalho.
  • Hit Stream, selecione o arquivo (adicione quantos arquivos quiser), hit stream.
  • 'Próximo', se estiver tudo correto.
  • Para Novo destino, selecione "http" (ou o que você quiser usar). Selecione Exibir localmente se você quiser reproduzi-lo na máquina você também está transmitindo. Os próximos diálogos são todos autoexplicativos.

Ative o VLC no seu dispositivo Android. Aperte o ícone ao lado do botão de busca (a seta apontando para o ponto). digite http://<IP ADDRESS O OF THE MACHINE RUNNING VLC>:8080/ para mim, isso foi http://xxx.ca:8080/

Testado e funcionando. Agora, alguém poderia fazer isso nos tempos antigos de 9 de junho de 2013? Talvez, mas eu sou muito preguiçoso para verificar logs de comissionamento do VLC;)

    
por 24.04.2014 / 20:26