LiveNVR监控流媒体Onvif/RTSP视频流上面如何叠加水印叠加动态图片示例

本文主要是介绍LiveNVR监控流媒体Onvif/RTSP视频流上面如何叠加水印叠加动态图片示例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

LiveNVR监控流媒体Onvif/RTSP视频流上面如何叠加水印叠加动态图片示例

  • 1、介绍
  • 2、摄像头OSD设置水印
  • 3、前端页面叠加
  • 4、视频编解码打水印
  • 4、RTSP/HLS/FLV/RTMP拉流Onvif流媒体服务

1、介绍

监控视频平台播放视频监控的时候,除了满足正常视频播放外,有时还需要方便标记或者防盗用等添加视频水印。有些视频在原始摄像头端就可以添加OSD水印,这种方式最好。 但是有些原始视频没有水印,但是平台端播放的时候又希望有水印,下面介绍下LiveNVR Onvif/RTSP流媒体服务器中如何给监控视频添加水印的。

2、摄像头OSD设置水印

如果可以修改摄像头或者录像机视频源端的OSD水印的话,首先建议的就是用摄像头原始添加水印的方式, 这种方式对服务器端没有任何性能影响,水印数据也是直接编解码进视频数据里面去的,没法去掉。
在这里插入图片描述

在这里插入图片描述

3、前端页面叠加

不能修改摄像头或者录像机视频源端的水印的话,建议就是浏览器播放端div叠加一层,类似于看网络电视时的弹幕。
这种方式的好处是不需要重新编解码,对服务器端不造成压力。不方便的就是只能在自己的播放客户端添加div叠加,原始流里面没有叠加数据,如果其他客户端直接拉取的播放地址播放的话还是没有水印。
在LiveNVR通道配置里面展开高级配置,叠加水印的方框中直接输入需要叠加的文字就可以。
在这里插入图片描述

在这里插入图片描述

4、视频编解码打水印

如果前2种方案都不能满足需求,还是需要从服务端将水印叠加进视频内容中的话,下面就介绍下LiveNVR Onvif/RTSP流媒体服务如何叠加文件或者图片水印。
首先还是进LiveNVR通道配置里面展开高级配置。如果需要叠加文字水印就输入draw_text=“测试” ,还支持draw_text={name} 通配配置把通道名称叠加进水印; 如果需要叠加图片水印的话,需要先将图片上传到服务器上,再输入draw_image=fullpath, 其中fullpath为图片的绝对路径。
除了draw_text和draw_image,还支持一些其他参数:

draw_x   : 水平坐标,坐标为0,其他数值就是从左开始的具体像素坐标,负数为从右开始的像素坐标。还支持left、center、right
draw_y  : 竖向坐标,左上角为0,其他数值就是从上开始的具体像素坐标,负数为从底开始的像素坐标。还支持top、center、bottom
draw_color : 叠加文字水印时,文字的颜色,可以是0x0000FF这种颜色的绝对值,也支持英文如red、blue等
draw_size :叠加文字水印时,文字字体大小
注:
1、如果文字水印和图片水印同时存在,draw_x/draw_y用于文字水印坐标,draw_image_x/draw_image_y用于图片水印坐标
2、坐标还支持数学公式,这样就可以做到水印动态移动
3、不同参数直接可以用换行分隔或者英文逗号分隔示例:
draw_text={name}@liveqing.com
draw_x=(w-tw)/2+((w-tw)/2)*cos(n/18)
draw_y=(h-th)/2+((h-th)/2)*cos(n/32)
draw_size=40
draw_color=cyandraw_image=www/favicon.ico
draw_image_x=(W-w)/2+((W-w)/2)*sin(n/18)
draw_image_y=(H-h)/2+((H-h)/2)*sin(n/32)

在这里插入图片描述

在这里插入图片描述

4、RTSP/HLS/FLV/RTMP拉流Onvif流媒体服务

  • 支持 Windows Linux 及其它CPU架构(国产、嵌入式…)操作系统
  • 安装包下载 、 安装使用说明
  • 更多常见问题

这篇关于LiveNVR监控流媒体Onvif/RTSP视频流上面如何叠加水印叠加动态图片示例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/770847

相关文章

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Spring Gateway动态路由实现方案

《SpringGateway动态路由实现方案》本文主要介绍了SpringGateway动态路由实现方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前沿何为路由RouteDefinitionRouteLocator工作流程动态路由实现尾巴前沿S

Java高效实现PowerPoint转PDF的示例详解

《Java高效实现PowerPoint转PDF的示例详解》在日常开发或办公场景中,经常需要将PowerPoint演示文稿(PPT/PPTX)转换为PDF,本文将介绍从基础转换到高级设置的多种用法,大家... 目录为什么要将 PowerPoint 转换为 PDF安装 Spire.Presentation fo

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数

python中的高阶函数示例详解

《python中的高阶函数示例详解》在Python中,高阶函数是指接受函数作为参数或返回函数作为结果的函数,下面:本文主要介绍python中高阶函数的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录1.定义2.map函数3.filter函数4.reduce函数5.sorted函数6.自定义高阶函数

Vue实现路由守卫的示例代码

《Vue实现路由守卫的示例代码》Vue路由守卫是控制页面导航的钩子函数,主要用于鉴权、数据预加载等场景,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一、概念二、类型三、实战一、概念路由守卫(Navigation Guards)本质上就是 在路

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

JAVA实现Token自动续期机制的示例代码

《JAVA实现Token自动续期机制的示例代码》本文主要介绍了JAVA实现Token自动续期机制的示例代码,通过动态调整会话生命周期平衡安全性与用户体验,解决固定有效期Token带来的风险与不便,感兴... 目录1. 固定有效期Token的内在局限性2. 自动续期机制:兼顾安全与体验的解决方案3. 总结PS

C#中通过Response.Headers设置自定义参数的代码示例

《C#中通过Response.Headers设置自定义参数的代码示例》:本文主要介绍C#中通过Response.Headers设置自定义响应头的方法,涵盖基础添加、安全校验、生产实践及调试技巧,强... 目录一、基础设置方法1. 直接添加自定义头2. 批量设置模式二、高级配置技巧1. 安全校验机制2. 类型

Python屏幕抓取和录制的详细代码示例

《Python屏幕抓取和录制的详细代码示例》随着现代计算机性能的提高和网络速度的加快,越来越多的用户需要对他们的屏幕进行录制,:本文主要介绍Python屏幕抓取和录制的相关资料,需要的朋友可以参考... 目录一、常用 python 屏幕抓取库二、pyautogui 截屏示例三、mss 高性能截图四、Pill