AVAudioPlayer 本地音频设置姊妹篇:将多个音频分别指定设置为左、右声道
设备/引擎:Mac(11.6)/Mac Mini
开发工具:Xcode(15.0.1)
开发语言:Objective-c/c++
开发需求:将多个音频分别指定设置为左、右声道
开发中可能会遇到需要将指定音频在指定声道进行播放,这时就需要用到AVAudioPlayer中的pan属性来进行设置
pan 的取值范围是从 -1.0 到 1.0,其中:
• -1.0:声音只从左声道播放。
• 1.0:声音只从右声道播放。
• 0.0:声音均衡地从左右声道播放。
直接上代码
objectivec
NSString* path = [[NSBundle mainBundle] pathForResource:audioName ofType:audioNameType]; //音频路径、类型(mp3/m4a......)字符串
NSURL* urlMusic = [NSURL fileURLWithPath:path]; //获取路径、类型
player[audiosIndex] = [[AVAudioPlayer alloc] initWithContentsOfURL:urlMusic error:nil]; //将获取到的路径、类型给到player
[player[audiosIndex] prepareToPlay];
player[audiosIndex].numberOfLoops = -1; //播放
[player[audiosIndex] setVolume:audioVal];
player[8].pan = -1; //左声道
player[9].pan = 1; //右声道
[player[audiosIndex] play];
如上所示,代码比较简单就不多说啥了......
注:pan 只是调整了左右声道的输出比例。如果要调整音量, 还是得用volume或者像我上面的用setVolume
希望能给大家带来帮助!!!有什么问题需要讨论的可以评论私信欢迎讨论~