将base64视频绘制到画布?

时间:2017-07-26 11:44:06

标签: javascript canvas html5-canvas base64

如何将base64视频绘制到画布上,



var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");

var video = new Video();
video.onload = function() {
    ctx.drawVideo(video, 0, 0);
	//ctx.fillText("Hello World", 10,50);
};
video.src = "data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21.......
aWxzdAAAACOpdG9vAAAAG2RhdGEAAAABAAAAAExhdmY1My4yNC4y";




我想在base64视频上显示一些文字。

1 个答案:

答案 0 :(得分:0)



$(function() {
  var canvas = document.getElementById('canvas');
  var ctx = canvas.getContext('2d');
  var video = document.createElement("VIDEO");  video.setAttribute("src","http://upload.wikimedia.org/wikipedia/commons/7/79/Big_Buck_Bunny_small.ogv");
  video.play();


  video.addEventListener('play', function() {
    var $this = this; //cache
    (function loop() {
      if (!$this.paused && !$this.ended) {
        ctx.drawImage($this, 0, 0);
        ctx.fillText("Hello World", 10,50);
        setTimeout(loop, 1000 / 30); // drawing at 30fps
      }
    })();
  }, 0);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="theater">
  <canvas id="canvas"></canvas>
</div>
&#13;
&#13;
&#13;

没有Video()类,也没有drawVideo()方法。您只能通过每隔一段时间获取屏幕来使用drawImage(),然后添加您的文本。

相关问题