我有一个名为video.mp4
的视频,我想把它流到HTML中的一个视频标记中,我尝试了太多其他问题的答案,但没有一个有效。
var URL = this.window.URL || this.window.webkitURL;
var file = new Blob(["./video.mp4"], {"type": "video\/mp4"});
var value = URL.createObjectURL(file);
console.log(value);
video.src = value;
当我尝试上面的代码时,它打印了一个blob,但是当我想播放视频时,它不工作,并在控制台中显示了这个错误:
Uncaught (in promise) DOMException: The element has no supported sources.
发布于 2022-09-25 15:35:40
不能使用new Blob
直接读取文件。您可能需要类似于实例化XMLHttpRequest
这样的东西。还可以查看<video>
元素文档:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video。您需要使用<source>
属性指定type
元素。
发布于 2022-09-25 15:36:10
你可以这样做:
var vid= document.createElement("video");
var vidsrc= document.createElement("source");
vidsrc.setAttribute('src','video.mp4');
vidsrc.setAttribute('type','video/mp4');
vid.appendChild(vidsrc);
document.body.appendChild(vid);
此代码只需使用源元素创建一个新的视频元素,并将其添加到文档正文中。
https://stackoverflow.com/questions/73845722
复制相似问题