UWP MediaCapture初始化失败

我正在开发WPF应用程序,在其中使用Windows.Media.Capture.MediaCapture类记录音频数据。无论是否有参数初始化都可以正常工作

var mediaCapture = new MediaCapture();
await mediaCapture.InitializeAsync();

或者我可以添加要使用的microfone(如果有多个):

var allAudioDevices = await DeviceInformation.FindAllAsync(Deviceclass.AudioCapture);
DeviceInformation microphone = allAudioDevices.FirstOrDefault();

MediaCaptureInitializationSettings mediaInitSettings = new MediaCaptureInitializationSettings {
    AudioDeviceId = microphone.Id,StreamingCaptureMode = StreamingCaptureMode.Audio
};

await _mediaCapture.InitializeAsync(mediaInitSettings);

当我将我的应用程序作为UWP应用程序(带有桌面桥)运行时,就会出现问题。作为UWP应用程序,当其调用InitializeAsync()方法时,它总是会引发异常,并显示以下错误消息(详细:)):Element not found.正确找到了麦克风的DeviceInformation对象,因此在MediaCapture的初始化过程中会发生一些事情。

麦克风功能在桥接项目的清单文件中设置。

我在做什么错?我也愿意使用其他方法来录制声音。

wangyin2003 回答:UWP MediaCapture初始化失败

我发现,如果我在UI线程上运行初始化,则效果很好:

Application.Current.Dispatcher.Invoke(() => {
    await mediaCapture.InitializeAsync();
});
本文链接:https://www.f2er.com/3103705.html

大家都在问