Try to understand the whole streaming process for Antipodes


I’m a long time vinyl lover, but new to streaming. :blush:
I’m trying to understand the whole streaming process by reading the “design” page: Design - Antipodes
So I’m try to summarize the process, and please correct me if I’m wrong.

Suppose I have a PC running Roon Core as server, with internal SSDs for music.
1, Roon Core server picks a flac file, and send it out via RJ45, using network protocols, to Player device (Roon Ready)

2, A Player (Roon Ready) receives the flac file and converts it into a music streaming. Then sends out via USB using USB audio protocols.

3, A DAC receives the streaming via its USB interface and do the rest jobs (reclocking, DSP, DA converting, etc.)

Please let me know if my understanding is correct.
If it’s correct, then my question is:
1, Why Roon Core can’t directly send out the streaming to DAC via the USB interface on PC (regardless of sound quality)?

Is Roon Core sending out files or streaming? Is the output the same as sending out a general Word file to other computers?

Many Thanks.

You are actually asking questions about how Roon works. They used to have some information on their site that helped to explain this. You should dig around there.This is one example.

Roon has a proprietary technology called RAAT that they use to communicate between Roon Core and Roon devices. This allows them to find Roon devices on a network and then stream to them. Search for “RAAT” on their site.

The Roon devices themselves are essentially computers that can receive incoming streams and then play them to a DAC. It’s just that the incoming stream uses the RAAT protocol vs USB.

There are other ecosystems that work in a similar fashion. Apple AirPlay is roughly equivalent to Roon RAAT, for example. Squeeze has a Squeezebox streaming protocol. And HQPlayer has their own protocol for communicating with devices run their NAA,

Thanks for the reply.
To make it simple, my question is why we need an expensive Roon Core Server?
To my understanding, Roon Core Server is passing the music package (such as a .flac file) to Roon Ready devices, via RAAT (actually TCP). So the Roon Ready devices can receive the .flac file without any issue, and there is no clocking signals inside, just like pass a normal file cross the network.
I can understand we need a good Roon Ready device (player), because it transforms the .flac file into the music stream. But quite confused why everyone is advocating using a special expensive Roon Core Server.

Simply put: because the server on which Roon Core runs can have a profound impact on sound quality. Streaming a flac file at the highest fidelity isn’t a trivial thing to pull off - especially when the server app is constantly keeping busy doing other things. Sound quality benefits come from properly dealing with the noise that arises from all that as that noise leads to increased jitter. See the graph titled “Digital signal with noise” in this to and note how noise impacts when the high and low thresholds are crossed. Sound quality is harmed when these thresholds aren’t crossed at exactly the right time. Once that harm is done in the Server, nothing downstream can undo that.

I don’t’ believe that Room Core is just passing on the flac file to the player. I think that it is packing the data into a stream and then sending it via the RAAT protocol.

I would strongly encourage you to try to arrange to get a demo server so you can hear it yourself.

1 Like

Thanks for the message.
I read the paragraph and the graph “Digital signal with noise”. It says “This works very well for transmitting web pages, emails, spreadsheets, etc. It also works for transferring video and music files. But the situation is different when you are streaming video and music files, because timing becomes a factor.”

My understanding is that the timing issue starts from the player’s output (via USB). What the player receives is the music file, which does NOT contain timing signal, but timing info in the header instead. So I guess there is no timing issues when Server is transmitting to Player.

If a PC is trying to send a file to another PC via network, the content is 100% guaranteed, otherwise the file won’t be available at the destination side.

So my question is: is the server sending music files? or a file stream to Player? What’s the difference between sending a file and sending a file stream? If server is sending the file stream, will the player receive the music content (no timing) perfectly?

Your understanding is too simplistic. Mine is only slightly less simplistic so I can’t give you a crisp explanation. What I do understand is that it’s far more complex as there is two way communication between the endpoint and the core so timing still matters.

Harm starts occurring even before the server via the network. Have someone unplug the network cable as you listen and if you’ve taken steps to lower the noise floor in your system there’s a good chance you hear a difference. (Roon looses its mind when the network is dropping so you might need to use a different option to try this experiment.)

As an aside, another member on the WBF forum reached out recently as he’s built his own DC cable and wanted to get my opinion of it. His focus was on beating the cables Farad sells to go with their Super3 power supply. I have one of those powering my EtherRegen. It wasn’t difficult hearing the difference between his cable when playing local files off the K50. Local files don’t pass through the EtherRegen so one would think using your reasoning that this DC cable shouldn’t matter - but it did. I repeated the comparison when streaming from Qobuz. The improvement from his cable could be heard there too. It’s clear that highly resolving systems are incredibly sensitive to noise and distortions - and that taking steps to reduce both pays dividends. It stands to reason then that a noisy server should have no place in a high end audio system.

Please see this on TAS: A Roon Primer - The Absolute Sound

It mentions that Core Server is passing data package to Player (Renderer), then transform to stream to DAC.

Thanks for the trip down memory lane. That was from 2018, when Roon be one of the better sounding solutions.

That article doesn’t go deep enough to explain why the server running Roon matters as far as sound quality. Just saying that it “passes a data package” doesn’t do it justice.

I’m going to drop from as I don’t think I have anything more that I can add to this discussion. I’ve never needed to know why as I leave it to my ears to decide such things.