Hello堆栈溢出用户,
我想在我的IOS应用程序中使用UISlided更改平移位置。
我正在升级整个应用,目前正在使用 AudioStreamer Matt Gallagher
要更改代码中使用的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);
}
我正在用使用AudioUnit的StreamingKit取代AudioStreamer
如果我能得到一些帮助,使用StreamingKit或AudioUnit完成这项工作,我将非常感激。
P.S如果有人需要更多信息,请告诉我。
由于
答案 0 :(得分:3)
使用AudioUnit API,您只需设置音频混音器单元的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");
}
您可能还需要从mixerUnit
内部检索内部STKAudioPlayer
实例变量。您可以尝试[audioPlayer valueForKey:@"_mixerUnit"]
或者在StreamingKit的文件中自己实现一个getter。