RadioCapullo is a free, open-source Android application designed for music broadcasting and listening in a synchronized multi-device environment. It leverages a star topology to create an immersive audio experience, allowing multiple Android devices to play music simultaneously, enhancing volume and depth of field.
- Dual Functionality: Acts as both a Snapserver and Snapclient for music broadcasting and listening.
- Spotify Integration: Streams Spotify content seamlessly via librespot-java.
- Multiroom Audio Sync: Ensures synchronized playback across devices for an immersive listening experience.
RadioCapullo integrates librespot-java for Spotify content streaming and Snapcast for synchronized multiroom audio playback. This combination allows any Android device to become a Spotify speaker and part of a synchronized audio network.
+---------------+
| Spotify App |
+-------+-------+
|
| Initiates Playback
v
+---------------------+
| Android Device |
| (Server & Client) |
|---------------------|
| Server Control UI |
| librespot-java |
| FIFO Queue |
| Snapserver & |
| Snapclient |
| Broadcasts & Plays |
| Audio |
+----------+----------+
| LAN Broadcast
+--------------------------+-----------------------------+
| | |
+---------v---------+ +---------v---------+ +---------v---------+
| Android Device | | Android Device | | Android Device |
| (Client 1) | | (Client 2) | | (Client N) |
|-------------------| |-------------------| |-------------------|
| Client Control UI | | Client Control UI | . . . | Client Control UI |
| Audio Output | | Audio Output | | Audio Output |
| (Speakers, Sync | | (Speakers, Sync | | (Speakers, Sync |
| via Snapclient) | | via Snapclient) | | via Snapclient) |
+------------------ + +-------------------+ +-------------------+
- Server: Broadcasts audio and plays it simultaneously.
- Client: Connects to the server to play the broadcasted audio in sync.
- All devices must be connected to the same network (WLAN, Hotspot).
- Open RadioCapullo and press the Broadcast button.
- Use a Spotify app to select the device as a speaker and play music.
- RadioCapullo will start broadcasting and playing the music locally.
- Open RadioCapullo on another device and enter the broadcaster's IP.
- Click Play to start listening to the synchronized broadcast.
Contributions are welcome! Please fork the repository, make your changes, and submit a pull request.
Important
RadioCapullo's Spotify integration via librespot-java is intended for personal use within the bounds of Spotify's terms of service. RadioCapullo does not endorse or encourage any form of illicit use or misuse of the application.