2010-01-31 148 views
0

我試圖在播放時操縱聲音的速度(和音高)。用iPhone SDK的AudioUnit音頻(varispeed)音頻

所以我玩過iphone的sdk的AudioUnit。下載iPhoneMultichannelMixerTest,並試圖添加一個AUComponent到圖形(在這種情況下formatconverter)。但我得到(很快)以下錯誤時,建設:

#import <AudioToolbox/AudioToolbox.h> 
#import <AudioUnit/AudioUnit.h> 

... 

AUComponentDescription varispeed_desc(kAudioUnitType_FormatConverter, 
kAudioUnitSubType_Varispeed, kAudioUnitManufacturer_Apple); 
^^ 
error: 'kAudioUnitSubType_Varispeed' was not declared in this scope. 

任何想法爲什麼?關於這個主題的文檔根本沒有幫助我(只是當沒有關於背後概念的線索時,api doc不是很有用)。沒有關於如何將這些效果連接在一起並操縱那些屬性的例子......所以也許我完全錯了,無論如何,任何提示都很棒。

thx尋求幫助。

回答

1

kAudioUnitSubType_Varispeed - 僅適用於OS X,不適用於iPhone OS。

只有在iPhone上發現的音高轉換支持與openAL。或者您可以使用third party one。我無法實時實現這一點。

0

如果你想要音高控制,你可以使用Finch sound engine(OpenAL)。演示應用程序中提供了音高控制滑塊。

1

只是對此進行更新。 Varispeed現在可用於iOS。

+0

嗨,你能建議嗎?我如何通過ios sdk實現這個任務? – Hindu