2010-01-31 151 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