2013-03-22 64 views
2

我目前正試圖讓我的iOS應用的傳出音頻信號能夠將其發送給Audiobus。我需要傳出的AudioBufferLists能夠路由它們。我正在使用OpenAL進行音頻播放。CoreAudio/OpenAL:如何獲取傳出音頻信號

最好的情況是,我甚至可以修改傳出信號以對其施加影響。

+0

我發現這個問題也看如何得到一個OpenAL應用程序輸出到Audiobus的信息。希望有人幫助 – johnbakers 2013-03-22 20:31:53

+0

感覺真的很好,也有人嘗試這樣做,無法在文檔中找到答案。我也在Audiobus論壇發佈了這個問題,但到目前爲止沒有回答:http://heroes.audiob.us/discussion/100/openal-send-to-audiobus#Item_1 編輯:我實際上使用的是CocosDenshion,它是一個OpenAL包裝 - 如果有幫助的話。 – Max 2013-03-22 22:53:16

回答

0

目前似乎沒有公共API來訪問iOS應用程序中的OpenAL輸出。

如果您需要輸出,您將需要使用另一個音頻API來播放聲音,例如帶有未壓縮原始PCM音頻的音頻隊列或RemoteIO音頻單元,以便能夠獲取音頻輸出緩衝區。

+0

在Audiobus論壇上,有人向我建議:http://stackoverflow.com/questions/10756972/sound-capture-with-openal-on-ios - 我沒有時間去測試它。 – Max 2013-03-25 01:22:13

+0

ObjectAL具有錄製功能,但它表示「iOS不支持」。這是由於OpenAL還是隻是沒有實現? https://github.com/kstenerud/ObjectAL-for-iPhone/blob/master/ObjectAL/ObjectAL/OpenAL/ALCaptureDevice.m – Max 2013-03-25 03:12:07

0

而不是使用OpenAL的,你可以與3D調音臺音頻使用CoreAudio的單位(kAudioUnitSubType_AU3DMixerEmbedded)。然後你可以控制你輸出的位置。顯然,這樣做會犧牲一些可移植性(Mac OS X可以使用,但不適用於Windows,Linux或Android)。