【iOS原生代码-音频播放】AVAudioPlayer 本地音频设置姊妹篇:如何将多个音频分别指定设置为左、右声道

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

希望能给大家带来帮助!!!有什么问题需要讨论的可以评论私信欢迎讨论~

相关推荐
VisionX Lab28 分钟前
数据脱敏工具:基于 FFmpeg 的视频批量裁剪
python·ffmpeg·音视频
EasyNTS7 小时前
RTSP播放器EasyPlayer.js播放器分辨率高的视频在设置container的宽高较小时,会出现锯齿状的画面效果
音视频
AirDroid_cn7 小时前
如何控制自己玩手机的时间?两台苹果手机帮助自律
ios·智能手机·ipad·手机使用技巧·苹果手机使用技巧
qq_428639618 小时前
植物明星大乱斗15
c++·算法·游戏
郝晨妤9 小时前
鸿蒙原生应用开发元服务 元服务是什么?和App的关系?(保姆级步骤)
android·ios·华为od·华为·华为云·harmonyos·鸿蒙
vir0210 小时前
好奇怪的游戏(BFS)
数据结构·c++·算法·游戏·深度优先·图论·宽度优先
泠曦れいひ10 小时前
Unity的反射机制及游戏场景
游戏·unity·游戏引擎
tealcwu10 小时前
【Unity踩坑】在Mac上安装Cocoapods失败
unity·ios·游戏引擎
cc_even11 小时前
取沙子游戏
游戏
名字不要太长 像我这样就好12 小时前
【iOS】iOS的轻量级数据库——FMDB
数据库·ios·sqlite·objective-c