博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS-----使用AVAudioPlayer播放音乐
阅读量:4654 次
发布时间:2019-06-09

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

使用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

你可能感兴趣的文章
Android中处理崩溃异常
查看>>
Day7—socket进阶
查看>>
只读数据文件损坏恢复
查看>>
转过来的,可以看下
查看>>
windows搭建SVN服务MD版
查看>>
Java私塾的一些基础练习题(一)
查看>>
Shell 07 项目案例
查看>>
Dapper基础用法
查看>>
一步步学习SPD2010--第九章节--使用可重用工作流和工作流表单(1)--创建和使用可重用工作流...
查看>>
Eclipse配置默认的编码集为utf-8
查看>>
【精解】EOS标准货币体系与源码实现分析
查看>>
HashMap
查看>>
Android广播机制概述
查看>>
[javascript]9宫格拖拽拼图游戏 puzzle
查看>>
Entity Framework底层操作封装(3)
查看>>
InputStream 转换 InputStreamReader再转换BufferedReader
查看>>
在线程池中的使用spring aop事务增强
查看>>
继续深入了解Cookie 和 Session
查看>>
再看《操作系统》--处理机管理
查看>>
亚马逊的负载均衡(Amazon Load Balancing)
查看>>