[wdmaudiodev] Re: Qusetion about IAudioSessionControl / ISimpleAudioVolume

  • From: "Vincent Burel \(VB-Audio\)" <vincent.burel@xxxxxxxxxxxx>
  • To: <wdmaudiodev@xxxxxxxxxxxxx>, "'Pete Brown \(WDG/PAX\)'" <Pete.Brown@xxxxxxxxxxxxx>
  • Date: Tue, 23 Oct 2018 09:38:16 +0200

Ok, good! We don’t get the right audio session. But it ‘s not a question of 
Active or Inactive state.

As it is explained in the Microsoft doc:

https://docs.microsoft.com/en-us/windows/desktop/api/audiopolicy/nf-audiopolicy-iaudiosessioncontrol-getstate

an active or inactive session remains a valid session

(Windows Media Player has its session inactive if not playing sound).

We have added the session state management in the new VolumeCTL example to show 
you how the session state behaves…

 

The fact is that Windows Media Player is creating 2 sessions, and one is not 
applicable. 

So The question becomes how to make the difference between the right session 
and the wrong session ?

 

In our last source code example, the right session was not taken in account 
because “Multi Process”.

In this case, IAudioSessionControl2::GetProcessId does not return S_OK but 
AUDCLNT_S_NO_SINGLE_PROCESS (0x0889000D)

If we change this in our source code to consider MULTI PROCESS session, and if 
this session comes first in the enumeration, then we get the right session and 
it works.

 

But the problem remains: How to make the difference between the right Windows 
Media Player Audio Session and the wrong one(s) ? 

 

You will find the last EXE (and its ‘C’ source code) in this public ZIP package

https://download.vb-audio.com/Download_CABLE/VolumeControlTest_pack2.zip

 

 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : lundi 22 octobre 2018 19:51
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

The bug is in your app – you have the wrong ISessionControl.

 

The correct session control, which is used by Windows Media Player, the Volume 
Mixer, and the meters.exe sample, looks like this:

 

    Active session #1

        Peak value: 0.543916

        Icon path:

        Display name:

        Grouping parameter: {7d2d7998-1fd9-4277-8037-e64dbb2710b3}

        Process ID: 13372 (multi-process)

        Session identifier: 
{0.0.0.00000000}.{11114d10-a1d2-473d-afae-46295b6f2614}|#%b{512DD86C-6462-4993-964E-ACFA69F9A348}

        Session instance identifier: 
{0.0.0.00000000}.{11114d10-a1d2-473d-afae-46295b6f2614}|#%b{512DD86C-6462-4993-964E-ACFA69F9A348}|1%b#

        System sounds session: no

        HWND: 0x0000000000180882 Windows Media Player

        Master volume: 0.2 (-13.9794 dB FS)

        Not muted

        Channel #1 volume: 1 (0 dB FS)

        Channel #2 volume: 1 (0 dB FS)

 

The session control which is used by your app has a session ID that looks like 
this:

 

{0.0.0.00000000}.{11114d10-a1d2-473d-afae-46295b6f2614}|\Device\HarddiskVolume4\Program
 Files (x86)\Windows Media 
Player\wmplayer.exe%b{00000000-0000-0000-0000-000000000000}|1%b13372

 

Looking at the application code which chooses the ISessionControl in question, 
I suspect this is because you are neglecting to call 
IAudioSessionControl::GetState, and so you are ending up with an inactive 
session.

 

https://docs.microsoft.com/en-us/windows/desktop/api/audiopolicy/nf-audiopolicy-iaudiosessioncontrol-getstate

 

  _____  

From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Matthew van Eerde < 
<mailto:dmarc-noreply@xxxxxxxxxxxxx> dmarc-noreply@xxxxxxxxxxxxx>
Sent: Monday, October 22, 2018 9:56:42 AM
To:  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx; Pete Brown 
(WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Thanks, attempting to reproduce locally.

 

  _____  

From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Vincent Burel (VB-Audio) < 
<mailto:vincent.burel@xxxxxxxxxxxx> vincent.burel@xxxxxxxxxxxx>
Sent: Friday, October 19, 2018 5:47:13 AM
To:  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx; Pete Brown 
(WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Ok, so I’ve built a minimal program to reproduce the problem:

You will find the EXE (and its ‘C’ source code) in this public ZIP package

 
<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdownload.vb-audio.com%2FDownload_CABLE%2FVolumeControlTest_pack1.zip&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647082707&sdata=tLgLutgr9pdHp1B2cyJ8rx2%2FRve4G5B5vNi0dfa7Ey8%3D&reserved=0>
 https://download.vb-audio.com/Download_CABLE/VolumeControlTest_pack1.zip

 

more details, bitmap, link, on this topic:

https://forum.vb-audio.com/viewtopic.php?f=6 ;
<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fforum.vb-audio.com%2Fviewtopic.php%3Ff%3D6%26t%3D615&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647092720&sdata=18iPQYYQ8VCm5VRt0LxuFJ6akBmUU3lC6Oc2w%2Fxc0sY%3D&reserved=0>
 &t=615

 

Regards

Vincent Burel 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : jeudi 18 octobre 2018 21:57
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

The way to find the solution is to understand the problem – that is, to debug.

There are lots of ways to go about this. You could give me a copy of your 
application as it currently exists. You could give me a minimal repro. You 
could take logs of the problem in action and send them to me. You could contact 
me via Skype and we could do a screen-sharing session.

 

  _____  

From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Vincent Burel (VB-Audio) <vincent.burel@xxxxxxxxxxxx>
Sent: Wednesday, October 17, 2018 3:23:32 AM
To: wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Nice “perhaps” but could you point the way to find a solution please.

Since you don’t want to use your own source code to reproduce the problem, 

Would you like I isolate the problem in a minimal program (with source code) ?

 

Regards

Vincent Burel

 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : mercredi 17 octobre 2018 11:47
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

Stop for a minute. Go read this excellent blog post by Raymond Chen.

 

https://blogs.msdn.microsoft.com/oldnewthing/20080723-00/?p=21503/ ;
<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fblogs.msdn.microsoft.com%2Foldnewthing%2F20080723-00%2F%3Fp%3D21503%2F&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647092720&sdata=5bAVRlnfao1kRDgeiP1Svg6mn%2BqtjXENrQtd4gLwk%2B8%3D&reserved=0>
 

 

OK, now let’s try to answer some of your questions.

 

Why is it not invoked

 

There are various possibilities.

 

1.      Perhaps the Windows Media Player callback IS being invoked, but is 
failing to update the slider.
2.      Perhaps the Windows Media Player callback is queued behind the 
VoiceMeeter callback, and the VoiceMeeter callback isn’t completing.
3.      Perhaps something else is going on.

 

what could I do to make it work

 

Depends what the problem is.

 

Using my own event GUID does not change anything

 

I didn’t think it would, which is why I said that passing nullptr or &GUID_NULL 
is fine.

 

From: Vincent Burel (VB-Audio) <mailto:vincent.burel@xxxxxxxxxxxx
Sent: Wednesday, October 17, 2018 2:35 AM
To: wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX) 
<mailto:Pete.Brown@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

Yes, of course ! but the question is there: Why it is not invoked on my call to 
SetMasterVolume ?

And what could I do to make it work? 

 

REM: using my own Event GUID does not change anything. 

 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : mercredi 17 octobre 2018 11:17
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

Because the problem you describe seems to indicate that Windows Media Player’s 
OnSimpleVolumeChanged callback isn’t being invoked.

 



From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Vincent Burel (VB-Audio) <vincent.burel@xxxxxxxxxxxx>
Sent: Wednesday, October 17, 2018 2:12:51 AM
To: wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

So, why talking about OnSimpleVolumeChanged callback ?

I do nothing here, just storing values.

 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : mercredi 17 octobre 2018 11:03
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

Yes, that is what I understood from your original email.

 



From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Vincent Burel (VB-Audio) <vincent.burel@xxxxxxxxxxxx>
Sent: Wednesday, October 17, 2018 1:57:33 AM
To: wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Ok, I will try that, but the problem is not in this way:

It is: when I call SetMasterVolume, Windows Media Player does not get it (on 
the graphic side and on audio side = no effect at all – the Windows Volume 
Mixer is getting it and move his slider, but not Windows Media Player).

 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : mercredi 17 octobre 2018 10:39
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

Passing nullptr or &GUID_NULL is fine.

 

The reason the API allows passing an event context is because in some use cases 
it is important for a callback to be able to recognize changes that were 
initiated from the same app.

 

In such a case, you would define a GUID of your own, say, 
GUID_VOICEMEETER_VOLUME_UI. Whenever you called 
IAudioSessionControl::SetMasterVolume, you would pass 
&GUID_VOICEMEETER_VOLUME_UI.

 

Then in your IAudioSessionEvents::OnSimpleVolumeChanged callback, you would be 
able to do:

if (*EventContext == GUID_VOICEMEETER_VOLUME_UI) {

           // this is a change that I initiated coming back to me

} else {

           // this change came from somewhere else

}

 



From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Vincent Burel (VB-Audio) <vincent.burel@xxxxxxxxxxxx>
Sent: Wednesday, October 17, 2018 1:27:28 AM
To: wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Hey Matthew, thanks to finally make a developer response ! 

 

Yes, I could make a small minimal program to isolate the problem and give you 
the source code, but you normally should be able to reproduce it with yours… 

 

Anyway you made a remark that sounds interesting to me: the Event Context GUID 
passed in SetMasterVolume() is NULL or null_guid (tried both).

Do you mean we need to use a specific Event Context GUID for the Windows Media 
Player ? if yes which one, how are we expected to get it ? is there other 
application needing a specific Event Context GUID ? we got the problem only 
with Windows Media Player.

 

Regards

Vincent Burel

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : mercredi 17 octobre 2018 10:03
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

I know ISimpleAudioVolume::SetMasterVolume works (at least some of the time) – 
which was your second question – because the Volume Mixer and Windows Media 
Player use it, and as you demonstrated in your original email, the Volume Mixer 
and Windows Media Player work (at least some of the time.)

 

It doesn’t work from your app, which tells me your app is doing something 
different. Either the bug is in your app, or the bug is in Windows, but only 
happens when the API is being used the way your app uses it.

 

I am interested in chasing down the possibility that the bug is in Windows, 
which is why I asked for logs. I don’t know why you’re unwilling to provide 
them, it should be easy to do so. I often (but not always) get logs from other 
people, and often (but not always) the logs are helpful in finding problems.

 

If you can share the source code for your app, or a pull request for the 
minimum change to the sample that repros the problem, that might also help me 
find where the bug is (whether it’s in the app or Windows.)

 

Anyway, let’s pretend logging didn’t exist, and GitHub didn’t exist. What 
arguments are you passing to ISimpleAudioVolumeLevel::SetMasterVolume, 
especially for the EventContext GUID? Have you registered for 
IAudioSessionEvents::RegisterAudioSessionNotification callbacks? Are you doing 
anything at all exciting in the callback, e.g. waiting on a lock?

 



From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Vincent Burel (VB-Audio) <vincent.burel@xxxxxxxxxxxx>
Sent: Tuesday, October 16, 2018 11:01:29 PM
To: wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

How do you know if it works if you did not use your source code to make the 
test ? 

 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : mardi 16 octobre 2018 20:51
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

No, I didn’t modify my sample.

 



From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Vincent Burel (VB-Audio) < 
<mailto:vincent.burel@xxxxxxxxxxxx> vincent.burel@xxxxxxxxxxxx>
Sent: Tuesday, October 16, 2018 11:44:24 AM
To:  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx; Pete Brown 
(WDG/PAX)
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

So, I guess you used your code sample to get the WniMediaPlayer 
IAudioSessionControl and change the master volume with 
ISimpleAudioVolume->SetMasterVolume ?

And for you it works !? Please confirm ?

 

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Matthew van Eerde (Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : mardi 16 octobre 2018 15:58
À : wdmaudiodev@xxxxxxxxxxxxx; Pete Brown (WDG/PAX)
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

I mean… the answer to your question as stated is that 
ISimpleAudioVolume::SetMasterVolume DOES work with Windows Media Player… as you 
point out in your question.

 



From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Vincent Burel (VB-Audio) < 
<mailto:vincent.burel@xxxxxxxxxxxx> vincent.burel@xxxxxxxxxxxx>
Sent: Tuesday, October 16, 2018 12:22:48 AM
To: Pete Brown (WDG/PAX);  <mailto:wdmaudiodev@xxxxxxxxxxxxx
wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Yes Pete, Matthew is the audio developer! This is what I thought !

He even made some sample code on his https://github.com/mvaneerde/blog ;
<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmvaneerde%2Fblog&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647102724&sdata=Didk4zTYUciAxkxNrIXDiifnhVWJcFjWLaUDcQyx9Jg%3D&reserved=0>
 

to show how to use  IAudioSessionControl / ISimpleAudioVolume and so on…

That’s why I‘ve originally put my question to him directly,

 

I remind that my question is simply 

“why ISimpleAudioVolume->SetMasterVolume does not work with Windows Media 
Player  ?”

Which is can be reproducible under WIN7 as well … meaning no-one got the 
problem in the last 10 years at Microsoft ? 

 

At the end, I did not get a reply from a developer … so … it’s like having no 
developer finally…  

 

BTW, Pete, since you are there, could you tell me if you know someone at 
Microsoft who tested the HLK process on SYSVAD example in the last 6 months ? 

 

Regards

Vincent Burel

 

 

De : Pete Brown (WDG/PAX) [mailto:Pete.Brown@xxxxxxxxxxxxx] ;
Envoyé : mardi 16 octobre 2018 08:46
À : Vincent Burel (VB-Audio); wdmaudiodev@xxxxxxxxxxxxx
Objet : Re: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

Hi Vincent.

 

Matthew is one of the audio developers. 😊

 

If you noticed what I suggested earlier, it was that you log in the feedback 
hub so it collects the info that the developers need, and also gets put into 
Visual Studio. Then you post a link to the feedback item here. You can get the 
link by clicking the share button at the top right in the Feedback Hub.

 

Then you have:

*       The correct information

*       The right entry point into the workstream

*       The developer's attention 😊

 

This is what teams often ask us to do even with internally reported bugs that 
for other teams.

 

Pete

 

Pete Brown – Microsoft Windows / PAX

 
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftwitter.com%2Fpete_brown&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647112737&sdata=xisCXQEkMkTpwDuGYukxvSByj384hx1OkjJqsFDrUOA%3D&reserved=0>
 @pete_brown |  
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fsoundcloud.com%2FPsychlist1972&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647122741&sdata=HtLgl0sTNpa72f2kreN4w9%2FUaaoaG8%2FYaHFGdvQ%2BDY0%3D&reserved=0>
 SoundCloud |  
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fyoutube.com%2FPsychlist1972&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647122741&sdata=B21pPfUdheW0KwQ5bCl17NYd4TH7XrzudIFcQrZsgUU%3D&reserved=0>
 YouTube |  
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.flickr.com%2Fphotos%2Fpsychlist1972%2Fsets%2F&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647132749&sdata=MQi%2FHc1drzZiGzPB%2B971pmSsoMR4BCH5%2F01ZGRe7%2F2U%3D&reserved=0>
 Flickr 



From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Vincent Burel (VB-Audio) < 
<mailto:vincent.burel@xxxxxxxxxxxx> vincent.burel@xxxxxxxxxxxx>
Sent: Tuesday, October 16, 2018 2:05 AM
To:  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Hey Pete ! 

how goes the audio revolution at Microsoft ? 

They plan to hire an audio developer one day ? 

That could be the revolution ! J

 

Well, you are confirming that there is no developer channel anymore.

Feedback hub is for users, then I will send to you my users.

 

Regards

Vincent Burel

 

De : wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] ;
De la part de Pete Brown (Redacted sender "Pete.Brown" for DMARC)
Envoyé : lundi 15 octobre 2018 21:04
À : wdmaudiodev@xxxxxxxxxxxxx
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

I know it can sound like it's a do-nothing request, but I know from my own 
interactions with different teams internally, that a feedback hub entry, with 
captured logs and detail, is often the best way to get the bug into the system. 
Usually I'll follow up with a link to the item.

 

Pete

 

Pete Brown – Microsoft Windows / PAX

 
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftwitter.com%2Fpete_brown&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647142757&sdata=kexQhXbPh3yY0j1PX6%2BeUtPl%2FH%2F%2FcLYphvGQP1TVLOs%3D&reserved=0>
 @pete_brown |  
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fsoundcloud.com%2FPsychlist1972&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647142757&sdata=7Yj5jWLFvDTJa5Jy0YYuI8cgV%2FzrhwZvvXQ03qVjjDM%3D&reserved=0>
 SoundCloud |  
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fyoutube.com%2FPsychlist1972&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647152766&sdata=faUXjeKWogIGLWcw7HTEdc56vnM4vLfF0KcY9Kvolt0%3D&reserved=0>
 YouTube |  
<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.flickr.com%2Fphotos%2Fpsychlist1972%2Fsets%2F&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647162770&sdata=15NsTmWO9biySLLOJ6e60RBuxoRtqiluHlcVUOR%2BI%2Bc%3D&reserved=0>
 Flickr 



From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Vincent Burel (VB-Audio) < 
<mailto:vincent.burel@xxxxxxxxxxxx> vincent.burel@xxxxxxxxxxxx>
Sent: Monday, October 15, 2018 2:51 PM
To:  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume 

 

Bingo! « Feedback Hub » again ! 

 

 

De :  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx [ <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] De la part de Matthew van Eerde ;
(Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : lundi 15 octobre 2018 20:13
À :  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Objet : [wdmaudiodev] Re: Qusetion about IAudioSessionControl / 
ISimpleAudioVolume

 

Sounds like a bug. Please file it in Feedback Hub. Include logs of the problem 
in action.

 



From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Vincent Burel (VB-Audio) < 
<mailto:vincent.burel@xxxxxxxxxxxx> vincent.burel@xxxxxxxxxxxx>
Sent: Monday, October 15, 2018 9:37:07 AM
To:  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Qusetion about IAudioSessionControl / ISimpleAudioVolume 

 

No luck so…

 

Just tried to post it on the social forum you pointed , and it says :

·         Body text cannot contain images or links until we are able to verify 
your account.

 

Just paid 1000$ this week to renew my Visual Studio subscription, and what ? 
they cannot verify my account !? :-) but they can take money!

 

Here it is my question: 

TITLE: IAudioSessionControl / ISimpleAudioVolume->SetMasterVolume does not work 
with Windows Media Player

 

QUESTION: In our new Voicemeeter Virtual Audio Mixer Application, we use 
IAudioSessionManager2 to enumerate audio sessions on our Virtual Audio Input 
and we use ISimpleAudioVolume->SetMasterVolume to change the volume of a given 
application... It works with all applications except with Windows Media Player 
(WIN7 or WIN10).

When changing the volume on Windows Media Player, it changes on Windows Volume 
Mixer and Voicemeeter.

When changing the volume on Windows Mixer , it changes the volume on Windows 
Media Player and Voicemeeter.

When changing the volume on Voicemeeter, it changes the volume on Windows 
Mixer, but not on Windows Media Player.

Why?

 

SessionControlISimpleAudioVolume.jpg

 

 

 

De :  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx [ <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] De la part de Matthew van Eerde ;
(Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : lundi 15 octobre 2018 17:27
À :  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Objet : [wdmaudiodev] Re: virtual audio driver removed via devcon, but it's 
only hidden

 

*       The feedback hub is useless if there is no-one to read it and check the 
problem and correct it

 

Sure. Luckily, there *are* people to read it and check the problem and correct 
it.

 

You can post questions about Windows audio APIs to the Windows Desktop 
Pro-Audio Application Development forum

https://social.msdn.microsoft.com/Forums/en-US/home?forum=windowspro-audiodevelopment
 
<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsocial.msdn.microsoft.com%2FForums%2Fen-US%2Fhome%3Fforum%3Dwindowspro-audiodevelopment%26filter%3Dalltypes%26sort%3Dlastpostdesc&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7C32e8fc72cfca46f2c1a208d6383f73d4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636758242647162770&sdata=ozqEwXyV4K2MU1CVWKpDO789bbt%2FslFAw4h6haH3uUs%3D&reserved=0>
 &filter=alltypes&sort=lastpostdesc

 

From: Vincent Burel (VB-Audio) <mailto:vincent.burel@xxxxxxxxxxxx
Sent: Monday, October 15, 2018 12:13 AM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: virtual audio driver removed via devcon, but it's 
only hidden

 

Well, we are talking about bugs that are present since years,

And some are there since WIN7 (I even talked about WASAPI bugs on this list 
that are present since VISTA)

So no, you cannot say that your company cares about Audio. 

 

I thank you for your personal effort, but as I already suggested, the feedback 
hub is useless if there is no-one to read it and check the problem and correct 
it. 

It’s like the story about HLK certification, it’s just showing the 
way…Microsoft build an audio driver official example, Microsoft build a 
certification process, mandatory to sign this driver, and no-one at Microsoft 
is checking that SYSVAD is passing the HLK tests !?! Madness ? 

 

Anyway I’ve played recently with IAudioSessionManager2, IAudioSessionControl 
etc… and I have 2 or 3 questions about this (totally bugged btw).

Since I saw you have GitHub for an example of code on these interfaces, let me 
know where do you prefer I put my questions ? 

 

Regards

Vincent Burel

 

 

De :  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx [ <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] De la part de Matthew van Eerde ;
(Redacted sender "Matthew.van.Eerde" for DMARC)
Envoyé : samedi 13 octobre 2018 13:13
À :  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Objet : [wdmaudiodev] Re: virtual audio driver removed via devcon, but it's 
only hidden

 

*       Microsoft does not care about this

 

Yes we do

 

*       Please post a request in Feedback Hub

 

We say this because we want the log files so we can see what happened

 

cid:image002.png@01D4656F.39E80830

From:  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx < <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Vincent Burel (VB-Audio) < 
<mailto:vincent.burel@xxxxxxxxxxxx> vincent.burel@xxxxxxxxxxxx>
Sent: Saturday, October 13, 2018 12:14:52 AM
To:  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: virtual audio driver removed via devcon, but it's 
only hidden 

 

Hello,

 

The problem is there since WIN7 and it seems the reboot is finalizing the 
uninstallation (this is the only way we found to be sure about the audio driver 
de-installation) .

…with WIN10 there is additional problems regarding driver 
installation/de-installation, especially re-installation (used by WIN10 
automatic update).

 

Also devcon.exe seems to be bugged and can install 2 instances of your audio 
driver, the instance will be marked as disabled, but de-installation won’t be 
clear anyway if you don’t de-install manually the disabled occurrence of your 
driver…

 

Microsoft does not care about this and the only reply will get is “please post 
a request in feedback hub”

 

Regards

Vincent Burel

 

De :  <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
wdmaudiodev-bounce@xxxxxxxxxxxxx [ <mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] De la part de Johannes Freyberger
Envoyé : samedi 13 octobre 2018 08:37
À :  <mailto:wdmaudiodev@xxxxxxxxxxxxx> wdmaudiodev@xxxxxxxxxxxxx
Objet : [wdmaudiodev] virtual audio driver removed via devcon, but it's only 
hidden

 

Hi all,

 

when I’m uninstalling my pure virtual audio driver on some W10, 1803 machines 
via devcon remove the driver the driver doesn’t seem to be uninstalled 
completely as it is still visible as hidden device in the device manager even 
after a reboot. But in setupapi.dev.log the corresponding entry says:

 

 [Delete Device - ROOT\MEDIA\0006]

 Section start 2018/10/12 09:52:11.354

      cmd: "C:\Program Files (x86)\MyApplication\devcon.exe" remove *MyDriver

     dvi: Query-and-Remove succeeded

<<<  Section end 2018/10/12 09:52:12.031

<<<  [Exit status: SUCCESS]

 

On some other machines the drivers are completely gone and not in hidden state.

 

Could this “hidden driver” effect be due to user privileges or some Antivir 
software installed on these machines? 

What makes an uninstalled driver go into this hidden state and can this have 
any subsequent negative effects if I’m installing a new version of my driver 
while the old version is still in this hidden state? 

Could this be something which is new since the 1803 update as I don’t think 
I’ve seen this before?

 

Thanks and best regards,

Johannes Freyberger

 

 

 

PNG image

Attachment: WindowsMixerVolumeCtrlTest2.jpg
Description: JPEG image

Other related posts: