Supported protocols

Which audio streaming services/protocols are supported?

Ottercast is open source! If your favorite app/protocol is missing, open an Issue or integrate it yourself and send a Pull Request.

Snapcast

Snapcast is a multiroom-capable network audio player.
Ottercast can act as a Snapcast client and will connect to a Snapcast server which is streaming audio.
Multiple Ottercasts (and other Snapcast clients) can connect to the same server and will play perfectly synced audio.

Ottercast can also work as a Snapcast server and stream audio from it’s Line-In port to multiple Snapcast clients.

Spotifyd / Spotify Connect

Spotifyd is a Spotify Connect client, written in Rust, utilizing the librespot library.
Requires Spotify Premium.

Screenshot of Spotifyd

Shairport Sync / AirPlay

Shairport Sync is an open source reimplementation of the AirPlay protocol.
You can select your Ottercast as an AirPlay target on your iOS/macOS devices.
Shairport supports full audio synchronisation, which means audio/video sync will be enforced.

Screenshot of Airplay

PulseAudio Sink

Ottercast can act as a PulseAudio Sink via module-native-protocol-tcp.
Use paprefs to enable local discovery and ensure avahi-daemon is running.

Screenshot of paprefs

Line In

Not really a protocol, but a yet badly supported input method! Connect a line-in via the TRS jack on the back of the OtterCastAmp or the left TRS jack of the OtterCastAudio, then log onto the device via SSH and run pactl load-module module-loopback latency_msec=1.

You may need to adjust the input volume by running PULSE_SERVER=x.x.x.x pavucontrol and e.g. lowering the input volume to 30%.