【发布时间】:2019-08-13 11:34:14
【问题描述】:
我正在尝试同时在两个不同的设备上录制音频,文件的输出应保存在波形文件中
我尝试使用 NAudio 解决问题,如下所示,但仍然没有得到它
WaveInEvent waveSource1 = new WaveInEvent();
waveSource1.DeviceNumber = DeviceID1;
waveSource1.WaveFormat = new WaveFormat(44100, 2);
waveSource1.DataAvailable += new EventHandler<WaveInEventArgs>(waveSource_DataAvailable);
string tempFile1 = (@"C:\Users\Nirmalkumar\Desktop\speech1.wav");
waveFile1 = new WaveFileWriter(tempFile1, waveSource1.WaveFormat);
waveSource.StartRecording();
waveSource1.StartRecording();
Console.Beep();
int milliseconds = 5000;
Thread.Sleep(milliseconds);
waveSource.StopRecording();
waveSource1.StopRecording();
这是第一个波源
WaveInEvent waveSource = new WaveInEvent();
waveSource.DeviceNumber = DeviceID;
waveSource.WaveFormat = new WaveFormat(44100, 16, 2);
waveSource.DataAvailable += new EventHandler<WaveInEventArgs>(waveSource_DataAvailable);
string tempFile = (@"C:\Users\Nirmalkumar\Desktop\speech.wav");
waveFile = new WaveFileWriter(tempFile, waveSource.WaveFormat);
static void waveSource_DataAvailable(object sender, WaveInEventArgs e)
{
waveFile.Write(e.Buffer, 0, e.BytesRecorded);
}
【问题讨论】:
-
你能告诉我们你到目前为止所做的尝试吗?
-
添加了代码。
-
这就是全部代码吗?您还没有显示您创建
wavesource的位置。我们只能看到您创建wavesource1的位置。如果您描述您“没有得到”的内容,也会有所帮助。您是否看到错误,或者...? -
是的,在两个文件上接收相同的音频