【发布时间】:2009-05-23 21:26:56
【问题描述】:
谁能给我一些信息/背景信息,告诉我如何编写一个“监听”计算机声卡或特定其他程序发出的声音的应用程序。
例如,如果我启动了一个长期运行的第 3 方应用程序,该应用程序没有任何指示何时完成,除了一声响亮的“DING!”声音。无论如何,我的应用程序是否可以“听”那个“叮!”然后采取一些行动?
我知道在大多数情况下可能有一些方法可以避免使用声音,但我比其他任何事情都更好奇。
【问题讨论】:
谁能给我一些信息/背景信息,告诉我如何编写一个“监听”计算机声卡或特定其他程序发出的声音的应用程序。
例如,如果我启动了一个长期运行的第 3 方应用程序,该应用程序没有任何指示何时完成,除了一声响亮的“DING!”声音。无论如何,我的应用程序是否可以“听”那个“叮!”然后采取一些行动?
我知道在大多数情况下可能有一些方法可以避免使用声音,但我比其他任何事情都更好奇。
【问题讨论】:
完成后其他进程是否退出?您始终可以对其进行处理并将事件处理程序绑定到它的出口
【讨论】:
这点我实在不敢恭维;但我在 CodeProject 上找到了答案:
http://www.codeproject.com/KB/vista/CoreAudio.aspx
确定当前“声级”的响度变得如此简单:
Dim curVol As Integer = CType(SndDevice.AudioMeterInformation.MasterPeakValue * 100, Integer)
因此,只要您尝试检测声音的大幅增加(例如响亮的 DING!);它实际上变得非常容易。
【讨论】: