2013-03-14 121 views
0

我有一個錄音機應用程序(CSHARP),我使用NAudio錄製/播放音頻。我們需要在現有的wav文件中插入和覆蓋音頻。 目前,爲了插入音頻,我使用wav文件的當前位置並進行分割。將新的wav文件合併到原始文件並與文件的其餘部分合並。 覆蓋時,我將原始音頻的當前位置併合並來自該位置的新音頻。 這個過程似乎工作正常,但由於某些原因,我認爲讀取文件和寫入文件需要很大的代價。當我們做快速錄製時,停止錄製,倒帶,錄製,停止錄製等等。對文件的請求被阻塞,並且在某些時候,我得到File IO異常錯誤,說「該文件正在被另一個進程使用.. 「(注意:我們使用的腳踏設備有3個鍵分配用於錄音,播放和倒帶。我們遇到的問題是當我們更快地踩踏踏板時)。使用naudio在wav文件中插入wav文件

我真的被困在這一點,因爲我無法解決這個問題。我需要一些專家幫助。 有沒有辦法從文件中的特定位置插入音頻而不進行拆分和合並? PLSSSSSSSSS幫助!

回答

0

覆蓋WAV文件中的音頻並不困難,當我需要這樣做時,我使用可以打開現有WAV文件的定製版本WaveFileWriter,並允許您在數據塊中重新定位。

另一方面插入總是會有問題,因爲您需要在插入點轉發後移動所有音頻。我試圖創建一個單獨的「插入」wav文件,然後在整個錄製過程完成後,將這些部分拼接成最終的WAV文件。