I just finished up a pretty cool project this weekend and want to share this with the forum. I put together a Linux-based Raspberry Pi Audio Streamer that works great so far...DLNA, Airplay, NAS capabilities, Spotify (via airplay from iPad), and local FLAC playback are all up and running. It was a fun project, and in fact the resulting capabilities are much broader than I had initially hoped. I initially planned for a silent DLNA box but once it was up and running Airplay and Local Hard Disk Playback were easy extras.
The Raspberry Pi is a $35 SOC based computer installed on a small credit-card sized circuit board. This tiny computer easily bests the desktop giants that I had as a student in the mid-90s, for 2% of the cost...still kind of blows my mind!
Pictures attached. If anybody would like to duplicate this project here's the hardware, resource links, and rough guide to the software installation.
Hardware:
Raspberry Pi Model B
5v Micro USB cable and powersupply (from old HTC phone)
8gb SD Card
Ethernet cable
USB cable (to connect to DAC in stereo)
Case (I used a plastic box from Office Depot)
External Hard Drive and powered USB hub (optional for local file playback)
Software:
Volumio Operating System (1.2 Beta)
PC on local network with Win32DiskImager for OS install and Putty for setup via SSH.
GMediaRenderer
(Edit: there is a better DLNA renderer, upmpdcli from
http://www.lesbonscomptes.com/upmpdcli/index.html see below for details)
Shairport
Raspberry Pi has many linux image files available for the operating system. I selected the Volumio build, which is an offshoot from the Raspyfi project started a few years back. The OS is optimized as much as possible on the Raspberry platform to provide good quality audio via USB, and includes a webinterface for setup and local playback. You can do all setup via SSH, at no point do you need the Raspberry Pi plugged into a monitor with this OS.
Once you assemble the hardware, download the system image and flash the OS onto the SD card using Win32DiskImager.
http://volumio.org/get-started/After the image has been transferred to the SD card, plug in the SD card, ethernet, USB DAC, and power cable to the circuitboard, which will automatically boot when you plug in the power supply.
You can now open up the web interface using another computer on the LAN with the following link:
http://volumio.local/You can select audio output and test the sound using the Shoutcast stations provided in Volumio's webradio folder. Also, go to the Network settings in the top right corner and write down the ip address. If you attach local storage (you need a powered usb hub for this because of the limitations of the Raspberry Pi's usb power), you can set up playback from the drive here. File navigation is limited to folder structure, so you definitely need DLNA and Airplay.
DLNA and Airplay take a few more steps:
Using putty to log into an SSH session with Volumio. User name is 'root' and password is 'volumio' by default.
From here, you have to do a few manual software updates in order to get DLNA and Airplay working. This is all done via the command line, but doesn't take much technical knowledge beyond cut-and-paste!
For DLNA Renderer setup, here are the command line steps to install GMediaRenderer:
From the how-to's at:
https://github.com/hzeller/gmrender-resurrect/blob/master/INSTALL.md
and
http://blog.scphillips.com/201…..revisited/
$ sudo apt-get install autoconf automake libtool
$ sudo apt-get update
$ sudo apt-get install libupnp-dev libgstreamer0.10-dev \
gstreamer0.10-plugins-base gstreamer0.10-plugins-good \
gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly \
gstreamer0.10-ffmpeg gstreamer0.10-alsa
$ sudo apt-get install git
$ git clone https://github.com/hzeller/gmrender-resurrect.git
$ cd gmrender-resurrect
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
Then I had to edit one line in the start/stop script. So start the editor with:
$ sudo nano scripts/init.d/gmediarenderer
and change one text line from this:
DAEMON_USER="pi:audio"
to this:
DAEMON_USER="root:root"
Then exit with ctrl-x and save
$ sudo cp scripts/init.d/gmediarenderer /etc/init.d
$ sudo update-rc.d gmediarenderer defaults
$ sudo shutdown -r now
Now RaspyFi should show up on any DLNA controller you use.
If you don't see the device appear as a zone under MC, go to options and search for dlna controller and make sure the box is ticked.
I added Airplay because I wanted access to the Spotify library as well as MC playback. An Apple Device + Shairport seemed the easiest route to accomplish this. Volumio is supposed to have this capability installed already, but the software is out of date and you have to rebuild the Shairport package installation. I followed the following steps on the SSH command line interface with no problems:
http://volumio.org/forum/tutorial-update-shairport-the-airplay-daemon-latest-t654.html#p2393That's it! Hardware cost is very low, sound quality is excellent. Gapless playback works from JRiver.
My subjective evaluation is that sound is good for Airplay, even better for lossless JRiver DLNA, and best from Volumio Local FLAC playback. This may be do to some optimization that Volumio employs for the Linux sound output, perhaps the other two methods don't have the same level of software output. In any case, sound quality sounds very good to me but I can't verify that it is bit-perfect (UPDATE: there is an occasional (every 20min or so) low volume pop, very faint but of uncertain cause.)
Pictures attached below, happy to help with any questions.