Sendspin-audio Provider 
Section titled “Sendspin-audio Provider ”Sendspin-audio is an audio playback, control, and synchronization protocol developed by the Open Home Foundation. It is the native playback protocol built into Music Assistant, providing synchronized audio playback across multiple clients with sample-accurate timing.
Because Sendspin is license-free and open source, anyone can build apps, devices, and integrations using the protocol. The specification is available at github.com/Sendspin/spec.
CAUTION
Technical Preview
Sendspin and its implementation in Music Assistant are currently in technical preview. While functional, the protocol and implementation may change.
Features
Section titled “Features”- Synchronized multi-room audio: Sample-accurate playback across all connected devices
- Automatic discovery: Sendspin devices on your network are automatically detected by Music Assistant
- Per-player DSP: Individual equalizer and volume settings for each device
- Bidirectional control: Clients can control playback (play, pause, skip, etc.)
- Real-time metadata: Track info, artwork, and playback progress on all devices
Configuration
Section titled “Configuration”The Sendspin provider is built-in and always enabled. There are no configuration options required to get started.
Individual Sendspin players will appear automatically when clients connect
Settings
Section titled “Settings”Standard player settings apply. Specific settings available for this player type are:
- Sync delay (ms). Not all devices allow this correction but when available is allows a for static delay to be applied for audio synchronisation
- Output channel mode. The default is
Stereobut other options areLeft channel only,Right channel onlyorMono (both channels)
Known Issues / Notes
Section titled “Known Issues / Notes”- The Sendspin provider is added by default
- The web player appears automatically in the player list
Limitations
Section titled “Limitations”- Technical preview: The protocol is still evolving
- Network requirements: For direct connections, devices must be on the same network as Music Assistant
- WebRTC requirements: For remote access via WebRTC, Home Assistant Cloud (Nabucasa) provides optimal TURN server support for reliable connections through firewalls
Specification Compliance and Deviations
Section titled “Specification Compliance and Deviations”There are some gaps between this implementation and the specification at github.com/Sendspin/spec. Both are subject to change. Known deviations include:
- Player Format Changes through
stream/request-formatare not yet supported - The
pausedplayback_stateis never used - onlyplayingandstoppedare sent to clients - All streams are ended immediately when playback stops, skipping to the next track, or when seeking. Artwork is also cleared during pause, seek, or loading of the next track
- Multi Server Support messages are implemented but not fully utilized - only a single server per network is supported
- Only 16-bit audio formats are supported
Supported Clients
Section titled “Supported Clients”Several client types can connect to Music Assistant via Sendspin:
| Client | Description |
|---|---|
| Web Browser | The built-in Music Assistant web player uses Sendspin for local playback |
| Google Cast (Sendspin mode) | Experimental Sendspin mode for Chromecast devices |
| Home Assistant Voice PE | Alpha firmware for the Home Assistant Voice Preview Edition |
| Sendspin Bluetooth Bridge | Bridges Bluetooth speakers as MA players — multi-device, multiroom sync, web dashboard. Deploys as HA addon, Docker, or LXC |
| Various Sendspin Clients | Clients are becoming available for various platforms |
How It Works
Section titled “How It Works”Automatic Discovery
Section titled “Automatic Discovery”Sendspin devices on the local network are automatically discovered via mDNS and will appear in Music Assistant. No manual configuration is required.
The Web Player
Section titled “The Web Player”The built-in web player in the Music Assistant frontend uses Sendspin for audio playback. When on a local network, the web player will attempt to use a direct WebSocket connection for best performance; otherwise it falls back to WebRTC.
The sync delay can be adjusted under Settings → User Interface → Sendspin sync delay. This value is auto-selected based on the platform but may need manual adjustment.
Codec Support
Section titled “Codec Support”The audio codec used depends on the connection and platform:
- Local connections (on the same network): FLAC (lossless) is used on desktop browsers and Android. iOS, iPadOS, and Safari use Opus.
- Remote connections (via WebRTC): All browsers use Opus.
NOTE
Firefox on Android does not support remote (WebRTC) playback.
Connection Methods
Section titled “Connection Methods”Sendspin supports two connection methods:
- Direct WebSocket: Used automatically by clients on the same local network as Music Assistant, including the web player and hardware devices.
- WebRTC: Used for remote access when not on the local network. Works across networks and through firewalls. The web player falls back to this method when a direct connection isn’t possible.