【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

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

相关推荐
2501_916008895 小时前
全面介绍Fiddler、Wireshark、HttpWatch、SmartSniff和firebug抓包工具功能与使用
android·ios·小程序·https·uni-app·iphone·webview
Haha_bj9 小时前
Flutter ——flutter_screenutil 屏幕适配
android·ios
Haha_bj9 小时前
Flutter ——device_info_plus详解
android·flutter·ios
Ulyanov9 小时前
Pymunk物理引擎深度解析:从入门到实战的2D物理模拟全攻略
python·游戏开发·pygame·物理引擎·pymunk
zhooyu10 小时前
C++和OpenGL手搓3D游戏编程(20160207进展和效果)
开发语言·c++·游戏·3d·opengl
上海合宙LuatOS12 小时前
LuatOS核心库API——【audio 】
java·网络·单片机·嵌入式硬件·物联网·音视频·硬件工程
Android系统攻城狮13 小时前
Android16进阶之音频播放定位MediaPlayer.seekTo调用流程与实战(二百二十七)
音视频·mediaplayer·android16·音频进阶·音频性能实战
renke336413 小时前
Flutter for OpenHarmony:节奏方块 - 基于时间同步与连击机制的实时音乐游戏系统设计
flutter·游戏
山水域14 小时前
SKAdNetwork 6.0 深度实战:多窗口转化值(Conversion Value)建模与数据分层架构
ios
晚霞的不甘14 小时前
Flutter for OpenHarmony 可视化教学:A* 寻路算法的交互式演示
人工智能·算法·flutter·架构·开源·音视频