2
任何人都可以建議我將通過套接字接收的音頻數據放入音頻隊列中播放。 目前我正在使用GCDAsyncSocket發送和接收數據。我通過音頻錄音機回撥方法通過套接字發送數據。我在GCDAyncSocket didReadData:方法中接收數據,但之後我不知道如何播放它。如何將通過套接字接收的數據放入音頻隊列並播放它
另外我想知道如何同時錄音和播放音頻隊列。
任何幫助真的很感激。
任何人都可以建議我將通過套接字接收的音頻數據放入音頻隊列中播放。 目前我正在使用GCDAsyncSocket發送和接收數據。我通過音頻錄音機回撥方法通過套接字發送數據。我在GCDAyncSocket didReadData:方法中接收數據,但之後我不知道如何播放它。如何將通過套接字接收的數據放入音頻隊列並播放它
另外我想知道如何同時錄音和播放音頻隊列。
任何幫助真的很感激。
您不能將數據直接放入音頻隊列。如果有足夠的數據,你可以做的就是將從網絡接收到的數據放入你自己的緩衝區中,然後將緩衝區中的數據複製到音頻隊列緩衝區回調中。
您可以播放和錄製同時使用標準音頻隊列的API,如果你設置適當的音頻會議,但音頻隊列的等待時間可以比使用RemoteIO音頻單元API,而不是高得多,爲錄製和播放。音頻單元還包括最近版本的iOS中的回聲消除單元,這可能在同時播放和記錄情況下很有用。
你好hotpaw,謝謝你的回答。你認爲我應該使用這種電路緩衝器:http://atastypixel.com/blog/a-simple-fast-circular-buffer-implementation-for-audio-processing/ – prasad 2012-02-27 06:31:30
循環緩衝是一種非常普遍的技術,用於在線程,例如網絡和實時音頻。 – hotpaw2 2012-02-27 16:17:06