确定何时在C#中播放响亮的声音

时间:2010-05-17 12:51:42

标签: c# audio

我想确定另一个程序是否播放超过特定阈值的声音。我不是在寻找检查计算机上的音量设置或类似的东西。我真的只需要看看是否有任何应用程序比我期待的更高。有人知道这是可能的还是怎么做?

3 个答案:

答案 0 :(得分:1)

在codeproject上查看this项目。它是使用托管DirectX的卷仪表,完全用C#编写。

答案 1 :(得分:1)

本地计算机上有许多可能的声音来源,最终这些声音将通过Windows Sound System传送到混音器并通过声卡传出。我知道监视Windows系统上所有声音的唯一方法是使用设备驱动程序开发工具包编写过滤器驱动程序。这将拦截对声音系统的所有请求,遍历正在发送的数据以进行播放,并且当它发现大的差异时可以设置标志/写入日志(其中abs(data [x + 1] - data [x])是一个很大的价值。)

驱动程序开发通常在C中完成。如果你想要走这条路线,网上有很多示例代码。

答案 2 :(得分:0)

This looks like a good place to start your investigation.我认为你不会在.Net中找到你想要的东西。