2011-06-08 101 views
4

有人可以幫助我使用同時觸發多個AVAudioPlayer的功能嗎?現在,我試圖一共激活12個AVAudioPlayer,如果十二個按鈕被激活,但是會有延遲,聽起來有人正在用鋼琴彈奏他們的手指,而不是一次敲擊所有的琴鍵。使用AVAudioPlayer同時播放多個聲音

我看過音頻隊列服務,無法理解如何實際將其實現到代碼中,但它表示它可以播放同步的聲音。我不確定如何設置所有這些。我正在嘗試重製Tone Grid應用程序。

+0

到目前爲止請顯示您的工作。 – 2011-06-09 00:59:27

+1

你可以建立一個多達12個音軌的AV組合嗎?或者你是否需要它可以在其他人已經在玩之後開始其中的一種聲音? 你有沒有需要停止聲音?你知道玩多久嗎?如果您可以處理遺忘,系統聲音可能適合您。 你是隱式混音,iOS上最合適的混音API是AUMultichannelMixer音頻單元,但你聽起來像是非常綠色,而音頻單元非常硬。 – invalidname 2011-06-15 21:01:59

回答

4

你爲什麼不使用http://www.hollance.com/2011/02/soundbankplayer-using-openal-to-play-musical-instruments-in-your-ios-app/

有你有一個和絃播放器,精美的編碼,並準備搖滾!

我用它在我的第一個應用程序而回:http://itunes.apple.com/gb/app/chordwheel-pro/id406836326?mt=8

+0

雖然這很有趣,但它不是問題的答案,(但問題的含義是模糊的。) – bentford 2011-11-25 21:38:05

+1

我所做的是將問題超越實際問題並解決問題。 – 2011-11-26 22:35:10

0

你在所有12個AVAudioPlayer實例調用方法prepareToPlay。從文檔:「調用此方法,預加載緩衝區並獲取硬件,以最小化延遲。」

查看AVAudioPlayer類的參考。