iOS 本地音频播放AVAudioPlayer

AVAudioplayer 是AVFoundation.framework 库中定义的一个类。

首先在工程中导入AVFoundation.framework 库。


AVAudioplayer 的使用

一,创建

    // 使用本地URL创建
    AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"发如雪" ofType:@"mp3"]] error:nil];
    
    // 创建NSData创建
    AVAudioPlayer *player2 = [[AVAudioPlayer alloc] initWithData:Data error:nil];

二,设置

    //1、音量
    
    self.player.volume =0.8;//0.0-1.0之间
    
    //2、循环次数
    
    self.player.numberOfLoops =3;//默认只播放一次
    
    //3、播放位置
    
    self.player.currentTime =15.0;//可以指定从任意位置开始播放
    
    //4、声道数
    
    NSUInteger channels = self.player.numberOfChannels;//只读属性
    
    //5、持续时间
    
    NSTimeInterval duration = self.player.duration;//获取持续时间

    //6、仪表计数
    
    self.player.meteringEnabled =YES;//开启仪表计数功能
    [player updateMeters];//更新仪表计数

四,播放音乐

    [self.player prepareToPlay];//分配播放所需的资源,并将其加入内部播放队列
    [player play];//播放
    [player stop];//停止

五,代理方法

AVAudioPlayerDelegate

- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
{
    //播放结束时执行的动作
    [audioButton setTitle:@"Play Audio File" forState:UIControlStateNormal];
}
- (void)audioPlayerDecodeErrorDidOccur:(AVAudioPlayer *)player error:(NSError *)error;
{
    //解码错误执行的动作
}


- (void)audioPlayerBeginInterruption:(AVAudioPlayer *)player;
{
    //处理中断的代码
}


当程序被应用外部打断之后,重新回到应用程序的时候触发。在这里当回到此应用程序的时候,继续播放音乐。

- (void)audioPlayerEndInterruption:(AVAudioPlayer *)player
{
    [audioPlayer play];
}






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值