2012-04-18 39 views
0

我正在閱讀AVPlayer class documentation,我無法找到我的問題的答案。AVPlayer在暫停後繼續從URL緩衝多長時間?

我正在從我的iPhone應用程序上從互聯網上播放流式音頻,我想知道[myAVPlayer pause];調用myAVPlayer將在很長時間後繼續將音頻文件下載到背景上。

如果用戶按下「暫停」按鈕,調用[myAVPlayer pause];然後離開該應用程序,將myAVPlayer不斷下載大量的數據?

當用戶在3G網絡上時,我很擔心這一點。

回答

2

我面臨同樣的問題,並做了一些實驗。我的觀察結果只對視頻有效,但如果它們對音頻有效,則當您按暫停時,AVPlayer將嘗試緩衝大約30秒的內容。如果您有權訪問Web服務器,則可以運行tcpdump/wireshark並查看暫停後多長時間以便服務器繼續發送數據。

+0

太棒了!我將運行Wireshark! – Winston 2012-04-25 16:34:37

0

您可以管理AVPlayer持續緩衝多長時間。 您需要管理avplayer currentItem的preferredForwardBufferDuration。如果你想停止緩衝設定值1,因爲如果你將它設置爲0它會自動

self.avPlayer.currentItem.preferredForwardBufferDuration = 1; 

建立來自蘋果文檔:此屬性定義以秒爲首選前鋒緩衝時間。如果設置爲0,玩家將爲大多數使用情況選擇適當的緩衝級別。將此屬性設置爲較低值會增加播放停頓和重新緩衝的機率,而將其設置爲較高值會增加對系統資源的需求。