gpt4 book ai didi

HTML5 视频,如何检测视频是否完全缓冲?

转载 作者:可可西里 更新时间:2023-11-01 14:49:42 26 4
gpt4 key购买 nike

我必须在播放之前完全缓冲 html5 视频。

但我找不到通用的解决方案。

  • 我将视频设置为 preload = 'auto';
  • 我创建了一个 setInterval,其中包含一个每隔 200 毫秒查找 video.buffered.end(0) 属性的函数,并将其与视频持续时间进行比较。

在 Chrome 和 Firefox 上,video.buffered.end(0) 会在一段时间后达到视频时长 => OK!在 IE9 上,video.buffered.end(0) 达到视频持续时间的 +/- 85% 并停止播放。但网络显示视频已完全加载。

我尝试使用 video.seekable.end(0) 但它直接设置为视频时长。

那么,如何检测 html5 视频在 IE9(和其他浏览器)中完全缓冲?

谢谢大家!

最佳答案

<!DOCTYPE html>
<html>
<head>
<title>Preload video via AJAX</title>
</head>
<body>
<script>
console.log("Downloading video...hellip;Please wait...")
var xhr = new XMLHttpRequest();
xhr.open('GET', 'BigBuck.m4v', true);
xhr.responseType = 'blob';
xhr.onload = function(e) {
if (this.status == 200) {
console.log("got it");
var myBlob = this.response;
var vid = (window.webkitURL ? webkitURL : URL).createObjectURL(myBlob);
// myBlob is now the blob that the object URL pointed to.
var video = document.getElementById("video");
console.log("Loading video into element");
video.src = vid;
// not needed if autoplay is set for the video element
// video.play()
}
}

xhr.send();
</script>

<video id="video" controls autoplay></video>

</body>
</html>

更多引用在这里Force Chrome to fully buffer mp4 video .

关于HTML5 视频,如何检测视频是否完全缓冲?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22097552/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com