我正在製作一個iPhone錄製應用程序,需要將聲音文件作爲.wav提交給外部服務器。將聲音錄製爲iPhone上的WAV
從SpeakHere例子開始,我能夠錄製聲音文件,但只是作爲
的.caf有誰知道如何將它記錄爲WAV呢?或者如何在iphone上將.caf轉換爲.wav? (轉換必須發生在手機上)
編輯:
我想知道,如果有什麼可以在AudioFileCreateWithURL
我正在製作一個iPhone錄製應用程序,需要將聲音文件作爲.wav提交給外部服務器。將聲音錄製爲iPhone上的WAV
從SpeakHere例子開始,我能夠錄製聲音文件,但只是作爲
的.caf有誰知道如何將它記錄爲WAV呢?或者如何在iphone上將.caf轉換爲.wav? (轉換必須發生在手機上)
編輯:
我想知道,如果有什麼可以在AudioFileCreateWithURL
沒錯,關鍵是kAudioFileWAVEType
AudioFileCreateWithURL (
audioFileURL,
kAudioFileWAVEType,
&audioFormat,
kAudioFileFlags_EraseFile,
&audioFileID
);
改變從CAF到WAVE在SpeakHere例如使錄製爲wav。我也在播放類中編輯相同的東西,並將文件名改爲Recording.wav
使用kAudioFileWAVEType代替kAudioFileCAFType完成看一看libsndfile。這是一個很好用(包括Audacity)C庫,用於處理大量文件格式。它支持讀取和寫入各種CAF和WAV格式。
CAF File structure和WAV format非常相似。如果最壞的情況出現,轉換不應該太難。
這將涉及到採取音頻數據塊,並原樣複製到WAV文件,並使用音頻描述塊中的信息添加一個等效的子文件爲WAV文件。這是相當簡單的字節複製。
但是,要知道(埃裏克指出)有授權的問題,請參見:Can the Libsndfile library be used on the iPhone iOS?
謝謝。我使用WAV格式鏈接來確認錄製工作正常。我有問題發送數據到我的服務器。 – matt 2009-02-23 21:51:19
我投下了這個,因爲libsndfile無法在iPhone上使用:http://stackoverflow.com/questions/4939268/can-the-libsndfile-library-be-used-on-the-iphone-ios – 2011-02-10 14:40:40