【发布时间】:2013-10-05 23:20:48
【问题描述】:
我正在尝试为 html5 视频标签实现动态加载。
当用户通过<input type="file"> 元素选择视频文件时,我想将其动态加载到<video> 元素,并将其附加到正文。
以下代码适用于 Chrome,但不适用于 Safari:
function load_video(file) { // this came from <input type="file"> change event
var reader = new FileReader();
reader.onload = function(event) {
var blob = new Blob([event.target.result]);
window.URL = window.URL || window.webkitURL;
var blobURL = window.URL.createObjectURL(blob);
$('body').append('<video controls width="320" src="' + blobURL + '" onloadedmetadata="alert('loaded meta data!')"></video>');
}
}
现在,
如果我将src="' + blobURL + '" 替换为本地文件路径,比如/media/videos/vid1.mp4,视频也会加载到Safari 中,但我需要它从blobURL 加载视频。
有什么建议吗?
非常感谢。
更新:
正如 Rod 所说,不幸的是,这是 Safari 中的一个已知错误(它的媒体后端不支持)。
【问题讨论】:
标签: javascript html5-video blob