具有视频源的HTML5 Canvas drawImage在Android上不起作用

卡夫

我正在尝试将canvas的drawImage方法与视频源一起使用,但在经过Chrome浏览器测试的Android 4.4.2中无法使用。

这是我的代码:

$(function() {

    var canvas = document.getElementById('canvas');
    var ctx = canvas.getContext('2d');
    var video = document.getElementById('video');

    var videoWidth; 
    var videoHeight;    

    var paused = false;

    canvas.addEventListener('click', function() {   
        if (paused) {
            video.play(); 
        } else {
            video.pause();
        }
        paused = !paused;
    });

    video.addEventListener("loadedmetadata", function() {
        videoWidth = this.videoWidth || this.width;
        videoHeight = this.videoHeight || this.height;
        canvas.width = videoWidth;
        canvas.height = videoHeight;
    }, false);

    video.addEventListener('play', function() {
        var $this = this; // cache
        (function loop() {
            if ( ! $this.paused && ! $this.ended ) {
                drawImage($this);
                requestAnimationFrame(loop);
                // setTimeout(loop, 1000 / 25); // drawing at 25 fps
            }
        })();
    }, 0);

    function drawImage(frame) {
        ctx.drawImage(frame, 0, 0);
        // ctx.clearRect ( 0 , 0 , canvas.width, canvas.height );
    }

});

小提琴: http : //jsfiddle.net/h1hjp0Lp/

有没有办法使其也可以与Android和iOS设备一起使用?

西蒙·萨里斯(Simon Sarris)

该特定文件格式(mp4似乎有问题

替换一个webm文件,它可以正常工作。

不幸的是,但这已经有<video>一段时间了(不管浏览器声称支持什么,实际上都需要webm / ogg而不是mp4)。

(我敢打赌它是一个与反Drm屏幕截图相关的错误?谁知道)

例如使用源http://video.webmfiles.org/big-buck-bunny_trailer.webm,它将起作用:http : //jsfiddle.net/h1hjp0Lp/15/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

canvas toDataUrl()在android设备上不起作用

clearRect()在html5 canvas中不起作用

JavascriptInterface在Android 5上不起作用

HTML5 canvas drawImage()函数

Angular6-canvas.drawImage()不起作用

使用html2canvas将highcharts图表呈现为pdf在IE和Firefox上不起作用

HTML5 Canvas在不同点上缩放不起作用

Canvas.drawTextOnPath(...)在棒棒糖上不起作用

setColorFilter有时在android drawable上不起作用

HTML5视频在Android Chrome上陷入canvas2D问题

html2canvas代码不起作用IE 11

html2canvas在angularjs中不起作用

shadowBlur(html canvas)在js循环中不起作用

html2canvas根本不起作用

HTML5 Canvas drawImage比率错误iOS

HTML5 canvas drawImage:如何应用抗锯齿

HTML5 Canvas 中的 drawImage() 无法按预期工作

HTML5 Canvas是否具有“笔下”方法?

当窗口较大时,HTML5 Canvas Alpha透明度在Firefox的曲线中不起作用

具有128位UUID的startLeScan在本机Android BLE实现上不起作用

为什么在Canvas(JS)中,在drawImage()之后toDataUrl()不起作用?

$(canvas).width() 不起作用

使用 Httpclient 上传大型视频文件在 Xamarin.Android 上不起作用

HTML5视频控件不起作用

反应js html5视频不起作用

HTML 5 Canvas在我的项目中不起作用,但是相同的代码在JSFiddle中起作用吗?

HTML5-Canvas,drawImage()使图像模糊

Joda-Time库在启用Proguard的Android 5上不起作用

对话框FLAG_DIM_BEHIND在Android 5.x(Lollipop)上不起作用