带有base64的{html5视频源

时间:2018-04-04 01:52:50

标签: base64 html5-video

我正在尝试播放用base64编码的html5视频,但它不起作用。它没有编码工作。有什么问题?

var s = 'http://clips.vorwaerts-gmbh.de/VfE_html5.mp4';
var video = document.createElement('video');
document.body.appendChild(video);
video.src = "data:video/mp4;base64," + btoa(s);//not working
//video.src = s;//works
video.autoplay = true;
video.controls = true;

2 个答案:

答案 0 :(得分:0)

function displayVideo (blob){
  var video = document.getElementById("video");
  video.src = window.URL.createObjectURL(blob);
}

答案 1 :(得分:0)

var s = 'http://clips.vorwaerts-gmbh.de/VfE_html5.mp4';
fetch(s).then((res) => res.blob()).then((blob) => {
  const fileReader = new FileReader()
  fileReader.readAsDataURL(blob)
  fileReader.onload = () => {
    const videoEl = document.createElement('video')
    videoEl.src = fileReader.result
    videoEl.controls = true
    document.body.appendChild(videoEl)
  }
})

您可以这样做,但不建议这样做。您应该使用 objectURL 而不是 dataURL。