in ,

Digital audio streaming 101

  • βˆ‡ — three data points form the bedrock of almost every music streaming system: a server to host the song stored as a digital file, a streamer to pull it across the network (or from the Internet) and a remote control, often a smartphone, to instigate the streamer’s pull action.

    Take the (now discontinued) Sonos Connect.

    We connect it to our home network via Ethernet or Wifi and hook its analogue outputs into the analogue inputs of an integrated amplifier (or pre-amplifier). The Connect will handle any digital to analogue conversion. We use Sonos’ smartphone app – running on the same data network as the Connect – to tell it to pull (to stream) a file from our network-attached storage device. This could be as simple as another computer on the network or as sophisticated as a dedicated NAS device. Some home routers will share the contents of a directly-attached USB drive across the network.

    So far, so LAN. Let’s widen our scope.

    If we’re streaming from Tidal, the Connect and the Sonos smartphone app assume the same roles as before but the server now sits, invisible to end-users, out in the cloud; an Internet-connected computer that doesn’t live in our house. When we hit play on the Sonos app, we tell the Connect to pull the song file down from the Tidal server directly, through the internet connection.

    Spotify Connect works similarly, only now we turn to Spotify’s own app to instigate the Sonos streamer’s file-pull from Spotify’s cloud servers. This triangular configuration is also the foundation of Google Chromecast streaming: pressing the ‘Cast’ button in any supported streaming service’s smartphone app will tell our Chromecast streamer – either Built-in or GCA puck – to pull the music file directly from the cloud.

    The best thing about the Sonos system is its ease of setup and extensive streaming service support. There isn’t a music streaming service on the planet that hasn’t made it into Sonos’ ecosystem. The Connect’s Achilles heels are its sound quality – D/A conversion that is audibly inferior to the Bluesound Node 2i – and a lack of hi-res support.

    A move to the Bluesound ecosystem sees the Node 2i talk to the same servers as the Sonos – at home or in the cloud – but obliges us to swap out Sonos’ smartphone app for Bluesound’s where fewer streaming services are supported. The basics are covered though: Tidal, Qobuz, Deezer, Amazon Music (among others) and Spotify Connect.

    Notable by its absence is Apple Music. Here, with the Node 2i, we fall back to Apple AirPlay or Bluetooth where, as we saw in a previous article, the data stream no longer travels directly from Apple server to Node 2i but through the smartphone. Turn the phone OFF and the music stops.

    Again, our streaming triangle model holds: the smartphone as remote control instigating the Bluesound streamer’s pull from the cloud.

    We note another signal path diversion when we stream Tidal or Qobuz using Roon. It tightly integrates both services but the stream (file pull) must travel through the Roon server before arriving at a Roon Ready streamer like the Bluesound Node 2i. That same Roon server (otherwise known as Roon Core) also hosts our ‘local’ library of CD rips and downloads.

    Yet another example of the streaming triangle: the Roon remote app installed to a smartphone (or any other instance of Roon) instructs the streamer in the rack pull a file from the Roon Core server or from Tidal/Qobuz servers.

    Out on YouTube, the wave of commenters peddling outmoded thinking in lieu of their own first-hand experience – that digital audio is just a matter of ones and zeroes – so that they mightΒ police the findings of others is more than one man can stand.

    The experts in this field – engineers who design DACs and streamers – tell us that digital audio thinking began to change as long as ago as the mid-90s: that jitter and electrical noise are the root cause of most audible differences between different digital feeds; that it rarely has anything to do with data integrity; that parallels drawn to print jobs and hard-drive transfers are the hallmarks of the Dunning-Kruger Effect.

    If we take the trouble to move from the Sonos Connect’s coaxial output to the Allo DigiOne stacked upon a Raspberry Pi, we hear more detail, a greater ease and better-defined player placement. It’s infinitely easier, cheaper and less exhausting to listen for oneself than it is to scream into the void for measurements that, although informative, simply cannot predict how product A will jive with product B. A DAC’s vulnerability to source jitter and electrical noise will vary according to make and model. Want to test yours for free and in a matter of minutes? Take the Audirvana challenge.

    Of course, there’s nothing to stop those who decline the first-hand experience of digital audio HAT audition from sticking with the Raspberry Pi’s own USB output/s. The only person you have to please is you. Horses n’ courses. Some audio folk derive their pleasure from knowing how gear measures. Me? I get my kicks from listening.

    And it’s this rationale that drove me toward the Wyred 4 Sound-modded Sonos Connect that leapfrogs the ALLO/RPi two-fer on performance and price (and returns Apple Music to the picture).

    However, it’s the RPi’s functional flexibility that makes it so attractive. Different operating systems (OS) can give us different streaming functionality. One OS might give us Roon Readiness, another UPnP compatibility, another Apple AirPlay, another Spotify Connect and another Squeezebox emulation. Some OS’s give us a selection of all of the above.

    All of these OS’s ensure that our Raspberry Pi-based streamer, connected to a DAC over S/PDIF or USB, remains the business end of our streaming triangle where any corresponding smartphone app can instruct it to pull down a music stream from a local or cloud server.

    Not even a PC or Mac in the rack, connected to a DAC via USB, escapes the streaming triangle. The PC/Mac can do time as a Spotify Connect endpoint, a Roon endpoint or a UPnP endpoint (renderer). Even the Audirvana app (Windows/MacOS), that also supports Tidal and Qobuz, can be controlled via its corresponding smartphone app. If the app tells Audirvana to play a download sitting on the same PC or Mac, the server and streamer become one.

    This single-box server-streamer situation is none too dissimilar to placing an Innuos server in the rack and having it stream to itself using the InnuOS’s Squeezebox platform or Roon. A smartphone app handles the file pull: from the Innuos’ internal hard-drive for downloads / CD rips and from the cloud for streaming services.

    And a single-box server-streamer setup that’s far more affordable than the Innuos ZENith SE is where we are headed next…

    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

    Podcast: Who the hell is Chris Whitten?

    Gold Note announces P-1000 MKII pre-amplifier