Experiments with Airplay, Chromecast, and Sonos streaming

Hello, I been looking at ways to stream live audio from the Organelle M to some of the popular networked speakers: Airplay, Chromecast, and Sonos.

There’s a great project called Forked Daapd that supports sharing a music library with these speakers. However, it also supports streaming audio from a Unix named pipe (aka a fifo) in stereo S16_LE format at 44100 Hz.

I wrote a PD objected, uncreatively named writefifo~, to construct and write to a fifo in forked-daapd’s library directory. Using forked-daapd’s JSON API (the Debian package doesn’t ship the web interface) I can connect to a networked speaker and audio from a PD patch will start playing. However, it soon cuts out and I have to teardown the fifo and restart the PD and forked-daapd processes to continue. By the way, this PD to fifo to forked-daapd setup works fairly well on my laptop.

I’ve also experimented with a virtual ALSA device that writes audio to a fifo based on an example here. Make sure you pass the -alsaadd default so you can select your virtual ALSA device from PD. However, I’m not getting any sound out of this ALSA created fifo.

Anyways, I figured I share this with the community, in case anyone else wanted to give it a try.