Reputation: 147
I have been looking into different libraries that would allow for me control where sound is played out of. The overall goal of this personal project is to have a program that will tell how many audio outputs a user has, then allows that data to used on a server for things like controlling what speakers are being utilized, how much sound is coming from a certain speaker. I have seen libraries such as OpenAL, clam and Juce.
What is your experience with those libraries or another one that I do not know about?
Upvotes: 0
Views: 66
Reputation: 315
I have been using Juce for years and I can confirm it's fantastic for building cross-platform, audio-centric applications. However, be aware that it's not just an audio library per se, in the sense that it works best if you also build your UI with it.
Which is perfectly fine if you have no investments in an existing code base yet - in that case you will find it to be a great tool for building your UI as well. But if your goal is to have a headless, audio-only library that you can link to an existing application on multiple platforms, you might experience some problems. On Windows you'll probably be able to get it to operate without UI, but I remember having had trouble doing this on Android, where it'll want control over the application startup code and conflicts with other UI frameworks, such as the gaming framework I was trying to use it with.
Upvotes: 1
Reputation: 269
JUCE is at its best. Initially designed for sound engineers. It can enumerate all the audio devices and you can select whichever you want. And its cross platform. Enjoy condign with JUCE.
Upvotes: 1