This suggestion builds upon an idea that I had to provide access to Roon from a remote site that I initialially posted about here:
As a solution to the use of Roon across sites, it has the potential to replace the need for desktop (Mac/Windows) versions of Roon. This is not intended to be a replacement for the mobile version of ARC which has it’s own value - for example use in the car or when otherwise mobile using a 4G/5G connection.
If Roon were to introduce a new Roon Server Proxy component/package to go alongside Roon, Roon Server, Roon Bridge and ARC, then this proxy could provide Roon sevices at the remote site. The proxy would not manage a local library although it could cache local library media files if it was felt to be of benefit.
The connection between a Roon Server Proxy and the Roon Server could be managed in a way very similar to that used by ARC and could quite possibly be managed with the same port forwarding rule at the router and so it need not increase the security vlunerability of the Roon Server and the LAN of which it is a part. It would, obviously, be subject to the same ‘incompatible with CG-NAT’ limitations as ARC.
All requests for streamed music would be passed by to the Roon Server in the primary site (unless the request relates to a caches track/album). The Roon server in the primary site would then pass the streamed file to the Roon Proxy server as fast as the connection allows where it would be buffered/cached so that the proxy could then stream it to endpoints in it’s own time - in much the same way as Tidal/Qobuz/KKBox currently present a streamed file to the Roon Server. This could be done with both local library and streamed content although it may be simpler to just pull streamed content directly into the proxy (as, I believe, ARC does). If necessary, similar ‘bandwidth management’ options to those used by ARC could be provided to limit the uplink bandwidth required at the Roon Server site and/or the downlink bandwith at the proxy site.
Once the content to be streamed is available to the proxy, it can be streamed to the endpoint using any of the conventional endpoint communication mechanisms (RAAT, Airplay, Chromecast, etc). DSP (including upsampling/DSD conversion) can be applied by the proxy.
Remotes and Endpoints would see no difference between a Roon Server Proxy and a Roon Server.
However, endpoints and remotes would not be shared between the Roon Server and any connected Roon Server Proxy. This would mean that:
- Remotes connected to the Roon Server would only be able to see (and use) endpoints connected to the Roon Server.
- Remotes connected to a Roon Server proxy would only be able to see (and use) endpoints connected to the same Roon Server Proxy.
If there are concerns about revenue (from a drop in use of multiple subscriptions per user), then the number of Roon Server Proxies that can be used with a given Roon Server could be limited (e.g. a standard subscription entitles the use of just one proxy at a time - but rights to use additional proxies could be purchased as an add-on to the subscription - or as part of a premium subscription tier).