我在这里有我的代码形式各种NAudio教程。我做了一个简单的录音机。其中有一个录制按钮,停止录制按钮然后播放按钮。对于第一次录制它完全正常,我甚至可以播放我的音频。但每当我再次开始录制时,它会显示一个错误,其中我的文件名被另一个进程使用。我不知道应该停止什么过程。
这是我的代码
public void recorUser()
{
waveInStream = new WaveIn();
// writer = null;
writer = new WaveFileWriter(@"D:\2.wav", waveInStream.WaveFormat);
waveInStream.DataAvailable += new EventHandler<WaveInEventArgs>(waveInStream_DataAvailable);
waveInStream.StartRecording();
}
void waveInStream_DataAvailable(object sender, WaveInEventArgs e)
{
writer.Write(e.Buffer, 0, e.BytesRecorded);
}
public void stopRecordUser()
{
waveInStream.StopRecording();
waveInStream.Dispose();
waveInStream = null;
writer.Close();
writer = null;
}
public void playRecordedUser()
{
pcm = new WaveChannel32(new WaveFileReader(@"D:\2.wav"));
//.PadWithZeroes = false;
reductionStream = new BlockAlignReductionStream(pcm);
waveOutDevice = new DirectSoundOut();
waveOutDevice.PlaybackStopped += new EventHandler<StoppedEventArgs>(audioOutput_PlaybackStopped);
waveOutDevice.Init(reductionStream);
waveOutDevice.Play();
// pcm.Close();
// waveOutDevice.Dispose();
}
提前感谢你的激光。 :)请帮帮我。
答案 0 :(得分:0)