gpt4 book ai didi

javascript - 在 Chrome Android 中获取 BLOB

转载 作者:行者123 更新时间:2023-11-30 03:32:36 24 4
gpt4 key购买 nike

我正在努力使用 xhr2 和 blob responseType 在 Android 4.2 上的 Chrome 中获取 HTML5 视频。该代码在 Chrome 和 Firefox 桌面以及 Firefox Android 4.2 上完美运行(对于 FF 桌面,我使用 webm 视频而不是 mp4)。

// Taking care of prefix
window.URL = window.URL || window.webkitURL;

// This function download the video
var loadVideo = function() {

var xhr = new XMLHttpRequest();

xhr.addEventListener('load', addVideoFile, false);

xhr.open('GET', "videos/myvideo.mp4" , true);
xhr.responseType = 'blob';

xhr.send();
};

// this function sets the video source
var addVideoFile = function() {
if(4 == this.readyState && 200 == this.status) {

var video = document.getElementById('vid'),
blob = this.response;

video.src = window.URL.createObjectURL(blob);
console.log('video ready');
}
};

loadVideo();

谁能解释一下为什么这不适用于 Android 上的 Chrome?如果插上手机使用远程调试,控制台会显示'video ready',提示视频已下载但无法播放,视频黑屏。

另外,如果我用它来获取图像而不是视频,那么这段代码就可以工作。是否存在我不知道的限制,阻止下载超过特定大小的 Blob? (我的视频是 1.5 MB)。

非常感谢您的帮助!

最佳答案

这肯定是一个错误。如果您得到的东西适用于桌面版 Chrome 但不适用于 Android,那么 99.5% 的情况下这是我们需要解决的问题。

我已经复制了你的问题 http://jsbin.com/uyehun/1我也提交了错误 https://code.google.com/p/chromium/issues/detail?id=253465

关于javascript - 在 Chrome Android 中获取 BLOB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17189570/

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