首页 > 解决方案 > mediaCapture.InitializeAsync 中的“没有可用的捕获设备”

问题描述

这是代码:

MediaCapture mediaCapture;
mediaCapture = new MediaCapture();
await mediaCapture.InitializeAsync(new MediaCaptureInitializationSettings { MediaCategory = MediaCategory.Speech });

最后一行抛出异常:

“没有可用的捕获设备”

尽管连接了麦克风。麦克风适用于内置的 Windows 10 录音机应用程序,所以我知道它很好。该应用程序有权使用麦克风,并且它在应用程序的设置中处于打开状态。

那么为什么我会收到错误/如何克服它?

标签: c#uwpwindows-store-appswin-universal-app

解决方案


您是否在 中指定Micorphone了功能Package.appxmainfest?如果是这样,它应该可以工作,但会引发另一个异常。

There are no more endpoints available from the endpoint mapper.

因为你需要设置StreamingCaptureMode.

我已经更正了您的代码,请参见下文。

MediaCapture mediaCapture = new MediaCapture();
await mediaCapture.InitializeAsync(new MediaCaptureInitializationSettings 
{
    MediaCategory = MediaCategory.Speech,
    StreamingCaptureMode = StreamingCaptureMode.Audio
});

在此处输入图像描述

有关语音的更多信息,您可以参考此文档


推荐阅读