3

是否可以仅在有人讲话时录制音频?我想听麦克风,只有在“音量”大于某个噪音水平(意味着有人在说话)时才开始录制,我还需要更改录制音频的音高。

我在 C# 中尝试了 MediaCapture 类,但示例中的 StartRecordToStorageFileAsync 在我的场景中不可用。在 Windows Phone 中,我使用 XNA,但在 Windows 8 中找不到类似的 API。

4

1 回答 1

1

在 MSDN 论坛上查看此线程:如何使用 C# 获得分贝?

在 C#、Visual Basic 或 JavaScript 中似乎存在并且可能不会有用于执行此操作的 API,您需要在本机组件中执行此操作。

该线程中提到的文章中的核心音频/WASAPI API 应该具有您需要的内容:Win32 and COM for Metro style apps (multimedia)

我认为本文档描述了从 Kinect 传感器捕获音频的示例,该示例可能具有相关的代码示例,显示您将如何使用 GetBuffer() 调用来获取原始音频样本的缓冲区,您可以处理这些缓冲区以获得所需的信息.

于 2012-04-19T14:54:21.387 回答