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

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


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

时间: 2024-10-10 05:47:21

iOS-----使用AVAudioPlayer播放音乐的相关文章

IOS 后台运行 播放音乐

iOS 4开始引入的multitask,我们可以实现像ipod程序那样在后台播放音频了.如果音频操作是用苹果官方的AVFoundation.framework实现,像用AvAudioPlayer,AvPlayer播放的话,要实现完美的后台音频播放,依据app的功能需要,可能需要实现几个关键的功能. 首先,播放音频之前先要设置AVAudioSession模式,通常只用来播放的App可以设为AVAudioSessionCategoryPlayback即可.模式意义及其他模式请参考文档. 1 //后台

使用AVAudioPlayer播放音乐文件无声音

使用AVAudioPlayer播放本地音乐文件. 1.声明全局AudioPlayer变量: @property(nonatomic,strong)AVAudioPlayer *movePlayer ; 2.初始化变量并播放: NSString *tmp=[[NSBundle mainBundle].resourcePath stringByAppendingPathComponent:@"a.mp3"]; //NSString * tmp = [[NSBundle mainBundle

iOS 实现后台 播放音乐声音 AVAudioPlayer

1.步骤一:在Info.plist中,添加"Required background modes"键,value为:App plays audio 或者: 步骤二: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{    self.window = [[[UIWindow alloc] initWithFrame:[[U

AVAudioPlayer播放音乐文件及读取ipod库中的音乐文件

下面是ipad上的调试效果 下面是代码,代码中都有注释: #import <UIKit/UIKit.h>  #import <AVFoundation/AVFoundation.h>  #import <MediaPlayer/MediaPlayer.h>   @interface RootViewController : UIViewController <AVAudioPlayerDelegate> {     AVAudioPlayer *player

iOS用AVAudioPlayer播放m4a音频

音频文件sound.m4a放到Supporting Files目录 引用头文件 #import <AVFoundation/AVFoundation.h> 定义一个全局的属性: @property (nonatomic, strong) AVAudioPlayer *player; //音频播放器 //初始化音频播放器 NSString *path = [[NSBundle mainBundle] pathForResource:@"sound" ofType:@"

苹果手机端触屏自动播放音乐

//触发音乐播放和暂停,解决ios不能自动播放音乐问题 var once=1; (function(){ $("body").bind('touchstart',function(){ if(once==1){ bmusic(); } }) })() function bmusic(){ if (window.HTMLAudioElement) { try { var oAudio = document.getElementById('myaudio'); var btn = docu

iOS开发拓展篇—音乐的播放

iOS开发拓展篇—音乐的播放 一.简单说明 音乐播放用到一个叫做AVAudioPlayer的类,这个类可以用于播放手机本地的音乐文件. 注意: (1)该类(AVAudioPlayer)只能用于播放本地音频. (2)时间比较短的(称之为音效)使用AudioServicesCreateSystemSoundID来创建,而本地时间较长(称之为音乐)使用AVAudioPlayer类. 二.代码示例 AVAudioPlayer类依赖于AVFoundation框架,因此使用该类必须先导入AVFoundati

iOS AvPlayer AvAudioPlayer音频的后台播放问题

王桂敏 iOS AvPlayer AvAudioPlayer音频的后台播放问题 iOS 4开始引入的multitask,我们可以实现像ipod程序那样在后台播放音频了.如果音频操作是用苹果官方的AVFoundation.framework实现,像用AvAudioPlayer,AvPlayer播放的话,要实现完美的后台音频播放,依据app的功能需要,可能需要实现几个关键的功能. 首先,播放音频之前先要设置AVAudioSession模式,通常只用来播放的App可以设为AVAudioSessionC

IOS后台播放音乐

IOS后台播放音乐 博客分类: IOS http://www.apple.com.cn/developer/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AudioandVideoTechnologies/AudioandVideoTechnologies.html#//apple_ref/doc/uid/TP40007072-CH19-SW32 1.首先在工程中导入播放音乐所使用的框架:AV Fo