Streaming de audio
Pulseaudio
Jeito 1 - Variável PULSE_SERVER
-
No servidor (computador onde sairá o som, ip 10.0.0.3)
-
Instale o
paprefs
julio@acer ~> sudo pacman -S paprefs
-
Abra o
paprefs
e, emNetwork Server
, marque:Enable network acess to local sound devices
;Allow other machines on the LAN to discover local sound devices
;Don't require authentication
.
-
-
No cliente (computador onde estão os arquivos de audio, ip 10.0.0.2)
Defina a variável de ambiente
$PULSE_SERVER
e execute uma música:julio@hp ~> export PULSE_SERVER=10.0.0.1 julio@hp ~> mplayer musica.flac
Se tudo deu certo, você deve estar ouvindo a música no computador servidor.
Jeito 2 - MPD
Ative o acesso ao Pulseaudio do servidor pela rede usando o paprefs
ou com o seguinte comando:
julio@acer ~> pactl load-module module-native-protocol-tcp auth-anonymous=1
Ou, de forma mais segura:
julio@acer ~> pactl load-module module-native-protocol-tcp auth-ip-acl="127.0.0.1;10.0.0.2"
Adicione um novo output ao arquivo ~/.mpd/mpd.conf
:
audio_output {
type "pulse"
name "Acer - Pulseaudio"
server "10.0.0.1"
#sink "remote_server_sink"
}
No menu 8 do ncmpcpp
você pode ativar/desativar este output.
RTP
O PulseAudio só faz multicast com RTP, isso acabou derrubando o Wi-Fi de casa.
julio@acer ~> pactl load-module module-rtp-recv
Controlar MPD pelo Android
Streaming pelo MPD
quality
é para VBR (variable bitrate) e bitrate para CBR (constant bitrate)
MPD streaming http
Em ~/.config/mpd.conf:
audio_output {
type "httpd"
name "My HTTP Stream"
encoder "vorbis" # optional, vorbis or lame
port "8000"
bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
bitrate "128" # do not define if quality is defined
format "44100:16:1"
max_clients "0" # optional 0=no limit
}
Basta abrir um player (pode ser um browser) em http://10.0.0.2:8000 e dar play.
MPD FIFO + netcat + VLC
Em ~/.config/mpd.conf
:
audio_output {
type "fifo"
name "FIFO2"
path "/tmp/mpd.fifo"
format "44100:16:2"
}
No servidor:
nc -u 10.0.0.2 8765 < /tmp/mpd.fifo
No cliente:
nc -u -l 8765 | ~/Applications/VLC.app/Contents/MacOS/VLC --demux=rawaud --rawaud-channels 2 --rawaud-samplerate 44100 --audio-desync=250 -
Links
- http://en.gentoo-wiki.com/wiki/PulseAudio
- http://wiki.openwrt.org/doc/howto/pulseaudio
- http://wm161.net/2007/06/24/how-pulseaudio-made-my-openhouse-awesome/
- http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Network
- https://en.wikibooks.org/wiki/Configuring_Sound_on_Linux/Pulse_Audio/Remote_server
- https://wiki.archlinux.org/index.php/PulseAudio/Examples
- https://www.linux.com/learn/tutorials/332418:weekend-project-using-pulseaudio-to-share-sound-across-all-your-computers
- http://mpd.wikia.com/wiki/Configuration