更改 mpd 段的顺序

Change order of mpd segments

有没有办法在创建段和 MPD 后成功更改段的顺序?简单地更改 MPD 中的顺序不起作用,因为视频播放器会出现奇怪的行为。我猜它与段的文件内部有关,例如序列号、演示时间或初始化段,但我似乎无法弄清楚。你如何在播放器中执行命令?

推测您正在使用基于媒体源扩展 (MSE) 的客户端,因为您也在 dash.js 邮件列表中询问过这个问题。

对于 mp4,MSE 默认为 'segments' 模式,这意味着媒体片段中的时间戳用于确定播放顺序,而不是它们的附加顺序 - 这就是为什么只需在manifest 不工作,并且当具有预期播放时间的媒体不可用时可能会导致缓冲问题。

任何播放器都不可能或将实现您正在寻找的行为 - 实现此功能的最简单方法是重新打包每个媒体片段,本质上只是调整 baseMediaDecodeTime 以使其与您尝试的顺序正确实现。