in ,

Raspberry Pi audio streaming 101

  • IT 101. An Apple Macbook or Windows-based PC is made up of two fundamentals: the hardware; and the software that runs on the hardware.

    We can see the hardware if we pop the lid and take a peek inside: the CPU, the RAM, the storage (SSD or HDD) and the inputs/outputs (I/O). The software that we install onto our PC or Mac allows us to interface with the hardware: a keyboard and mouse allow us to tell the computer what to do; a screen outputs visual feedback.

    And its through the screen that we get to ‘see’ the operating system – usually Windows, MacOS or Linux – and any other applications we might have installed: MS Word, Adobe Photoshop or VLC.

    A network streamer is not too dissimilar to a PC or Mac. At its most basic level, it’s a computer made up of hardware and software whose only task is to receive a digital audio stream from a nearby server or the cloud via Ethernet or Wifi and pass it on to its own internal DAC – or an external DAC via USB. The DAC decodes the digital signal to analogue and sends it onto an amplifier. In other words, a network streamer is a computer solely dedicated to audio playback.

    Where it differs from a Mac or PC is that we don’t give our network streamer instructions via a keyboard and mouse. We talk to it over the network using a smartphone and/or desktop app.

    Perhaps the most recognised makes and models of network streamer are the Sonos Connect (now Sonos Port) and Google’s (now discontinued) Chromecast Audio. Sonos – and to a lesser extent Google – built their market reputation on 1) being super easy to set up and, when the mainstream moved from downloads to streaming, 2) supporting an enormous range of streaming services.

    Seemingly of secondary concern to both Sonos and Google was sound quality. We know this because of better sounding – but lesser-known – alternatives like Bluesound’s Node 2i (€550) and AURALiC’s Aries Mini.

    The Aries Mini is now discontinued but in the last two years, Bluesound has carved itself a larger niche of the entry-level network streaming pie by developing BluOS – the software that runs on all Bluesound hardware and its associated smartphone and desktop apps – to a point where it now rivals Sonos on user-friendliness and setup ease. A touch panel gives us access to volume control, play/pause and track previous/next without having to pull up an app. A front-facing 3.5mm headphone socket brings headphone users into play. For power users, we note hi-res audio support, a subwoofer output and an analogue/TOSLINK input.

    One potential downside for a small number of power users: the BluOS operating system is inseparable from the Node 2/2i’s hardware. We cannot install our own. Bluesound calls the shots on software updates and, therefore, on product lifespan.

    Pi 101. If we wish to consciously decouple software from hardware, an off-the-shelf solution like a Bluesound or a Sonos won’t do. Instead, we look to the world of Raspberry Pi (RPi)where greater potential user intervention brings with it greater potential complexity. It’s tiny! This ‘Single Board Computer’ (SBC), that I sometimes call a ‘Small Board Computer’, offers the basic functionality of a Linux PC but with reduced processing power. It’s cheap too at €35/piece. Add a case for €7 and a 5V power supply for €8 and we have ourselves a network streamer for €50. What’s not to like?

    For the beginner, quite a bit, actually.

    The RPi has no internal permanent storage (HDD/SSD) of its own and runs the OS directly from a microSD card inserted into its side.

    There are hundreds of to choose from, each bringing varying degrees of functionality to our RPi. This flexibility can also induce choice paralysis. Volumio is perhaps the most well-known and simplest starting point for first-timer RPi streamers; it integrates Spotify Connect, Tidal and Qobuz (the latter two for a fee). PiCorePlayer is for those who wish to run the RPi as a Squeezebox Client (or server) where Spotify Connect, Tidal and Qobuz functionality comes via server’s plugins section. RoPieee XL gives us Roon ‘Readiness’, which integrates Tidal and Qobuz, and serves Spotify Connect on the side.

    Once we’ve downloaded our chosen OS, we must write it to a microSD card (using balenaEtcher or similar).

    [Side note: the RPi hardware supports Ethernet and Wifi but some operating systems are Ethernet only.]

    Music playback control doesn’t come from any official Raspberry Pi app but the ‘apps’ corresponding to the operating system’s functionality: Volumio users need only punch in volumio.local into a web browser; PiCorePlayer calls for OrangeSqueeze or iPeng; RoPieee will take instruction from Roon remote running on any desktop or smartphone. For Spotify Connect we look to the Spotify app.

    The RPi’s secondary weakness is its sound quality. The onboard analogue output is inferior to both the Sonos Connect and the Google Chromecast Audio. One quick fix is to add an external USB DAC. Alas, on all but the Model 4, the RPi shares its USB data bus with Ethernet. Audible dropouts are common. And if we’re lucky enough not to witness those, via more revealing hi-fi/head-fi systems we might hear a hint of metallic sheen on cymbals and hardness on horns.

    [Side note: to call a DAC ‘badly designed’ for not coping with the RPi’s digital shortcomings is like blaming Ford for the Fiesta’s inability to deal with rough terrain.]

    Time to level up. A ‘Hardware Attached on Top’ moves D/A conversion or digital signal clean-up to a secondary board attached to the RPi’s 40-pin riser. Now we can realise sound quality superior to both the Sonos Connect or Google Chromecast Audio and in analogue (ALLO Boss) and digital S/PDIF domains (ALLO DigiOne, JustBoom Digi HAT).

    If all this reads like too much to handle, take 20mins to watch our ‘Beginners Guide to Raspberry Pi streaming’ video in which I also contextualise any HATted improvements with the Bluesound Node 2i. An RPi-based streamer can’t compete with the Bluesound Node 2i on functional niceties, ease of setup and (especially) looks, but it can very much compete on sound quality and software flexibility.

    Further information: Raspberry Pi Foundation

    Written by John

    John currently lives in Berlin where he creates videos and podcasts for Darko.Audio. He has previously contributed to 6moons, TONEAudio, AudioStream and Stereophile.

    Darko.Audio is a member of EISA.

    Follow John on YouTube or Instagram

    We can work it out!

    iFi’s hip-dac to tackle ‘Fisher-Price’ audio quality