I thought I understood the differences in the mixer API and IAudioEndpointVolume(Callback), but apparently I'm missing something. Yet, the app's volume slider is changing in the Volume Mixer dialog as I slide the Device volume slider. If I query my application's volume level, it remains unchanged. I get the MM_MIXM_CONTROL_CHANGE message, and the value returned by mixerGetControlDetail has the updated level.īut, if I change the Device level, I get no such notification.
I can goto the Windows Volume Mixer panel and make changes to my app's volume slider. This event triggers me to refresh my volume level with a call to mixerGetControlDetail. The problem is that the volume of different sources of sound, for example YouTube, gets reduced if I turn another differenc source of sound, for example League of Legends. The mixerOpen call is made with CALLBACK_WINDOW, and I have a window setup to capture control messages, including MM_MIXM_CONTROL_CHANGE. Greetings, I am writting here because I have literally turned the whole Google around looking for a solution.
Since Win Vista introduced the ability to control volume of each application individually via the mixer API, I chose that.