打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
IOS音频播放概述

1.IOS系统中的音频播放方式

AVAudioPlayer、AVPlayer、系统声音、音频队列

AVAudioPlayer:使用简单方便,但只能播放本地音频,不支持流媒体播放。

AVPlayer:IOS4.0以后,可以使用AVPlayer播放本地音频和支持流媒体播放,但提供接口较少,处理音频不够灵活。

音频队列主要处理流媒体播放,提供了强大且灵活的API接口(C函数的接口),但处理起来也较为复杂。


首先来说下AVAudioPlayer的使用

使用AVAudioPlayer或AVPlayer需要引用AVFoundation类库

处理音频示例:

  1. /*************AVAudioPlayer******************/  
  2.     
  3. NSBundle *bundle=[NSBundle mainBundle];  
  4.   
  5. //音频文件路径  
  6. NSString *musicurl=[bundle pathForResource:@"第一夫人" ofType:@"mp3"];  
  7.   
  8. //初始化本地的URl  
  9. NSURL *url=[[NSURL alloc] initFileURLWithPath:musicurl];  
  10.   
  11. //声明一个全局的 AVAudioPlayer *player;  
  12.   
  13. player=[[AVAudioPlayer alloc] initWithContentsOfURL:url error:NULL];  
  14.   
  15. //准备播放  
  16. [player prepareToPlay];  
  17.   
  18. /************URL地址播放*******/  
  19.   
  20. /**************AVPlayer**************/  
  21. //    NSString *musicurl=@"http://zhangmenshiting.baidu.com/data2/music/33934538/339262571358352061320.mp3?xcode=ec59d57fb2fe65b2ac5cb01b8744315c";  
  22. //  
  23. //    NSURL *url=[NSURL URLWithString:musicurl];  
  24. //  
  25. //    AVPlayer *aplayer=[[AVPlayer alloc] initWithURL:url];  
  26. //  
  27. //    [aplayer play];  

常用属性:

1.音量

player.volume=0.8;//0.0-1.0之间

2.循环次数

player.numberOfLoops=3;//默认只播放一次

player.duration;//总时长

3.播放位置

palyer.currentTime=15.0;  

4.声道数

NSUInterger channels=player.numberOfChannels;//只读属性


//常用方法

[player play];//播放

[player pause];//暂停

[player stop]//停止

代理方法

AVAudioPlayerDelegate



系统声明的格式caf/wav/aiff格式,且时长小于30s需要导入AudioToolBox类库

  1. /***********播放系统声音(30s)*************************/  
  2. //    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"44th Street Medium" ofType:@"caf"];  
  3. //          
  4. //    NSURL *url=[NSURL fileURLWithPath:filePath];  
  5. //    //    SystemSoundID soundId;  
  6. //    //    unsigned long soundId;  
  7. //      
  8. //    //为url地址注册系统声音  
  9. //    AudioServicesCreateSystemSoundID((CFURLRef)url, &soundId);  
  10. //      
  11. //    NSLog(@"soundId : %lu", soundId);  
  12. //      
  13. //    //播放系统声音  
  14. //    AudioServicesPlaySystemSound(soundId);  
  15. //      
  16. //    //播放震动  
  17. //    AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);  
贴上效果图(Xlib)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
iOS音频播放 (七):播放iPod Library中的歌曲
流媒体开发(一)音频播放
iOS AvPlayer AvAudioPlayer音频的后台播放问题
后台播放音乐
ffmpeg
Unity 实现简单的语音聊天 [iOS版本]
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服