使用Canvas从Video.js捕获帧
Capture Frame from Video.js with Canvas
我正试图通过用画布捕捉当前帧、创建图像、在图像下进行所有播放器更改等来淡出Video.js视频,然后淡出图像。
我似乎无法通过Canvas访问视频,我得到了
Uncaught TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': No function was found that matched the signature provided.
这是代码
var video = document.getElementById('video');
var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
context.drawImage(video, 0, 0, video.width, video.height);
var dataURL = thecanvas.toDataURL();
//create img
var img = document.createElement('img');
img.setAttribute('src', dataURL);
//append img in container div
document.getElementById('body').appendChild(img);
视频是这样创建的:
<video id='video' class='video-js' preload controls>
<source src='http://example.com/video.mp4"' type='video/x-m4v' />
</video>
视频运行良好等
要处理视频,我使用
var player = videojs('video');
player.dispose();
假设这是一个更好的选择器,然而在声明"播放器"后将其放入context.drawImage
也无济于事。
我能够通过使用子数组使其工作。
context.drawImage(video.children_[0], 0, 0, canvas.width, canvas.height);
此外,不要依赖video.width
和video.height
。它们似乎没有更新。请改用video.currentDimension("width")
和video.currentDimension("height")
。
我已经切换到Popcorn并使用Video.js似乎不可能https://github.com/rwaldron/popcorn.capture以获取帧。这是有效的。
相关文章:
- 使用video.js在视频中进行章节导航
- Video.js+移动设备上的谷歌IMA:'点击'导致错误的事件
- Video.js:无法查看全屏视频
- Video.js没有'暂停后无法继续
- 使用video-js构建一个包含字符串的HTML视频
- 我该如何为video.js制作一个插件,在HTML标题中添加和删除三角形
- Javascript/jQuery:当用户Active 值更改时切换 (vjs-fade-out) (video.js)
- video js无法播放flash视频
- Video.js在视频上添加黑色边框
- 在video.js播放器上制作水印,成为播放和停止的监听器
- 如何在一定时间后暂停视频?video.js
- video.js,播放视频,但在IE10上没有声音
- video.js错误的m3u8源:“;找不到兼容的源和播放技术&”;
- 在 http://vjs.zencdn.net/c/video.js?ver=3.5.1 中发现恶意软件update_f
- 从Javascript创建视频时无法应用video-js皮肤
- 设置video.js的用户界面比例
- 在Video.js中,当鼠标悬停在视频上时,哪里可以更改大播放按钮的颜色
- 视频不在Video.js中播放,但可以直接链接
- 使用Canvas从Video.js捕获帧
- Fullpage.js - video &页面大小调整问题