首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#从声卡录制音频

C#从声卡录制音频
EN

Stack Overflow用户
提问于 2013-09-15 20:11:27
回答 1查看 30.3K关注 0票数 22

我想从我的声卡(输出)录制音频。我已经找到了CSCore on codeplex,但我找不到任何示例。谁知道如何使用音频库从我的声卡录制音频,并将录制的数据写入硬盘?或者有人知道关于这个库的一些教程?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-15 20:14:41

看一看CSCore.SoundIn namespaceWasapiLoopbackCapture类能够直接从任何输出设备进行录制。但请记住,WasapiLoopbackCapture仅在Windows Vista之后才可用。

编辑:这段代码应该可以为你工作。

代码语言:javascript
复制
using CSCore;
using CSCore.SoundIn;
using CSCore.Codecs.WAV;

...

using (WasapiCapture capture = new WasapiLoopbackCapture())
{
    //if nessesary, you can choose a device here
    //to do so, simply set the device property of the capture to any MMDevice
    //to choose a device, take a look at the sample here: http://cscore.codeplex.com/

    //initialize the selected device for recording
    capture.Initialize();

    //create a wavewriter to write the data to
    using (WaveWriter w = new WaveWriter("dump.wav", capture.WaveFormat))
    {
        //setup an eventhandler to receive the recorded data
        capture.DataAvailable += (s, e) =>
            {
                //save the recorded audio
                w.Write(e.Data, e.Offset, e.ByteCount);
            };

        //start recording
        capture.Start();

        Console.ReadKey();

        //stop recording
        capture.Stop();
    }
}
票数 41
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18812224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档