JS --- video 获取视频第一帧

Posted Tong_sunshine

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS --- video 获取视频第一帧相关的知识,希望对你有一定的参考价值。

一般直接设置封面图 后台上传 前端取 用poster

<div class="websocket">
    <!--  poster="http://9haoguoji.oss-cn-beijing.aliyuncs.com/product/1619083692180048808.jpg" 设置 封面图 -->
    <video id="video1" style="background: #ccc"  controls="controls">
        <source src="123.mp4"  type="video/mp4">
    </video>
</div>
<script type="text/javascript">
    getVideoBase64(\'123.mp4\')
    function getVideoBase64(url) {
       /* return new Promise(function(resolve, reject) {*/
            let dataURL = \'\';
            let video = document.createElement("video");
            video.setAttribute(\'crossOrigin\', \'anonymous\'); //处理跨域
            video.setAttribute(\'src\', url);
            video.setAttribute(\'width\', 400);
            video.setAttribute(\'height\', 240);
            video.addEventListener(\'loadeddata\', function() {
                let canvas = document.createElement("canvas"),
                    width = video.width, //canvas的尺寸和图片一样
                    height = video.height;
                canvas.width = width;
                canvas.height = height;
                canvas.getContext("2d").drawImage(video, 0, 0, width, height); //绘制canvas
                dataURL = canvas.toDataURL(\'image/jpeg\'); //转换为base64
                $(\'#video1 source\').attr(\'src\', dataURL)
                //resolve(dataURL);
            });
        /*})*/
    }
</script>

本地可以 线上会有跨域问题 如果用的阿里服务器 后台取消跨域

以上是关于JS --- video 获取视频第一帧的主要内容,如果未能解决你的问题,请参考以下文章

javascript截取video视频第一帧作为封面方案

web获取视频图片第一帧

Android 获取video第一帧

js获取视频截图

关于video标签移动端开发遇到的问题,获取视频第一帧,全屏,自动播放,自适应等问题

如何通过 OpenCV 和 Python 通过索引从视频中获取帧?