2
我目前使用CocosDenshion的小音效(半秒鐘),現在 我需要播放短的30秒音頻剪輯(MP3),是託管在服務器上,不在應用程序資源包內。我試圖獲得一些代碼來播放它與兩個「要求」:播放遠程MP3文件與緩衝/流塊
- 它播放時,因爲它加載,所以我不會等待整個事情加載只是爲了播放它。
- 它會有某種委託來顯示播放曲目的進度。
我試過使用AVAudioPlayer,但它不適用於我,再加上它沒有「緩衝」數據,它等待加載整個事件(如果它在模擬器上試驗)。我的嘗試是:
- (IBAction)play:(id)sender{
NSString *_mp3file = @"http://www.somesite.com/somefile.mp3";
NSData *_mp3data = [NSData dataWithContentsOfURL:[NSURL URLWithString: _mp3file]];
NSError *error;
AVAudioPlayer *avp = [[AVAudioPlayer alloc] initWithData:_mp3data error:&error];
avp.numberOfLoops = 0;
avp.volume = 1.0f;
avp.delegate = self;
[avp prepareToPlay];
if(avp == nil)
GTMLoggerError(@"%@", error);
else
[avp play];
}
會愛你的幫助的經歷對這個:)
乾杯,
夏嘉曦。
你可以試試[這](http://cocoawithlove.com/2008/09/streaming-and-playing-live-mp3-stream.html) –
看起來不錯, 謝謝 ! :) –