如何知道videoJS中当前正在播放和缓冲的分片编号?
例如,有6s的片段,而播放器当前正在播放31s,当前片段是id=6,但是如果不知道片段大小是6s,我如何知道它?
此外,当视频正在播放时,其他片段也会被下载。如何知道缓冲区中当前有哪些段?
发布于 2020-01-14 06:13:34
您可以从片段元数据轨道中获取当前片段的URL
let tracks = player.textTracks();
let segmentMetadataTrack;
for (let i = 0; i < tracks.length; i++) {
if (tracks[i].label === 'segment-metadata') {
segmentMetadataTrack = tracks[i];
}
}
if (segmentMetadataTrack) {
segmentMetadataTrack.on('cuechange', function() {
let activeCue = segmentMetadataTrack.activeCues[0];
if (activeCue) {
console.log(activeCue.url);
}
});
}
https://github.com/videojs/http-streaming#segment-metadata
这只适用于使用MSE播放HLS的情况,而不是使用浏览器的本机播放。
https://stackoverflow.com/questions/59716124
复制相似问题