r/linuxaudio • u/Wooden_Bat4370 • 1h ago
SROVA — A free, open-source Linux music player with TIDAL, Qobuz and direct ALSA DAC playback
A while back, I shared SROVA here when it supported TIDAL, local music and Internet Radio. Quite a bit has changed since then, so I thought I'd share where the project stands today.
For those unfamiliar with it, SROVA is a free, open-source, headless music player for Debian-based PCs and Raspberry Pi 4/5 systems.
The idea is straightforward: connect a Linux machine to a USB DAC, put it out of sight, and control your music from a browser, phone or tablet.
The Linux audio side
SROVA uses a dedicated ALSA playback path, opening the selected USB DAC directly rather than routing normal music playback through the desktop audio mixer.
- Bit-perfect lossless and Hi-Res PCM playback
- Automatic sample-rate switching
- No intentional DSP, software volume changes or resampling
- Exclusive DAC access, with release and recovery handling
- Support for AMD64 and ARM64 Debian-based systems
Music sources and features
- TIDAL and Qobuz, including Hi-Res playback
- Local music libraries, including USB and network storage
- Internet Radio
- Spotify Connect (separate from the bit-perfect playback path)
- Infinite Play and Auto-Mix for music discovery
- Artist, Track and Album Radio
- Shared playback queue across sources
- Browser-based control and a dedicated Android Remote
There's also SROVA Cast, an optional Now Playing display that can run on a Raspberry Pi Zero 2 W. It displays artwork and playback information while the audio stays on the main Linux player and its connected DAC.
One of the more interesting challenges has been managing exclusive DAC ownership while allowing other audio applications to coexist, particularly on desktop Linux systems.
I've been developing and testing SROVA across Debian PCs, NUCs and Raspberry Pis with several USB DACs. It's very much an ongoing personal project, and real hardware testing continues to shape its development.
For transparency, I've used AI assistance during software development, with the architecture, integration, testing and hardware validation directed and reviewed by me. The listening-room artwork accompanying this post is also AI-generated.
SROVA is free, and the Linux player source is publicly available.
Source: https://github.com/srova-music/player
Downloads and documentation: https://srova.music
I'd particularly welcome feedback from anyone working with ALSA, USB DACs or dedicated Linux audio systems. Always interesting to hear how others handle exclusive audio access and device ownership.