[wdmaudiodev] Re: Mixing applications audio stream in driver

  • From: eno rocky <binoddummy@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Wed, 6 Feb 2019 07:28:54 +0530

Wow Thanks, that was really helpful Mathew.

I was able to do lots of thing with that.
Except RegisterDuckNotification for IAudioSessionManager2  returns OK but
notification never get called.

Thanks,



On Tue, Feb 5, 2019 at 10:30 PM Matthew van Eerde <
dmarc-noreply@xxxxxxxxxxxxx> wrote:

You don’t need to write a driver to control application volume. There’s an
API for that.




https://blogs.msdn.microsoft.com/matthew_van_eerde/2013/09/26/getting-peak-meters-and-volume-settings-for-all-apps-and-audio-devices-on-the-system/



There’s also already UI in Windows that users can use to control
application volume.


------------------------------
*From:* wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx>
on behalf of eno rocky <binoddummy@xxxxxxxxx>
*Sent:* Tuesday, February 5, 2019 6:32:50 AM
*To:* wdmaudiodev@xxxxxxxxxxxxx
*Subject:* [wdmaudiodev] Re: Mixing applications audio stream in driver

Hi,

Thank you for clarification that was clear.

The main purpose of it was to gain control over each application stream
volume.
As I don't think we can override the application volume in driver either.

Thanks,

On Tue, Feb 5, 2019, 3:36 PM Matthew van Eerde <
dmarc-noreply@xxxxxxxxxxxxx wrote:

Since Windows Vista, no.



Windows mixes audio from all the applications together (inside the
“user-mode audio engine”) and hands the result of the mix to the audio
driver, which is expected to hand it directly to the digital-to-analog
converter without further mixing.



(It’s actually a little more complicated than that, but that’s the basic
idea.)



But what are you really trying to do? Suppose I had said “yes”. What is
your scenario? Why do you want to mix inside an audio driver?


------------------------------
*From:* wdmaudiodev-bounce@xxxxxxxxxxxxx <
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of eno rocky <
binoddummy@xxxxxxxxx>
*Sent:* Monday, February 4, 2019 8:47:29 PM
*To:* wdmaudiodev@xxxxxxxxxxxxx
*Subject:* [wdmaudiodev] Re: Mixing applications audio stream in driver

Hi,

When multiple applications sends audio stream, global mixer is mixing
audio.
Is there a way to mix it inside driver. Can driver do that?

Thanks,

On Mon, Feb 4, 2019, 10:31 PM Matthew van Eerde <
dmarc-noreply@xxxxxxxxxxxxx wrote:

Sorry, but I don’t follow what you’re trying to do. Can you elaborate?
Maybe draw some audio flow diagrams?


------------------------------
*From:* wdmaudiodev-bounce@xxxxxxxxxxxxx <
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of eno rocky <
binoddummy@xxxxxxxxx>
*Sent:* Monday, February 4, 2019 4:59:32 AM
*To:* wdmaudiodev@xxxxxxxxxxxxx
*Subject:* [wdmaudiodev] Re: Mixing applications audio stream in driver

Hi,

lets forget about kmixer.sys.
What about KSCATEGORY_MIXER ? Can it be used for getting separate
application stream and later mix on my own?
Or, is there any other way ?

Thanks,



On Mon, Feb 4, 2019 at 5:52 PM Matthew van Eerde <
dmarc-noreply@xxxxxxxxxxxxx> wrote:

Whatever MSDN document you found should be removed; kmixer.sys hasn’t
existed since Windows XP.


------------------------------
*From:* wdmaudiodev-bounce@xxxxxxxxxxxxx <
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of eno rocky <
binoddummy@xxxxxxxxx>
*Sent:* Sunday, February 3, 2019 9:59:33 PM
*To:* wdmaudiodev@xxxxxxxxxxxxx
*Subject:* [wdmaudiodev] Mixing applications audio stream in driver

Hi,

According to msdn document, I found Kmixer.sys does mixing and gave
back mixed data stream through IMiniportWaveRTStream
Is there any way to mix it in driver.
I found KSCATEGORY_MIXER in ks.h, what does it really do? Is it the
one for each application stream mixing?
Also I found term hardware mixing. What mixing it refers to?
I am working on virtual driver.

One more thing can we override the volume control of each application
like master/Endpoint volume in driver?

Thanks,


Other related posts: