我實際上正在製作一個應用程序,該應用程序必須在ipad上播放和錄製互聯網上的音頻流。音頻的流式傳輸完成後,我將不得不很快來到錄製部分,而且我不知道如何繼續。錄製實時流媒體音頻
你能給我一個提示嗎?理念?它必須在同時錄製到AAC或MP3的同時播放。
謝謝。
我實際上正在製作一個應用程序,該應用程序必須在ipad上播放和錄製互聯網上的音頻流。音頻的流式傳輸完成後,我將不得不很快來到錄製部分,而且我不知道如何繼續。錄製實時流媒體音頻
你能給我一個提示嗎?理念?它必須在同時錄製到AAC或MP3的同時播放。
謝謝。
您需要使用較低級別的AudioQueue API,並使用AudioSession API設置音頻會話。
然後,您需要填寫AudioStreamBasicDescription
結構並創建一個新的輸入隊列AudioQueueNewInput()
,幷包含用於處理輸入緩衝區的回調函數。
然後您需要使用AudioQueueAllocateBuffer()
和AudioQueueEnqueueBuffer()
創建3個緩衝區。只有到那時你纔可以打電話給AudioQueueStart()
。您還應該處理音頻會話中斷,並處理停止音頻隊列。
這將得到一個包含未壓縮的16位整數PCM音頻數據的緩衝區流。您仍然需要壓縮數據,這是另一個涉及使用AudioConverter
API的蠕蟲,我沒有在iPhone OS上完成這些工作,所以我不知道在那裏可以工作。
請看這個框架。它提供了記錄數據,同時記錄Streaming Kit
播放MP3通過HTTP
STKAudioPlayer* audioPlayer = [[STKAudioPlayer alloc] init];
[audioPlayer play:@"http://www.abstractpath.com/files/audiosamples/sample.mp3"];
及其數據追加到NSMutabledata通過使用此委託離線播放。其發揮
[audioPlayer appendFrameFilterWithName:@"MyCustomFilter" block:^(UInt32 channelsPerFrame, UInt32 bytesPerFrame, UInt32 frameCount, void* frames)
{
...
}];
這個任何解決方案
攔截PCM數據之前?請找到以下鏈接:http://stackoverflow.com/questions/10931615/how-to-record-livestream-audio-and-save-to-documents-directory-while-playing – 2012-06-07 12:47:14
你可以請你提供我,如果你有任何錄製liveStream音頻的解決方案? – 2012-06-07 12:48:42