2009-08-25 88 views
3

是否可以將兩個wav文件組合成一個,就好像它們已經同時播放一樣?我需要以編程方式進行此操作。iPhone - 將兩個wav/caf文件合併爲一個

我到目前爲止發現的唯一方法是同時播放和使用AVAudioRecorder錄製輸出。但是如果用戶使用耳機,這將不起作用。

有人可以請我指出正確的方向。

謝謝。

回答

0

可能有更好的方法,但是如果兩個wav具有相同的編碼/比特率等,您可以將第二個文件的wav頭文件(根據wav格式規範的前44個字節)和第二個文件wav首先。

+0

但是,不會只是把文件,所以他們一個接一個地玩?我想合併它們,所以播放結果文件就像是在同時播放。 – lostInTransit 2009-08-26 04:50:21

+0

我不確定;根據你的wav文件,這種方法可能會出現一些可檢測的「過渡」。你可能會以某種方式「淡化」它,通過在wav1結尾插入數據並開始使用wav2。但是這當然需要分析文件的編碼/內容。 – ttvd 2009-08-26 05:22:36

2

您需要讀取每個文件的樣本數據,平均每個樣本值,並將結果寫入新文件。您可以使用ExtAudioFile讀取和寫入文件,包括標題和示例數據。

您還需要使用正確的文件長度更新標頭,因爲有些字段的值取決於樣本數據的長度。

相關問題