如何在IOSaudio单元框架中设置平移

你好堆栈溢出用户,

我想在我的IOS应用程序中使用UISlided更改平移位置。

我正在升级整个应用程序,目前正在使用Matt Gallagher的 AudioStreamer

在下面的代码中使用AudioStreamer更改平移值。

AudioQueueRef audioQueue; //在AudioStreamer.h文件中定义

- (void)changePan:(float)newPan { OSStatus panErr = AudioQueueSetParameter( audioQueue, kAudioQueueParam_Pan, newPan); NSLog(@" setting pan: %ld", panErr); if( panErr ) NSLog(@"Error setting pan: %ld", panErr); } 

我正在使用AudioUnitreplaceAudioStreamer与StreamingKit

如果我会得到一些帮助,使用StreamingKit或AudioUnit完成这件事,我将不胜感激。

PS让我知道是否有人需要更多的信息。

谢谢

使用AudioUnit API,您可以简单地设置audio混音器单元的kMultiChannelMixerParam_Pan属性来设置立体声声像:

 AudioUnitParameterValue panValue = 0.9; // panned almost dead-right. possible values are between -1 and 1 int result = AudioUnitSetParameter(mixerUnit, kMultiChannelMixerParam_Pan, kAudioUnitScope_Input, 0, panValue, 0); if (result == 0) { NSLog("success"); } 

您可能还需要从STKAudioPlayer检索内部的mixerUnit实例variables。 你可以尝试[audioPlayer valueForKey:@"_mixerUnit"] ,或者在StreamingKit的文件中自己实现一个getter。