音频
iOS里面有四种专门实现播放音频的方式
1, System Sound Services (系统声音服务)
2, OpenAL(跨平台的开源的音频处理接口)
3, Audio Queue Services(播放和录制音频服务)
4, AVAudioPlayer(高级音频播放器)
System Sound Services (系统声音服务)是最底层也是最简单的声音播放服务,通过调用AudioServicesPlaySystemSound这个函数就可以播放一些简单的音频文件
使用场景:适合播放一些很小的提示或者警告音.
局限性:1, 声音长度要小于30秒
2, 格式:IMA4
3, 不能控制播放的进度
4, 调用方法后立即播放声音
5, 没有循环播放和立体声音播放
//系统声音服务
//1, 找到播放资源的路径
NSString *path = [[NSBundle mainBundle]pathForResource:@"蔡琴 - 爱断情伤.wav" ofType:@""];
//2, 系统对于每种音频,都对应的给了一个SystemSoundID, 类似身份证号, 让系统进行识别
SystemSoundID soundID;
//fileURLWithPath: 将本地的资源转化为URL 对象
NSURL *url = [NSURL fileURLWithPath:path];
//这个函数是帮助我们创建一个 soundID, 第一个参数,是资源的本地url, 是OC级别的, OC 跟 C 在变量传值上要借助桥接(bridge)
AudioServicesCreateSystemSoundID((__bridge CFURLRef)url, &soundID);
//播放,(任选其一)
//1, 播放声音和震动
// AudioServicesPlayAlertSoundWithCompletion(soundID, ^{
// NSLog(@"播放完成之后触发");
// });
//2, 只播放声音
AudioServicesPlaySystemSound(soundID);
//3, 只震动
// AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);