播放較大的音頻或者要對音頻有精確的控制的話,通常會選擇使用AVFoundation.framework中的AVAudioPlayer來實現(xiàn)。AVAudioPlayer可以看成一個播放器,它支持多種音頻格式,而且能夠進行進度、音量、播放速度等控制。
AVAudioPlayer的使用比較簡單:
1.初始化AVAudioPlayer對象,此時通常指定本地文件路徑。
2.設(shè)置播放器屬性,例如重復(fù)次數(shù)、音量大小等。
3.調(diào)用play方法播放。
當(dāng)然由于AVAudioPlayer一次只能播放一個音頻文件,所有上一曲、下一曲其實可以通過創(chuàng)建多個播放器對象來完成,播放進度的實現(xiàn)主要依靠一個定時器實時計算當(dāng)前播放時長和音頻總時長的比例。
NSString *urlStr=[[NSBundle mainBundle]pathForResource:@"abc" ofType:@"aac"];
NSURL *url=[NSURL fileURLWithPath:urlStr];
NSError *error=nil;
//初始化播放器,注意這里的Url參數(shù)只能時文件路徑,不支持HTTP Url
_audioPlayer=[[AVAudioPlayer alloc]initWithContentsOfURL:url error:&error];
//設(shè)置播放器屬性
_audioPlayer.numberOfLoops=0;//設(shè)置為0不循環(huán)
//audioPlayer.delegate=self;
[_audioPlayer prepareToPlay];//加載音頻文件到緩存
[_audioPlayer play];
簡單實用就這樣了。