上传视频生成视频封面图展示

上传视频生成视频封面图展示,第1张

最近在开发过程中,遇到这样的需求:上传视频并在同一页面的多个模拟机型上展示并播放该视频。

这就导致了一个问题,我们这些视频虽然是同一个,但是由于加载视频的请求是在同一时间发出的,所以会导致加载多次视频,加载的数据翻倍。

所以需要思考如何减少视频的加载,保证后续其它的视频都能够走缓存。由于不知道上传的视频加载需要多长事件、所以延迟其它机型的视频加载显然不太现实,所以经过思考,不如换成封面来替代视频,后续点击播放的时候再赋值src。

将video标签放入canvas,然后利用drawImage生成封面图, 这个video标签必须要有首帧数据 。换句话说,页面上的video标签是存在且已经加载出第一帧的页面,我们的封面图其实就是第一帧的视频。

将获取到的视频url贴到一个video标签中,通过video标签的 loadeddata 事件,在加载了第一帧后立刻形成封面图,然后贴到所有video标签的poster属性上。

以ant-design 的upload组件为例,上传视频后能获取到file信息,然后根据URL.createObjectURL方法获取到本地视频播放地址,贴到video中然后利用canvas生成封面,然后贴到所有video标签的poster属性上。

URL.createObjectURL() 获取的url对视频文件的引用会一直存在内存中,只有在页面触发了unload时或者使用URL.revokeObjectURL()释放后才会从内存清除。所以要使用本地视频数据时,在生成封面图后一定要通过URL.revokeObjectURL()释放。

1、系统是随机的。

2、封面和设置的并不一样,那是因为手机的系统是随机的,APP内设置封面不等于实际导出封面,但是可以通过软件来选择固定封面。

3、打开videostar,进入开始创作,选中需要固定封面的视频,点击添加到项目,打开白色框里的加号,在图片库里选择所要固定的封面。

4、VlogStar是一款专业全能的视频编辑工具,集剪辑、特效、后期于一体。简单、易用的剪辑体验,全能滤镜和视频特效,丰富的字体、音乐库和贴纸。

1、首先进入抖音火山,点击右上直播图标。

2、进入直播界面,点击更换封面,如下图所示。

3、页面d出选项,点击拍照或者从手机相册选择。

4、页面下方d出允许提示,点击始终允许,如下图所示。

5、进入手机相册,选择需要设置的封面,如下图所示。

6、选择好照片之后,点击右上的勾。

7、进入修剪照片,调整照片的位置,点击右上的勾即可。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11553247.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存