2011-03-19 165 views

回答

3

如果您使用AVPlayer播放來自URL的歌曲,那麼當您在AVPlayer上調用「播放」時,它會開始加載歌曲,然後在播放完成後播放。如果文件是本地的,我會認爲它是相同的功能。如果它來自iPod,那麼延遲時間應該已經非常小。

你應該嘗試的一件事是調用播放然後暫停,AVPlayer將繼續加載歌曲,所以當你再次調用播放時(假設它不是立即),那麼歌曲應該開始沒有任何問題。從URL播放歌曲時,我可以確認這一點。試試你的方案。

- (void) getPlayerReady { 
    // write some code here to setup the player 

    [player play]; 
    [player pause]; 
} 

- (IBAction) btnPlayTouched:(id)sender { 
    [player play]; 
} 

編輯:我想我也應該提到AVQueuePlayer會爲你做這個。如果您爲AVQueuePlayer播放多首歌曲,則會在第一首歌曲播放時自動預緩衝下一首歌曲。我不知道這是否可以用於你的情況。