Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

C API #559

Open
Be-ing opened this issue Mar 18, 2021 · 0 comments
Open

C API #559

Be-ing opened this issue Mar 18, 2021 · 0 comments

Comments

@Be-ing
Copy link
Contributor

Be-ing commented Mar 18, 2021

It would be great to expose a C API for CPAL. The PortAudio C library and RtAudio C++ library exist but they have major limitations. Both of those libraries couple stream creation with usage which precludes a good user experience with JACK and PipeWire routing applications and session managers. CPAL could accomplish that with #557. It would require breaking changes to those old libraries to support that, so it will probably never happen. Also, neither of those libraries support hotplug. CPAL could do so with #373. There is also the cubeb C++ library but that has no ASIO support and the JACK implementation is not suitable for realtime audio. Either hotplug or session manager compatibility alone would be a significant reason for C & C++ applications to choose CPAL over those other libraries.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant