如何使我的应用程序被视为Windows中的通信程序

Pac*_*ane 18 .net c# windows audio directsound

我正在制作一个使用语音库的程序,当女士说话时,我想让所有其他声音变得柔和或减弱.

我一直在寻找一种手动静音其他应用程序的方法,但我在Windows的通信选项卡(声音选项内)中看到了一个选项,提到该窗口可以为我管理这个.就像在这张图片中:

在此输入图像描述

基本上,我的应用程序被视为通信应用程序(如Skype)需要什么?

M.B*_*ock 5

我相信通信应用正在实现与IAudioVolumeDuckNotification界面相关的东西.C++示例还提供了引用WM_VOLUME_DUCKWM_VOLUME_UNDUCK窗口消息,这些消息可能已足够(但似乎不具备google功能或记录在案).

UPDATE

CodePlex上的.NET Core Audio API项目似乎提供了.NET包装器.

UPDATE

可以在MSDN 示例应用程序中找到示例C++实现IAudioVolumeDuckNotification以及通知ducked状态的DuckingMediaPlayer示例.它确实有效(我试过).PInvoke的几个方法和界面的.NET包装器的组合应该足以让你顺利进行.