2015-10-14 68 views
1

關於自適應流媒體播放器(具體而言,我對HLS和DASH感興趣)的行爲,應該多長時間重新載入播放列表?這是指定還是由玩家執行?Adaptive Streaming播放器播放列表更新間隔

當它重新加載播放列表時,是僅對所謂的變體播放列表完成,還是每次重新加載主設備?

這是不同的生活和點播內容?

回答

4

在MPEG-DASH的情況下,MPD指定minimumUpdatePeriod屬性,它向客戶端報告MPD潛在變化之間的最短時間段。這有助於客戶端應用程序確定它應該更新/重新下載MPD的頻率。如果例如minimumUpdatePeriod爲10秒,則可以每10秒更新/重新下載MPD,並且您應該沒問題。

HLS並未包含特定屬性(據我所知 - >草稿更改),但您可以根據片段持續時間更新M3U8,例如,如果播放列表包含您應該更新的片段每10秒一次(每10秒一個新的分段可用於直播的情況下)。如果分段持續時間不同,您可以根據您已經下載並在該時間段更新的分段計算平均值。

你也可以看看現有的實現,如JWPlayerbitdash,它們都支持HLS和DASH。如果您想生成HLS和DASH內容以進行測試,則可以使用mp4box或服務,例如bitcodin

+0

因此,對於HLS中的實時流,如果我理解正確,則播放列表更新之間的最小間隔將是段持續時間。但是,實際上是這樣做的,在請求新塊之前更新,在現有播放器中進行更新還是在播放列表包含多個段時不需要這麼短的時間? – Silvia

+0

我認爲aergistal引用了草案中的正確部分,它描述了這一點。然而,我在其他球員看到的是,他們只是基於片段持續時間(平均)進行更新,並且如果球員更接近生涯邊緣,則看起來頻率將會增加,例如,一些球員更新M3U8,然後每500ms。我認爲flashhls(https://github.com/mangui/flashls)就是這樣做的。 –

2

對於HLS請參閱草稿中的General Client Responsabilities。請注意,這是最新版本,如果您需要更舊的版本,請檢查其他版本。

一些相關摘錄:

你只有重裝LIVEEVENT沒有EXT-X-ENDLIST媒體播放列表(所以沒有主機重載)

客戶端必須定期重新加載媒體播放列表文件,以瞭解 什麼媒體目前可用,,除非它包含值爲VOD的EXT-X- PLAYLIST-TYPE標籤,或值EVENT並且還存在 EXT-X-ENDLIST標籤。

重裝:

當客戶端加載首次播放列表文件或重新加載 播放列表文件,發現它已經改變,因爲它最後一次 加載,客戶端必須等待至少在目標持續時間 再次嘗試重新加載播放列表文件之前,從上次客戶端開始加載播放列表文件時測量的 。

如果客戶端重新加載播放列表文件,並發現它沒有 改變那麼它必須等待一段一半的目標 時間重試前的。