PDA

Visualizza la versione completa : Streaming audio al raspberry


psykopear
22-12-2013, 17:36
Voglio fare in modo di mandare in streaming l'audio di un pc, verso il respberry connesso alle casse, attraverso la rete locale. Sono riuscito bene o male ad ottenere questa cosa con pulseaudio, impostando il raspberry come receiver, e caricando i moduli necessari da pacmd sul computer che deve mandare l'audio. Il fatto è che una volta mandato l'audio al raspberry non riesco a tornare alla situazione normale (neanche riavviando pulseaudio), l'audio continua ad andare li (e se il rasp non è connesso mi crashano le applicazioni che utilizzano l'audio, rhythmbox, o youtube). C'è un modo più semplice per fare questa cosa?

edit: praticamente l'idea sarebbe di fare in modo di avere due device output audio, selezionabili dalle preferenze audio, uno che mandi l'audio agli speaker del pc, uno che lo mandi al raspberry

sacarde
23-12-2013, 21:47
http://ywwg.com/wordpress/?p=1201

psykopear
23-12-2013, 23:11
http://ywwg.com/wordpress/?p=1201

grande, più tardi provo. Avevo già provato con sox, ma mi bloccava il device sul pc che deve mandare il suono. Creando il device di loopback dovrebbe andare, fra stasrea e domani provo e vi aggiorno

psykopear
24-12-2013, 14:55
grande, più tardi provo. Avevo già provato con sox, ma mi bloccava il device sul pc che deve mandare il suono. Creando il device di loopback dovrebbe andare, fra stasrea e domani provo e vi aggiorno

alor, penso di esserci vicino, però non va. Ho caricato il modulo sul notebook, con index 3, perchè da aplay -l vede già due device (hdmi e speaker)


**** List of PLAYBACK Hardware Devices ****card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Generic_1 [HD-Audio Generic], device 0: 92HD81B1X5 Analog [92HD81B1X5 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: Loopback [Loopback], device 0: Loopback PCM [Loopback PCM]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: Loopback [Loopback], device 1: Loopback PCM [Loopback PCM]
Subdevices: 1/1
Subdevice #0: subdevice #0




Ho creato l'asoundrc come dice nel tutorial, se vado nelle preferenze audio riesco a vedere sia gli speaker che il loopback, però selezionandolo l'audio non arriva. L'ouptut di sox (lo do dal netbook e mando in ssh il risultato, non dovrebbe cambiare nulla rispetto alla guida)


psykopear@Athos:~$ sox -q -t alsa loop -t wav -b 16 -r 48k - | ssh -C pi@192.168.1.4 play -t wav -q -sox WARN wav: Length in output .wav header will be wrong since can't seek to fix it
pi@192.168.1.4's password:
sox WARN alsa: over-run
play WARN alsa: can't encode 0-bit Unknown or not applicable

sacarde
24-12-2013, 15:04
io il comando:


ssh -C user@hostname sox -q -t alsa loop -t wav -b 16 -r 48k - | play -q -

lo do dal pc che ha le casse, e ricevo il suono che ho dal pc sorgente

psykopear
24-12-2013, 15:37
si lo davo dal notebook perchè al pc con le casso mi ci connetto già via ssh, e da li fare una connessione ssh verso questo pc mi sembrava un pò incasinato. Comunque il risultato non cambia,



pi@raspberrypi ~ $ ssh -C psykopear@192.168.1.2 sox -q -t alsa loop -t wav -b 16 -r 48k - | play -q -
play WARN alsa: can't encode 0-bit Unknown or not applicable
psykopear@192.168.1.2's password:
sox WARN wav: Length in output .wav header will be wrong since can't seek to fix it
play FAIL formats: can't open input `-': WAVE: RIFF header not found
pi@raspberrypi ~ $ ssh -C psykopear@192.168.1.2 sox -q -t alsa loop -t wav -b 16 -r 48k - | play -t wav -q -
play WARN alsa: can't encode 0-bit Unknown or not applicable
psykopear@192.168.1.2's password:
sox WARN wav: Length in output .wav header will be wrong since can't seek to fix it
play WARN alsa: under-run
play WARN alsa: under-run


a meno che non ho caricato il modulo in modo sbagliato, o qualche errore nel asoundrc


psykopear@Athos:~$ cat .asoundrc
pcm.loop {
type plug
slave.pcm "hw:Loopback,1,0"
}
psykopear@Athos:~$

sacarde
24-12-2013, 18:21
io eseguo:

- i punti 1 e 2 sul pc senza casse
(il modulo lo trovi gia caricato? probva a rimuoverlo e a ricaricarlo con i parametri)

- lancio uno streaming audio (dal pc senza casse)

- dal pc con le casse eseguo il comando: ssh....ecc
mi da dei messaggi:

sox WARN wav: Length in output .wav header will be wrong since can't seek to fix it
play WARN alsa: under-run
play WARN alsa: under-run
...

ma sento l'audio

Loading