
Script House收集的这篇文章主要介绍了它. Script House的编辑认为这非常好. 现在,我将与您分享并提供参考.
事实上,我有一个HTML5页面,该页有允许我播放wmv视频文件的功能.
播放视频时,您需要拍摄快照(是否暂停)并将其保存为JPG或BMP的任何图像格式.
任何帮助将不胜感激.

谢谢.
<!DOCTYPE HTML>
<html>
<head>
<title>HTML5 video</title>
<script type="text/javascript">
function checkPlay() {
var myVideo = document.getElementById("myVid");
var ytStr = '<iframe width="500" height="500" src="C:\XA0002.wmv" frameborder="0" allowfullscreen></iframe>';
try {
var canPlay = document.getElementsByTagName('video')[0].canPlayType("video/wmv");
if ((canPlay == "no") || (canPlay == "")) {
myVideo.innerHTML = ytStr;
}
new MediaElement(v,{ success: function (media) { media.play(); } });
} catch (err) {
myVideo.innerHTML = ytStr;
}
}
</script>
</head>
<body onload="checkPlay()">
<div id="myVid"/>
</body>
</html>
要将视频帧复制到图像文件,请正确加载视频,将图像复制到画布,然后将其导出到文件. 完全有可能,但是在某些地方您可能会遇到麻烦,因此让我们一次走一步.
1)加载视频

要捕获像素,您需要将视频加载到
您还需要加载正确的文件格式. IE9可能播放WMV,但其他浏览器也不大可能. 如果可以,请加载,使用webm,mp4和理想的ogg / theora.
var container = document.getElementById("myVid"),video = document.createElement('video'),canCapture = true;
if (!video.canPlayType('video/wmv')) {
/* If you don't have multiple sources,you can load up a Flash fallback here
(like jPlayer),but you won't be able to capture frames */
canCapture = false;
return;
}
video.src = 'myvideo.wmv';
container.appendChild(video);
video.play(); //or put this in a button click handler if you want your own controls
2)接下来,创建画布和绘图上下文. 您实际上不需要将其附加到DOM,但是需要将其设置为要保存生成的图像的大小. 对于此示例java本地视频播放器,我们假设您有固定的尺寸,但如有必要,可以将其设置为视频尺寸的倍数. 只需确保在视频的“ loadedmetadata”事件中运行,因为视频尺寸将无法立即使用.

var canvas = document.createElement('canvas');
canvas.width = 640;
canvas.height = 480;
var ctx = canvas.getContext('2d');
// if you want to preview the captured image,// attach the canvas to the DOM somewhere you can see it.
3)将图像捕获到画布上并将其保存到文件中. 将此代码放在按钮或计时器内的onclick事件中–但是您要决定何时捕获图像. 使用drawImage方法. ([本文]提供了很好的解释,包括安全问题,视频与图像相同. )
//draw image to canvas. scale to target dimensions
ctx.drawImage(video,canvas.width,canvas.height);
//convert to desired file format
var dataURI = canvas.toDataURL('image/jpeg'); // can also use 'image/png'
4)导出图像文件

jpg文件现在另存为,它是一个长JavaScript字符串,代表完整二进制文件的编码版本. 这取决于您的操作方式. 您可以将其直接放入img元素,只需将其设置为src: myImage.src = dataUri;.
如果要将其保存到文件,则需要将其上传到服务器. 就是这样.
与往常一样,以上所有内容仅限于支持它的浏览器. 如果您坚持使用wmv视频,那么您几乎只能使用Internet Explorer9. 6-8不支持视频标签或画布. 如果您可以添加更多的多视频格式,则可以使用Firefox(3.5)和Chrome.
以上是脚本公司为您收集的所有内容. 我希望本文可以帮助您解决遇到的程序开发问题.
如果您认为Script House网站的内容不错,欢迎向程序员朋友推荐Script House网站.
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/bofangqi/article-220142-1.html
接受中国的崛起