自适应流媒体播放器播放列表更新间隔
Adaptive Streaming player playlist update interval
关于自适应流媒体播放器的行为(具体来说,我对 HLS 和 DASH 感兴趣),它应该多久重新加载一次播放列表?这是指定的还是取决于播放器的实现?
重新加载播放列表时,是只对所谓的变体播放列表进行还是每次都重新加载主播放列表?
直播内容和点播内容有什么不同吗?
在 MPEG-DASH 的情况下,MPD 指定了 minimumUpdatePeriod 属性,该属性向客户端发出 MPD 潜在变化之间的最小周期信号。这有助于客户端应用程序确定它应该 update/re-download MPD 的频率。例如,如果 minimumUpdatePeriod 是 10 秒,您可以 update/re-download 每 10 秒 MPD,您应该没问题。
HLS 不包含特定属性(据我所知 -> 草稿更改)但您可以根据片段持续时间更新 M3U8,例如,如果播放列表包含带有 10s 的片段,您应该每 10 秒更新一次(在直播的情况下,每 10 秒就有一个新片段可用)。如果片段持续时间不同,您可以根据您已经下载的片段计算平均值并按该时间间隔更新。
您还可以查看现有的实现,例如 JWPlayer,它们都支持 HLS 和 DASH。如果您想生成 HLS 和 DASH 内容进行测试,您可以使用 ffmpeg&mp4box。
对于 HLS
,请参阅草稿中的 General Client Responsabilities。请注意,这是针对最新版本的,如果您需要旧版本,请查看其他版本。
一些相关摘录:
您只重新加载 LIVE
和 EVENT
而没有 EXT-X-ENDLIST
媒体播放列表 (因此没有主重新加载)
The client MUST periodically reload a Media Playlist file to learn
what media is currently available, unless it contains an EXT-X- PLAYLIST-TYPE tag with a value of VOD, or a value of EVENT and the
EXT-X-ENDLIST tag is also present.
正在重新加载:
When a client loads a Playlist file for the first time or reloads a
Playlist file and finds that it has changed since the last time it
was loaded, the client MUST wait for at least the target duration
before attempting to reload the Playlist file again, measured from
the last time the client began loading the Playlist file.
If the client reloads a Playlist file and finds that it has not
changed then it MUST wait for a period of one-half the target
duration before retrying.
关于自适应流媒体播放器的行为(具体来说,我对 HLS 和 DASH 感兴趣),它应该多久重新加载一次播放列表?这是指定的还是取决于播放器的实现?
重新加载播放列表时,是只对所谓的变体播放列表进行还是每次都重新加载主播放列表?
直播内容和点播内容有什么不同吗?
在 MPEG-DASH 的情况下,MPD 指定了 minimumUpdatePeriod 属性,该属性向客户端发出 MPD 潜在变化之间的最小周期信号。这有助于客户端应用程序确定它应该 update/re-download MPD 的频率。例如,如果 minimumUpdatePeriod 是 10 秒,您可以 update/re-download 每 10 秒 MPD,您应该没问题。
HLS 不包含特定属性(据我所知 -> 草稿更改)但您可以根据片段持续时间更新 M3U8,例如,如果播放列表包含带有 10s 的片段,您应该每 10 秒更新一次(在直播的情况下,每 10 秒就有一个新片段可用)。如果片段持续时间不同,您可以根据您已经下载的片段计算平均值并按该时间间隔更新。
您还可以查看现有的实现,例如 JWPlayer,它们都支持 HLS 和 DASH。如果您想生成 HLS 和 DASH 内容进行测试,您可以使用 ffmpeg&mp4box。
对于 HLS
,请参阅草稿中的 General Client Responsabilities。请注意,这是针对最新版本的,如果您需要旧版本,请查看其他版本。
一些相关摘录:
您只重新加载 LIVE
和 EVENT
而没有 EXT-X-ENDLIST
媒体播放列表 (因此没有主重新加载)
The client MUST periodically reload a Media Playlist file to learn what media is currently available, unless it contains an EXT-X- PLAYLIST-TYPE tag with a value of VOD, or a value of EVENT and the EXT-X-ENDLIST tag is also present.
正在重新加载:
When a client loads a Playlist file for the first time or reloads a Playlist file and finds that it has changed since the last time it was loaded, the client MUST wait for at least the target duration before attempting to reload the Playlist file again, measured from the last time the client began loading the Playlist file.
If the client reloads a Playlist file and finds that it has not changed then it MUST wait for a period of one-half the target duration before retrying.