You might not want to build ALSA support
Description:
There is somewhat serious issue with rtaudio
and ALSA
.
Most modern apps that use rtaudio
expect server they are connecting to supports resampling, however, with ALSA, that is not the case. That results with choppy audio if samplerate application is requesting is not the same samplerate soundcard is expecting.
rtaudio
does not provide end users with any way to override default driver used and rtaudio
will default to ALSA if present. (it is just hardcoded in code before other servers, before Pulse (pipewire))
I expect huge majority of users do not expect that behavior and/or will not have a simple solution for that.
I have 2 suggestions, before that is resolved upstream. Either to build it without support for ALSA, or to patch code to change order in which it checks drivers.
I have reported this upstream too, however it does not seem like they got around to checking it out yet:
https://github.com/thestk/rtaudio/issues/434
Example of applications that this behavior breaks:
-
SDRAngel
-
SDR++
-
Probably more?
There is also a discussion about this issue (in Debian-based distros) on SDR++ repo:
https://github.com/AlexandreRouma/SDRPlusPlus/discussions/112
Additional info:
- package version(s): 6.0.1-1 (and any other version)
- link to upstream bug report, if any: https://github.com/thestk/rtaudio/issues/434
Steps to reproduce:
Start any of above applications with either ALSA or pipewire-alsa
and you will hear broken sound.