Mixer class


#1

Hi,

I’ve search the whole forum and juce code base, but I can’t find a way to control the system audio mixer from Juce. I would like to mute the other application’s audio (or set their gain to 0), and set my own application louder.
I’ve found I can play with the gain in the source, but I couldn’t figure how to control other application’s audio gain.

What I’m trying to achieve is like windows’s mixer when you click on the speaker in the taskbar, or jackmixer in linux.
Also, is there a way to adjust a system-wide balance ?

Also, there is a getCurrentInputLevel(), is it global ? In that case, would it be possible to add a setCurrentOutputLevel() ?


#2

Good luck with that! That’s waaay beyond the scope of the library.

That might possible with Jack, but not with directsound, asio, coreaudio, wasapi, alsa, etc…

The best you could hope for with the other APIs would be, perhaps, control of the master volume, if you have admin permissions. But you shouldn’t mess with the master volume anyway, so I’ve never even considered implementing such a thing…


#3

Ok, no problem then.
The other video software usually deal with master volume in their volume slider (under windows).
I asked to mimic their behaviour, but you’re right, it’s not application’s business to deal with this.