I would like to know, or be shown where I can see the process that Roon takes to play a file. First does it change ALAC/FLAC to aif/wav at the core, or at the endpoint. What format does Roon use to play? As in AIFF or Wave, are the files sent to the endpoint compressed or uncompressed. Are the playing file, played from memory, or realtime on the fly.
I am interested in learning the flow of the software, so that I might use it to advantage, rather than ‘it just happens.’ I am interested in what things in my control I can leverage for my enjoyment, and or learn of things perhaps to not follow.
The quickest way to see what is going on during playback is to look at the Signal Path. Every processing step is shown there.
There are a lot of variables to consider, like DAC Hardware. But, the really stripped down basics are:
For PCM based file sources, Roon basically processes those sources as PCM, applies DSP (if engaged) and then sends it to the endpoints as uncompressed PCM. Or, if upsampling to DSD is engaged by the user, as DSD. End points never do processing, it is all done on the server. DSD material is either processed and sent completely in the DSD realm or converted to PCM as dictated by user, DSP or hardware necessities.
The files are played back in buffered real-time, it is certainly not a “play the whole thing from memory” deal. If you care, there are many responses on the forums by the devs as to why. In fact, many questions can be answered by doing searches on the forums, there is a vast depth of information lurking around for those that search for it.