博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS音效
阅读量:6226 次
发布时间:2019-06-21

本文共 1276 字,大约阅读时间需要 4 分钟。

//AudioToolbox.framework是一套基于C语言的框架,使用它来播放音效其本质是将短音频注册到系统声音服务(System Sound Service)//System Sound Service的限制://1.音频播放时间不能超过30s//2.数据必须是PCM或者IMA4格式//3.音频文件必须打包成.caf、.aif、.wav中的一种(注意这是官方文档的说法,实际测试发现一些.mp3也可以播放)

播放音频的方法:

/** *  播放完成回调函数 * *  @param soundID    系统声音ID *  @param clientData 回调时传递的数据 */void soundCompleteCallback(SystemSoundID soundID,void * clientData){    NSLog(@"播放完成...");}/** *  播放音效文件 * *  @param name 音频文件名称 */-(void)playSoundEffect:(NSString *)name{    NSString *audioFile=[[NSBundle mainBundle] pathForResource:name ofType:nil];    NSLog(@"%@",audioFile);    NSURL *fileUrl=[NSURL fileURLWithPath:audioFile];    //1.获得系统声音ID    SystemSoundID soundID=0;    /**     * inFileUrl:音频文件url     * outSystemSoundID:声音id(此函数会将音效文件加入到系统音频服务中并返回一个长整形ID)     */    AudioServicesCreateSystemSoundID((__bridge CFURLRef)(fileUrl), &soundID);    //如果需要在播放完之后执行某些操作,可以调用如下方法注册一个播放完成回调函数    AudioServicesAddSystemSoundCompletion(soundID, NULL, NULL, soundCompleteCallback, NULL);    //2.播放音频    AudioServicesPlaySystemSound(soundID);//播放音效    //    AudioServicesPlayAlertSound(soundID);//播放音效并震动}

 消息声音下载地址:

 Demo下载地址:

 补:播放系统声音:(两句代码)

int systemSoundID = 
1009
//
选择不同的声音范围(1000-2000)
    AudioServicesPlaySystemSound(systemSoundID);

转载于:https://www.cnblogs.com/hxwj/p/4506650.html

你可能感兴趣的文章
小鹏汽车选用芯片Xavier 联手英伟达打造L3级中国式自动驾驶
查看>>
一个看起来呆萌的核物理学霸为何两次收到BlackHat的邀请
查看>>
国际篮联三人篮球亚洲杯连续三年落户长沙
查看>>
长沙开通首条直飞缅甸曼德勒国际航线
查看>>
探访新疆喀什老城:从连片危房到5A景区
查看>>
重庆市交通行政执法总队发布春运“避堵”线路图
查看>>
北京所有社区卫生服务中心今年将全部“先诊疗、后结算”
查看>>
QNAP(威联通)联合创始人郭博达先生一行到访
查看>>
浏览器中唤起native app || 跳转到应用商城下载(一)
查看>>
springboot(十七):使用Spring Boot上传文件
查看>>
Vue中你不知道但却很实用的黑科技
查看>>
阿里云消息中间件(MQ)探秘
查看>>
基础排序算法详解与优化
查看>>
与我一起学正则
查看>>
练就Java24章真经—你所不知道的工厂方法
查看>>
手游中实时音视频的开发经验与实现技巧
查看>>
saiku+kettle整合(十)缓存控制
查看>>
微信支付,支付宝支付,银联支付——三大支付总结
查看>>
Android Sunflower 带您玩转 Jetpack
查看>>
Android 应用兼容性最佳实践 | 中文教学视频
查看>>