Display a video from a Blob Javascript

2019-01-16 09:14发布

I would like to display a video from a Javascript Blob/File object in the HTML5 video tag.

This code only works for small videos :

var reader = new FileReader();
reader.onload = function(e) {
    document.getElementById("video").src=reader.result;
 }
reader.readAsDataURL(vid);

I cannot use this for big videos (> 10MB). Is there a solution to display a big video from a blob object in HTML 5?

2条回答
Deceive 欺骗
2楼-- · 2019-01-16 09:49

In some case blobObject.data should be provided in createObjectURL() method. See this simple trick:

function playVideo(videoStream){ // as blob 

 var video = document.querySelector('video');

 var videoUrl=window.URL.createObjectURL(videoStream.data);// blob.data gives actual data

 video.src = videoUrl;
}
查看更多
beautiful°
3楼-- · 2019-01-16 09:56

I've found. It was so simple that I didnt even see it...

function display(vid){

    var video = document.getElementById("video");
    video.src = window.URL.createObjectURL(vid);

}
查看更多
登录 后发表回答