2009-02-21 119 views
4

有人可以幫助我使用iPhone上的AudioQueue服務播放某個頻率(比如440赫茲)嗎?我查看了文檔,但似乎無法弄清楚如何去做。蘋果的示例代碼也沒有太多幫助。在iPhone上播放頻率

謝謝!

回答

4

/Developer/Examples/CoreAudio/SimpleSDK/DefaultOutputUnit有一個如何在給定頻率和採樣率下播放音調的示例。

我基本上覆制了代碼(也使用了一點this blog entry),它在iPhone上基本沒有改變。

0

好吧,這是有點跛腳,但如果沒有人提出真正的答案,你可以預先記錄正弦波並循環它。如果切得好,它應該玩得很好。當然,如果你只有幾種不同的頻率可以播放,這個響應只會起作用。

1

這樣做並不難。看看AudioQueue的例子。如果您查看播放音頻文件的代碼,您只需要這樣做,除非沒有真正閱讀文件。

您只需將採樣率除以頻率,計算正弦波,然後將這些值送入播放回調函數中的音頻序列。