2013-03-14 84 views
0

我有一个录音机应用程序(CSHARP),我使用NAudio录制/播放音频。我们需要在现有的wav文件中插入和覆盖音频。 目前,为了插入音频,我使用wav文件的当前位置并进行分割。将新的wav文件合并到原始文件并与文件的其余部分合并。 覆盖时,我将原始音频的当前位置并合并来自该位置的新音频。 这个过程似乎工作正常,但由于某些原因,我认为读取文件和写入文件需要很大的代价。当我们做快速录制时,停止录制,倒带,录制,停止录制等等。对文件的请求被阻塞,并且在某些时候,我得到File IO异常错误,说“该文件正在被另一个进程使用.. “(注意:我们使用的脚踏设备有3个键分配用于录音,播放和倒带。我们遇到的问题是当我们更快地踩踏踏板时)。使用naudio在wav文件中插入wav文件

我真的被困在这一点,因为我无法解决这个问题。我需要一些专家帮助。 有没有办法从文件中的特定位置插入音频而不进行拆分和合并? PLSSSSSSSSS帮助!

回答

0

覆盖WAV文件中的音频并不困难,当我需要这样做时,我使用可以打开现有WAV文件的定制版本WaveFileWriter,并允许您在数据块中重新定位。

另一方面插入总是会有问题,因为您需要在插入点转发后移动所有音频。我试图创建一个单独的“插入”wav文件,然后在整个录制过程完成后,将这些部分拼接成最终的WAV文件。