1
最近我已經開始iOS應用程序開發工作。這些天我正在研究一個音樂播放器,它必須具有以下功能:如何通過http鏈接以mp3格式在iOS6應用中播放歌曲?
- 從php web服務中歌曲的在線緩衝。 - 播放,暫停,停止,下一首歌曲,上一首歌曲。 - 兩個滑塊,一個用於音量控制,另一個用於顯示歌曲的播放時間。 -shuffle,重複歌曲。
我已經試過這些東西與AVPlayer和AVAudioPlayer,但在AVAudioPlayer是不可能的流從url的數據我認爲,因爲我已經嘗試了很多,然後我通過使用AVplayer這樣做,但它不支持像音量控制選項甚至緩衝也不適合,如果緩衝在某個點停止,則必須再次按播放按鈕。我需要緊急幫助這個音頻播放器任何教程任何例子,我可以很容易理解,因爲我在這個領域是新的。 這裏是
NSURL *url = [[NSURL alloc] initWithString:@"http://www.androidmobiapps.com/extrememusic/app/songs/1.mp3"];
[self setupAVPlayerForURL:url];
我在viewDidLoad中
-(void) setupAVPlayerForURL: (NSURL*) url {
AVAsset *asset = [AVURLAsset URLAssetWithURL:url options:nil];
AVPlayerItem *anItem = [AVPlayerItem playerItemWithAsset:asset];
audioPlayer = [AVPlayer playerWithPlayerItem:anItem];
[audioPlayer addObserver:self forKeyPath:@"status" options:0 context:nil];
調用這首歌的代碼}
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if (object == audioPlayer && [keyPath isEqualToString:@"status"]) {
if (audioPlayer.status == AVPlayerStatusFailed) {
NSLog(@"AVPlayer Failed");
} else if (audioPlayer.status == AVPlayerStatusReadyToPlay) {
NSLog(@"AVPlayer Ready to Play");
} else if (audioPlayer.status == AVPlayerItemStatusUnknown) {
NSLog(@"AVPlayer Unknown");
}
}
}