博客
关于我
h5 video视频播放的同时加水印,图片加水印同样的原理
阅读量:203 次
发布时间:2019-02-28

本文共 747 字,大约阅读时间需要 2 分钟。

经常能看到播放视频的网站上加水印的效果,记录下成果以备后续看:

效果图如下:

在这里插入图片描述
h5页面视频播放的同时加水印,有以下3种方法可尝试:

  1. 在原视频上添加,由于每次登陆的用户不一样,需要根据用户名动态确定水印的文本值。这并不现实;
  2. 捕捉视频的每一帧,重新画在画布上,并添加水印。效果不太理想。捕捉到的帧失真严重;
  3. 和视频同一个页面,在其上边加类似蒙版,完美解决。

最终用方案3完美解决,源码如下:

风光无限好

方案2也尝试了下: 读取视频帧每一帧添加水印后,然后画在画布上;视频有失真情况,对于19201080的失真很严重,这是原始960540的视频稍有失真,效果如下:

在这里插入图片描述

  

以上的俩种对于非全屏情况下都生效,全屏情况下video级别超高,水印会消失。解决办法:重写controls完美解决

可参考:

  • https://blog.csdn.net/qq_22557797/article/details/72866358?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-1
  • https://www.jianshu.com/p/f71d1284eaf8
你可能感兴趣的文章
Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime(72)
查看>>
Node 裁切图片的方法
查看>>
Node+Express连接mysql实现增删改查
查看>>
node, nvm, npm,pnpm,以前简单的前端环境为什么越来越复杂
查看>>
Node-RED中Button按钮组件和TextInput文字输入组件的使用
查看>>
vue3+Ts 项目打包时报错 ‘reactive‘is declared but its value is never read.及解决方法
查看>>
Node-RED中Switch开关和Dropdown选择组件的使用
查看>>
Node-RED中使用html节点爬取HTML网页资料之爬取Node-RED的最新版本
查看>>
Node-RED中使用JSON数据建立web网站
查看>>
Node-RED中使用json节点解析JSON数据
查看>>
Node-RED中使用node-random节点来实现随机数在折线图中显示
查看>>
Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
查看>>
Node-RED中使用node-red-contrib-image-output节点实现图片预览
查看>>
Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
查看>>
Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
查看>>
Node-RED中使用range范围节点实现从一个范围对应至另一个范围
查看>>
Node-RED中实现HTML表单提交和获取提交的内容
查看>>
Node-RED中将CSV数据写入txt文件并从文件中读取解析数据
查看>>
Node-RED中建立TCP服务端和客户端
查看>>
Node-RED中建立Websocket客户端连接
查看>>