Spotify Connect via Audio Entrypoint - TheAppgineer/roon-entrypoints GitHub Wiki

Introduction / Preparation

The Audio Entrypoint can be used to get a Spotify stream into Roon. The approach described here is an alternative for using the Bluetooth Entrypoint, and is probably a more robust approach.

The method described here assumes a few things, being:

  • The Entrypoint is running on a physical Raspberry Pi running DietPi, not in a DietPi VM (as that hasn't been tested)
  • There is no HAT connected to the PI, and the Pi is, audio wise, solely used for this purpose (i.e. fixed ALSA configuration)

ℹī¸ The steps to follow for this to work are a bit more advanced than what is required for a basic Entrypoints installation, be prepared :)

💡 This guide might also apply for Airplay input if Shareport Sync is used instead of Raspotify

The method uses a Raspotify installation to let the Pi become a Spotify Connect device. The audio output of this is connected to the audio input of the Audio Entrypoint. This is done via an ALSA Loopback device, meaning that there are no physical audio inputs and outputs used.

ℹī¸ Before following this guide you really first have to follow Step 1 till Step 4 and Step 6 of the Raspberry Pi Installation Guide, and the Entrypoint Gateway and Audio Entrypoint parts of the User Guide (nobody said it was easy ;) )

Step by Step Guide

Enough theory, here are the steps to take:

ℹī¸ All commands have to be executed on the DietPi console, as described in the Installation Guide

  • Install Raspotify: dietpi-software install 167
  • Install the ALSA Loopback device: echo snd-aloop >> /etc/modules
  • Reboot the device: reboot
  • Login again after the reboot and run the DietPi config command: dietpi-config
  • Select the "Audio Options" → "Sound card" and select "Loopback Loopback PCM [hw:0,0]" near the bottom of the list
  • Exit dietpi-config by selecting Back Exit Ok

  • Make sure that the Audio Entrypoint and Entrypoint Gateway are installed via the Extension Manager, as described in the Installation Guide
  • Open the Audio Entrypoint Settings and select the second "Loopback Loopback PCM" device in the "Sound Card" dropdown
  • After selection the "Sound Card" should have (hw:0,1) in its name, after which you can select "Save"

  • From this point on you can follow the User Guide for setting up the web-stream

As Roon only accepts "live" streams during setup and playback there are a few things to note:

  • Start playback in Spotify client, while connected to and controlling Raspotify (DietPi), then setup the stream
  • During later playback sessions, start Spotify first and then start playback of the radio stream in Roon

Some changes in the Raspotify configuration might be useful (nano /etc/default/raspotify):

  • The reported name can be changed via the DEVICE_NAME variable
  • The bit rate can be changed via the BITRATE variable, the default of 160 kbps can be increased to 320 kbps
  • Restart Raspotify to apply the changes: systemctl restart raspotify.service

ℹī¸ Activate a variable by removing the # character at the beginning of the line, then change the value between the double quotes

Enjoy Spotify in Roon!