我在Windows 7中使用System.Speech.Recognition
让用户通过语音命令控制程序。识别代码集成到程序本身中。现在,识别引擎在程序启动时创建,并在用户更改语音识别语言时重新创建。一切正常。
最近我们遇到了创建识别引擎的问题。如果在程序运行期间系统默认音频输入发生变化,我们无法对其进行响应。具体来说,如果在程序启动时拔掉麦克风,则识别引擎将无法找到输入。我进入了残疾状态。如果稍后插入麦克风,我希望程序注意到这一点并更新引擎。
系统默认音频输入发生变化时是否有暴露事件?
答案 0 :(得分:1)
您需要实现IMMNotificationClient,并调用IMMDeviceEnumerator :: RegisterEndpointNotificationCallback。 NAudio人有一个C#包装器;我会看看它。