【发布时间】:2013-07-05 14:00:47
【问题描述】:
我想捕捉麦克风并立即播放。我正在寻找一种解决方案,如何在 Windows 8 下使用 MediaCapture 元素仅从麦克风捕获音频数据,但我只找到了如何捕获网络摄像头。如果有人能在回放之前告诉我如何修改数据,那就太棒了。请我渴望一个答案。答案是 c# 还是 c++ 都没有关系。
【问题讨论】:
标签: c++ windows audio microsoft-metro capture
我想捕捉麦克风并立即播放。我正在寻找一种解决方案,如何在 Windows 8 下使用 MediaCapture 元素仅从麦克风捕获音频数据,但我只找到了如何捕获网络摄像头。如果有人能在回放之前告诉我如何修改数据,那就太棒了。请我渴望一个答案。答案是 c# 还是 c++ 都没有关系。
【问题讨论】:
标签: c++ windows audio microsoft-metro capture
我为一个桌面应用程序编写了这个,但同样的东西几乎可以在任何地方工作。
private void RecordAudio()
{
var capture = new MediaCapture();
var settings = new MediaCaptureInitializationSettings();
settings.StreamingCaptureMode = StreamingCaptureMode.Audio;
capture.InitializeAsync(settings).Completed = (info, status) =>
{
StorageFolder folder = KnownFolders.DocumentsLibrary;
var op = folder.CreateFileAsync("sample.mp3", CreationCollisionOption.ReplaceExisting);
op.Completed = (
i, s) =>
{
var file = i.GetResults();
var profile = MediaEncodingProfile.CreateMp3(AudioEncodingQuality.High);
capture.StartRecordToStorageFileAsync(profile, file);
};
};
}
【讨论】: