iOS - 音效、音频、录音
*1、播放
(1)音效播放
《1》功能介绍:播放比较短的音音效,常用于做系统提示音使用到的框架(AudioToolBox)
《2》框架介绍
1、SystemSoundID
2、AudioServicesCreateSystemSoundID
3、AudioServicesPlaySystemSound
4、AudioServicesPlayAlertSound
《3》使用步骤
0、导入系统框架#import
1、声明声音的ID靠声音的ID来区分是哪一个音效
2、创建播放声音的服务-告诉系统有一个可以使用的soundID
(1、声音文件的路径2、声音的ID)
3、播放声音- soundID
(2)音频播放
《1》功能介绍-播放比较长的音乐
《2》框架介绍
(1)AVAudioPlayer
(2)初始化
<1>***必须声明全局变量、属性的音乐播放对象才可以播放
<2>在退出播放页面的时候一定要把播放对象置空,同时把delegate置空
(3)属性
[audioPlayer play];开始
[audioPlayer pause];暂停
[audioPlayer stop];停止
[audioPlayer prepareToPlay];预播放
[audioPlayer playAtTime:5];播放到5秒
initWithContentsOfURL初始化
audioPlayer.numberOfChannels获取当前声道
audioPlayer.duration获得播放音频的时间
audioPlayer.pan = -1.0设置左右声道-1.0左0.0中间1.0右
audioPlayer.volume =1.0设置音量范围:0.0-1.0
设置速率必须设置enableRate为YES才能设置速率
audioPlayer.enableRate =YES;
audioPlayer.rate =0.5速率:0.5一半的速度1.0普通2.0双倍
//获得峰值必须设置meteringEnabled为YES
audioPlayer.meteringEnabled =YES;
[audioPlayer updateMeters]更新峰值
[audioPlayer peakPowerForChannel:2]获得当前峰值
[audioPlayer averagePowerForChannel:2]获得平均峰值
//设置播放次数设置负数是无线循环0是一次1是两次...
audioPlayer.numberOfLoops =0;
audioPlayer.delegate =self;代理
- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer
*)player successfully:(BOOL)flag播放完成
- (void)audioPlayerDecodeErrorDidOccur:(AVAudioPlayer
*)player error:(NSError *__nullable)error解码失败的时候调用
- (void)audioPlayerBeginInterruption:(AVAudioPlayer
*)player被打扰开始中断的时候调用
- (void)audioPlayerEndInterruption:(AVAudioPlayer
*)player withOptions:(NSUInteger)flags中断结束时候调用78+44vxz
(4)使用步骤
<0>导入#import
<1>资源文件路径
<2>初始化播放器
<3>设置播放
<4>预播放
<5>播放
*2、录音
(1)使用框架
(2)相关类介绍:
《1》
<1>AVNumberOfChannelsKey通道数
<2>AVSampleRateKey采样率44100
<3>AVLinearPCMBitDepthKey比特率16、32
<4>AVEncoderAudioQualityKey质量
<5>AVEncoderBitRateKey比特采样率128000
()prepareToRecord预录音
(3)使用
《1》初始化
《2》开始录音
《3》停止录音