iOS-----使用AVAudioPlayer播放音乐

本文介绍了AVFoundation框架中的AVAudioPlayer类,该类支持多种音频格式,包括AAC、MP3等,并提供了简单的初始化方法及播放控制方法如play、pause等.此外还介绍了如何通过属性设置播放速率、循环次数等.

使用AVAudioPlayer播放音乐

AVAudioPlayer是一个属于AVFoundation.framework的类.它作用类似于一个功能强大的播放器.AVAudioPlayer支持广泛的音频格式,

主要是以下这些格式.

  1. AAC
  2. AMR(Adaptive Multi-Rate,一种语音格式)
  3. ALAC(Apple Lossless Audio Code)
  4. iLBC(internet Low Bitrate Code,另一种语言格式)
  5. IMA4(IMA/ADPCM)
  6. linearPCM(uncompressed)
  7. μ-law和a-law
  8. MP3(MPEG-Laudio Layer 3)

使用AVAudioPlayer播放音频十分简单,当程序控制AVAudioPlayer对象装载音频完成之后,可以调用AVAudioPlayer的如下方法进行播放控制

-play

开始或恢复播放.调用该方法时,如果该音频还没有准备好,程序会隐式先执行prepareToPlay方法

- playAtTime

(NSTimeInterval)time: 在指定时间点开始或恢复播放

- ause

暂停

- stop

停止

- prepareToPlay

准备开始播放.调用play方法时,如果该银屏还没有准备好,程序会隐式先执行该方法.

AVAudioPlayer装载指定音频文件,AVAudioPlayer提供了如下简单的初始化方法

- initWithContentsOfURL:error: :

从指定URL装载音频文件,并返回新创建的AVAudioPlayer对象.

- initWithData:error: :

装载指定NSData对象所代表的音频数据,并返回新创建的AVAudioPlayer对象

AVAudioPlayer提供了如下属性来访问音频文件的相关信息

playing:

该只读属性返回播放器是否正在播放音频

volume:

该属性用于设置和返回播放器的音量增益.该增益值可以为0.0~1.0.

pan:

该属性用于设置或返回立体声平衡.如果该属性设为-1.0,则完全在左边播放;如果设为0.0,则左右音量相同;如果设为1.0,则完全在右边播放.

rate:

该属性设置或返回播放速率.该属性值支持0.5(半速播放)~2.0(倍速播放)之间的浮点值

enableRate:

该属性设置或返回播放器是否允许改变播放速率.

numberOfLoops:

该属性设置或返回播放器的循环次数.如果将该属性设为负值,那么播放器将会一直播放,直到程序调用stop方法停止播放.

delegate:

该属性用于为AVAudioPlayer设置代理对象.

numberOfChannels:

该只读属性返回音频的声道数目

duration:

该只读属性返回音频的持续时间.

currentTime:

该属性获取音频的播放点.

deviceCurrentTime:

该只读属性返回音频.

url:

该只读属性返回播放器关联的音频URL.

data:

该只读属性返回播放器关联的音频数据.

转载于:https://www.cnblogs.com/congli0220/p/4945019.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值