背景介绍

在之前的博客中《基于EasyNVR实现RTSP/Onvif监控摄像头Web无插件化直播监控》,对EasyNVR所实现的功能我们已经有较多描述,这些也在方案地址:http://www.easynvr.com/,
演示地址:http://demo.easynvr.com:10800/#/index/icons中可以直观地看到功能点和适用的场景,在此就不多说了;

本文主要介绍如何基于EasyNVR二次开发,实现自己的一套业务流程:

我们通常在构架一套视频SaaS应用的过程中,将平台设计为3层:视频硬件层(视频源)、视频能力平台(vPaaS)、视频应用平台(vSaaS),视频硬件包括各种IPC、NVR、编码器等视频生成设备,vPaaS视频能力平台部分主要就是对这些不同的硬件进行整合,输出统一接口、统一标准的视频流,vSaaS视频应用层主要就是对视频的增值服务了,这个是跑业务的部分;

EasyNVR的定位和功能,实际就是在中间的vPaaS视频能力平台层,承上启下,接入各个厂家的IPC/NVR设备,再通过统一的RESTful接口输出,为开发者提供稳定、优质的视频及接口服务;
如下主要来大致梳理一下EasyNVR各个视频能力输出的功能点:

能力平台鉴权

1.EasyNVR提供了一套简单的能力输出认证与授权接口,类似于通常的视频云平台提供的AccessToken和SecretKey作用,只要通过用户名/密码调用EasyNVR提供的Login接口,获得整个session周期使用的一个token,即可用该token获取到EasyNVR平台所提供的所有服务:

  • 接口: /api/v1/login?username=xxx&password=xxx
  • 参数
名称 解释 含义
Username 登陆用户名 -
Password 登陆密码 经过MD5加密的字符
  • 返回: 200 OK or 401 Unauthorized

      {"EasyDarwin" : {"Body" : {"Token" : "a19cb5f6e7d2449d8d24c8a0fc554ca7"},"Header" : {"CSeq" : "1","ErrorNum" : "200","ErrorString" : "Success OK","MessageType" : "MSG_SC_SERVER_LOGIN_ACK","Version" : "1.0"}}}
    
  • 操作: 登录,登录后会返回token,以后调用接口需要在cookie中携带token信息“token=a19cb5f6e7d2449d8d24c8a0fc554ca7”

2.这样,只要在后续的接口操作中,http header cookies中携带了token,就可以调用平台所有能力输出接口了,token会有一个过期时间,每调用一次就会刷新一次,超时的话,EasyNVR就会从服务器中将该token移除,那么下次客户端再次拿过期的token来调用接口的时候,EasyNVR服务器就会返回401,要求客户端重新鉴权了;

能力平台视频输出

  • 接口:/api/v1/getchannelstream?channel=1&protocol=RTMP
  • 参数
名称 含义 备注
Channel 通道号 -
Protocol 获取直播的协议 RTMP/HLS
  • 返回: 直播流地址URL

      {"EasyDarwin" : {"Body" : {"ChannelName" : "通道名""URL" : "rtmp://{host}:10035/hls/stream_1"},"Header" : {"CSeq" : "1","ErrorNum" : "200","ErrorString" : "Success OK","MessageType" : "MSG_SC_SERVER_GET_CHANNEL_STREAM_ACK","Version" : "1.0"}}}
    

通过此接口就可以获取到EasyNVR接入的通道的实时视频,还能输出RTMP/HLS多种视频码流协议,基本上RTMP和HLS就能够支撑全部终端的所有视频播放需求了;

能力平台管理接口

  • 接口: /api/v1/getbaseconfig
  • 返回: 基础配置信息表
名称 解释 备注
ServiceLanPort EasyNVR服务监听端口 ReadOnly
ServiceLanIP EasyNVR服务本地地址 ReadOnly
ChannelSnapInterval 通道快照间隔 单位为分钟
NginxRTMPPort EasyNVR配套的rtmp服务器端口 默认10035
  • 报文

      {"EasyDarwin" : {"Body" : {"ChannelSnapInterval" : "120","NginxRTMPPort" : "10035","ServiceLanIP" : "192.168.66.222; 127.0.0.1; ","ServiceLanPort" : "10010",},"Header" : {"CSeq" : "1","ErrorNum" : "200","ErrorString" : "Success OK","MessageType" : "MSG_SC_SERVER_BASE_CONFIG_ACK","Version" : "v1"}}}
    
  • 接口:
    /api/v1/setbaseconfig?ChannelSnapInterval=120&NginxRTMPPort=10035&ServiceLanPort=10010

  • 参数:

  • 返回: 200 OK

      {"EasyDarwin" : {"Header" : {"CSeq" : "1","ErrorNum" : "200","ErrorString" : "Success OK","MessageType" : "MSG_SC_SERVER_SET_BASE_CONFIG_ACK","Version" : "1.0"}}}
    

通过管理接口的服务可以获取/设置EasyNVR能力平台的配置、接入等等,还能通过api/v1/getserverinfo等接口,获取平台的版本号,运行时长等信息,对于管理者来说,非常好用;

更多接口、EasyNVR在线演示与试用下载

EasyNVR无插件视频接入方案说明:http://www.easynvr.com/
同时可在网站中访问EasyNVR在线演示:

也可以在网站上下载最新版本:

EasyNVR应用场景

EasyNVR可以说已经成为国内视频互联网化基础建设的排头兵,几乎各个民生行业都已经有了EasyNVR视频能力输出的身影,EasyNVR多年服务于各行各业视频基础建设,EasyNVR的可靠性、完整性、稳定性已经受到了业界的广泛认可!

智慧校园

平安厂区

智慧家居

EasyNVR安防摄像机网页流媒体服务

EasyNVR是一款拥有完整、自主、可控知识产权,同时又能够具备软硬一体功能的安防互联网化流媒体服务器,能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP、Onvif协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发。详情可访问EasyNVR官网:http://www.easynvr.com

基于EasyNVR摄像机无插件直播方案二次开发实现自己的摄像机IPC-NVR无插件化直播解决方案相关推荐

  1. 基于EasyNVR二次开发实现自己的摄像机IPC/NVR无插件化直播解决方案

    基于EasyNVR二次开发实现自己的摄像机IPC/NVR无插件化直播解决方案 参考文章: (1)基于EasyNVR二次开发实现自己的摄像机IPC/NVR无插件化直播解决方案 (2)https://ww ...

  2. gige相机二次开发_GigE Vision接口摄像机及其应用

    摘  要: GigE Vision接口技术成为了机器视觉工业的一项非常具有吸引力的技术,Basler scout系列GigE Vision摄像机具有卓越的性能, Basler提供了Pylon驱动包开发 ...

  3. 【ReactiveX】基于Golang pmlpml/RxGo程序包的二次开发

    基于Golang pmlpml/RxGo程序包的二次开发[阅读时间:约20分钟] 一.ReactiveX & RxGo介绍 1.ReactiveX 2.RxGo 二.系统环境&项目介绍 ...

  4. [arcgis插件]gis二次开发 报备工具:SHP转TXT文本、TXT转SHP插件

    [arcgis插件]gis二次开发 报备工具:SHP转TXT文本.TXT转SHP插件 [2022.09.28版本更新] 1.shp转txt文件: 选择图层:选择面图层 保存路径:设置一个文件夹路径,可 ...

  5. 基于EasyNVR摄像机网页无插件直播服务二次开发实现H5播放页面的简单集成方案...

    我们通常在构架一套视频SaaS应用的过程中,将平台设计为3层:视频硬件层(视频源).视频能力平台(vPaaS).视频应用平台(vSaaS),视频硬件包括各种IPC.NVR.编码器等视频生成设备,vPa ...

  6. 基于EasyNVR摄像机网页无插件直播服务二次开发实现H5播放页面的简单集成方案

    我们通常在构架一套视频SaaS应用的过程中,将平台设计为3层:视频硬件层(视频源).视频能力平台(vPaaS).视频应用平台(vSaaS),视频硬件包括各种IPC.NVR.编码器等视频生成设备,vPa ...

  7. 基于GIS技术的公路路线方案决策支持系统开发初探

    作者:唐 勇 朱爱民 摘 要:本文结合公路规划.设计.建设实际,针对现行公路路线CAD系统尚不足以解决公路可行性研究.路线方案选定这类多目标空间决策问题的现状,论述了引入地理信息系统的有关理论.方法和 ...

  8. 视频点播RTMP推流直播流媒体服务二次开发集成接口

    LiveQing流媒体服务器软件,提供一站式的转码.点播.直播.时移回放服务,极大地简化了开发和集成的工作. 其中,点播功能主要包含:上传.转码.分发.直播功能,主要包含:直播.录像, 直播支持RTM ...

  9. lisp画靶子 visual_基于VisualLISP的AutoCAD绘图命令的二次开发_沈良翼

    2009 AutoCAD 是由美国 Autodesk 公司于 20 世纪 80 年代初为 微机上应用 CAD 技术而开发的绘图程序软件包, 经过不断的 完善, 现已经成为国际上广为流行的绘图工具 . ...

最新文章

  1. Visual Studio 2017工程项目的几个重要文件解析
  2. SQL Server 2008 Analysis Services 多维数据库一步一步从入门到精通
  3. LIVE555再学习 -- DM368/Hi3516A 交叉编译
  4. 论文写作常见错误(1)
  5. 最速下降法steepest descent详细解释
  6. java in查询无法查询到数据(mybatis字符#与字符$的区别)
  7. STL堆算法性能分析与优化方法(GCC4.4.2 stl_heap.h源代码分析与改进方案)
  8. 大数据对能源发展有什么作用
  9. fpga c语言教程,FPGA实践教程(一)用HLS将c程序生成IPcore
  10. win10计算机设备感叹号,win10网络适配器出现感叹号的解决方法
  11. Juniper防火墙无法登陆的问题解决
  12. Markdown格式表情包大全最新整理分享
  13. html把字母a显示为其asc码,HTML ASCII码
  14. 免费GIF动图制作,简简单单一招搞定
  15. Failed to load response data:No data found for resource with given identifier
  16. jmu-python-最佳身高
  17. android 格式转化,智兔格式转换器
  18. 【去广告版】P2P终结者4.2最高权限
  19. 2019全国大学生信息安全竞赛初赛writeup
  20. 离散数学课后习题-斑马难题

热门文章

  1. 使用Qt做一个简单计算器
  2. win10全新系统安装 U盘启动
  3. Zend Studio 9.0.3正式版注册破解
  4. 【LBS】移动互联网基于LBS地理位置应用开发必备
  5. 【通識:人生哲學與幸福】青年心理學 Part2 成熟
  6. 霍兰德人格分析雷达图——python实现
  7. win7系统蓝屏故障以及常见的解决方案
  8. 使用golang编写Prometheus Exporter
  9. ROS学习记录(二)玩转海龟——海龟保姆级教程
  10. linux 微信不能发图片,微信回应发原图泄露位置信息​;元旦起 AI 造假音视频不得随意发布...