Feature Request: add native sndio backend #633
Replies: 5 comments
-
We will eventually move to cpal/rodio for audio playback, or alternatively some sort of audio sink plugin system, though this will be in the daemon. For now, we don't want any other backends to maintain, as it's not really the aim of this project, and audio sinks have had too much dev time spent on them already. Thus I'm marking this as wontfix, though it may be addressed in librespotd once that is implemented. |
Beta Was this translation helpful? Give feedback.
-
Actually, will leave this open, as that's what we've done w/ other feature requests. |
Beta Was this translation helpful? Give feedback.
-
It looks like portaudio supports sndio Perhaps anyone who's interested could try using sndio via Librespot's portaudio backend and report back. I can't immediately see any sndio bindings for Rust which would be a pre-requisite for support here, or cpal (if they're open to adding more backends). |
Beta Was this translation helpful? Give feedback.
-
The PortAudio backend worked on OpenBSD when I tried it awhile ago. Someone would probably need to add sndio support to CPAL if the PortAudio backend gets dropped. |
Beta Was this translation helpful? Give feedback.
-
I recently implemented GStreamer support here: https://github.com/allquixotic/librespot/tree/gst1.0-2020 There's a GStreamer sndio sink here: https://github.com/t6/gstreamer-plugins-sndio You could play back to sndio using a command like |
Beta Was this translation helpful? Give feedback.
-
Excerpt:
" Sndio is a small audio and MIDI framework part of the OpenBSD project and ported to FreeBSD, Linux and NetBSD. It provides a lightweight audio & MIDI server and a fully documented user-space API to access either the server or directly the hardware in a uniform way. Sndio is designed to work for desktop applications, but pays special attention to synchronization mechanisms and reliability required by music applications. Reliability through simplicity are part of the project goals. "
API: https://man.openbsd.org/sio_open
Beta Was this translation helpful? Give feedback.
All reactions