Home - TheAppgineer/roon-entrypoints GitHub Wiki
Roon Entrypoints
Entrypoints is a collection of Roon extensions that act as an input to your Roon system. Music from input devices like turntables, cd players and phones can be streamed to Roon zones and can use the Roon specific features like DSP.
ℹ️ Entrypoints are Docker based extensions, they require the Extension Manager running on a Linux host.
💡 The recommended / easiest / cheapest way to set this up is by using a Raspberry Pi, running DietPi.
Getting Music Into Roon
The only way to get music into Roon that isn't file based is via a web-radio stream (called Live Radio in Roon). The web-radio stream is hosted in the local network and can be played back on the different network devices. A disadvantage of this method is that the latency is in the seconds range, meaning that it can't be used to stream the audio of a video, as it will get way out of sync.
ℹ️ This method was already used by the CD Player extension. Entrypoints is the replacement for this.
The Building Blocks
Entrypoints consists out of two main parts, the Gateway and the input specific Entrypoint extensions. There should be one Gateway in the system and there can be multiple Entrypoints. You can see this architecture as a mirror of the Roon architecture, Core vs Gateway and Endpoint vs Entrypoint.
An example setup is shown below, Entrypoint extensions should run on the device that has the physical connection to the input device. The Gateway can be on any device that can run Docker based extensions, e.g. a (non-ROCK) Linux system running the Roon core.
Like any Roon extension, Entrypoint extensions are setup via ☰→Settings→Extensions in the Roon Remote.
Entrypoint Gateway
The Gateway is the central server taking care that the incoming streams are hosted as web-radio streams to the Roon Core. One such Gateway in the network can serve multiple Entrypoint extensions.
Entrypoint Extensions
An Entrypoint extension takes the audio from a device and sends it as a FLAC stream (lossless) to the Gateway. The currently supported input devices are soundcards (ALSA), optical USB drives, Bluetooth and Spotify Connect. Multiple devices in the network can act as an Entrypoint, allowing e.g. the input from multiple turntables, set up throughout the house, being streamed to all zones.
Audio Entrypoint
The Audio Entrypoint gets music via the analog or digital input of a soundcard (using ALSA sound drivers). This can be the soundcard of a Linux PC or an audio input HAT on a Raspberry Pi (e.g. HiFiBerry DIGI+I/O for digital or HiFiBerry DAC+ADC for analog).
BT Entrypoint
The BT Entrypoint gets music from a phone, tablet or laptop via a Bluetooth connection. This provides an easy way to play music brought in by family and friends on your Roon system. From the connected devices you select the one that has "the floor" via the BT Entrypoint Settings in Roon.
CD Entrypoint
The CD Entrypoint gets music via a connected USB optical drive.
Librespot Entrypoint
The Librespot Entrypoint gets music via Spotify Connect.
Installation and Setup
Detailed installation instructions for the Raspberry Pi can be found in the Raspberry Pi Installation Guide.
Detailed setup instructions can be found in the User Guide.
The Introduction Video shows how to install and setup the Entrypoints system via the Extension Manager.