Onvif协议接入分析学习总结(设备取流)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Onvif协议接入分析学习总结(设备取流)相关的知识,希望对你有一定的参考价值。

参考技术A 首先,你需要清楚知道前端IPC的ip地址、Onvif协议监听的端口(一般都是80)以及用户名密码(一般为登录IPC的用户名密码,海康设备IPC需要登录IPC的web端在配置添加Onvif用户)。

其次你需要知道IPC请求的各个服务支持的协议地址如:http://192.168.35.123/onvif/device_service(默认80端口,同:http://192.168.35.123:80/onvif/device_service),一般需要知道Devicemgmt的地址就可以通过这个协议地址往下操作。

如果你不知道IPC的ip以及port等信息,那你就需要使用一些Onvif的测试工具如 ONVIF Device Test Tool和 ONVIF Device Manager 通过Onvif的Discovery协议(广播发现)获取IPC的ip和port信息。

拿到这些信息后就可以开始向设备请求信息获取取流的RTSP地址。

目前一些需要的信令的Onvif官网地址:

http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl

http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl

https://www.onvif.org/ver20/media/wsdl/media.wsdl

1、其他服务地址获取-------- GetServices (推荐)或者 GetCapabilities

该请求是获取各个服务的XAddr(如http://192.168.35.123/onvif/device_service)以及能力集。

取流过程通过该信令请求获取Media(如http://192.168.35.123/onvif/media_service)或者Media2(如http://192.168.35.123/onvif/media2_service)的服务地址。

2、设备的通道信息获取-------- Media-GetProfiles (或者 Media2-GetProfiles )

根据返回的信息记录保存ProfileToken。

里面重点的几个关键信息为VideoSourceConfiguration、VideoEncoderConfiguration。

VideoSourceConfiguration对应的是视频源配置,可以理解为一个摄像头,或者一个监控护画面,一个视频。

VideoEncoderConfiguration对应的是视频编码配置,可以理解为一个视频源对应不同的画面配置,一个视频对应的标清、高清或者超清等等(主码流、副码流、第三码流等)。

一个Profile下对应有一个VideoSourceConfiguration和一个唯一VideoEncoderConfiguration。

一个VideoSourceConfiguration可以对应多个VideoEncoderConfiguration。

3、设备的RTSP的流地址获取-------- Media-GetStreamUri (或者 Media2-GetStreamUri )

请求只需带上ProfileToken,设备会返回对应的Uri。

4、播放Uri

可以通过RTSP客户端播放实时流。

设备通过国标GB28181/海康Ehome接入EasyCVR,视频无法打开的原因分析及解决方法

EasyCVR平台支持多类型设备、多协议方式接入,包括市场主流标准协议国标GB/T28181、RTMP、RTSP/Onvif协议等,以及厂家私有协议,如海康SDK、大华SDK、海康Ehome等。平台可将接入的流媒体进行处理及分发,分发的视频格式包括RTSP、RTMP、FLV、HLS、WebRTC等。

我们在接到的用户咨询中,反馈比较多的是:通过国标GB28181或者海康Ehome接入EasyCVR平台的通道,设备成功上线,且通道也注册成功,但是出现了无法播放的现象,不知道是什么原因。

一般出现这种情况,大多是由于用户在某个参数上的配置失误引起的。今天我们就来和大家分享一下排查思路。

1)首先,排查下设备注册的信息,SIP通道ID是否与其它设备的SIP通道ID重复,原则上每个设备的SIP通道ID是唯一的。

2)如果确定了SIP通道ID无异常,那我们需要查看下服务器的IP是否发生过变化,目的在于查看GB28181接入的SIP host是否与当前服务器的IP一致。

先查看本地的IP地址:win + R打开运行窗口,随后输出cmd,在弹出的doc窗口中输入ipconfig,查看当前电脑的IP地址,如图:

在EasyCVR【配置中心】—【平台接入】—GB28181协议页面选项中,查看SIP host的IP是否与本地IP显示一致,如果不一致请修改为一致,然后点击保存按钮。

3)修改完成后,再次打开通道查看,此时视频即可正常播放。

同理,若海康Ehome协议接入平台也出现上述一样的现象,也是相同的原因。

Ehome协议的配置页面在此处:【配置中心】—【平台接入】—接入协议选择EHOME协议,对相应的IP进行修改即可。

EasyCVR视频融合云服务基于云边端一体化架构,具有强大的数据接入、处理及分发能力,平台支持海量视频汇聚管理,可提供视频监控直播、云端录像、云存储、录像检索与回看、智能告警、平台级联、语音对讲、集群、智能分析等视频能力。EasyCVR目前已经在大量的线下场景中落地应用,如智慧工厂、智慧工地、智慧安防、智慧校园、智慧水利等。感兴趣的用户可以前往演示平台进行体验或部署测试。

以上是关于Onvif协议接入分析学习总结(设备取流)的主要内容,如果未能解决你的问题,请参考以下文章

各大厂RTSP取流的URI

RTSP/Onvif协议EasyNVR视频平台水印性能差异分析测试

EasyNVR通过Onvif方式接入的设备云台控制无反应是什么原因?

设备通过国标GB28181/海康Ehome接入EasyCVR,视频无法打开的原因分析及解决方法

大华的球机接入海康的NVR,大华球机ip 192.16.1.108 onvif协议 端口号是9988.但是在海康的NVR上搜不到。

如何将EasyCVR平台RTSP接入的设备数据迁移到EasyNVR中?