【发布时间】:2014-02-24 00:01:57
【问题描述】:
我正在开发一个 WPF 应用程序,需要记录来自我的用户的音频消息。我遵循here 上的代码,它工作正常。现在的问题是,如果它是台式机,我只检查是否有内置麦克风,而不检查是否连接了任何外部麦克风。而且我还想知道用户是否禁用了麦克风。你能告诉我如何检查是否连接了任何外部麦克风。如果用户无法录制音频,我需要显示错误消息。
【问题讨论】:
-
waveInDevices 列表包括所有连接的麦克风。外接麦克风和内置麦克风没有区别。
-
@thefiloe 你是说无法确定是否连接了任何外部麦克风?
-
好吧,您可以尝试使用 MMDevices (Wasapi)。 Wasapi 提供了有关设备的更多详细信息(查看 IMMdevice 的 PropertyStore)。但是如果你真的想使用已经过时的waveIn API,恐怕已经迫不及待地想知道它是否是一个外部设备。
-
这取决于声卡和它的驱动是否支持检测。
标签: c# wpf audio microphone