基于Linux C 的ONVIF Profile T 协议服务器端实现备忘

本文介绍了使用C语言实现ONVIF Profile T协议服务器端的开发过程,包括准备事项、设备兼容性检查、Gsoap编译与ONVIF框架代码生成等关键步骤,并强调了在开发过程中遇到的问题及解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前在做ONVIF Profile S的服务器端,用的是C++, 新的项目要使用H265,新的支持H265的协议Profile T已经发布(应该是2018年9月左右)。就准备用C语言重新写一套,目前主体框架和主要功能已经实现完成,记录下开发过程中注意事项。

开发之前需要了解的和准备的。

PC客户端方面, ONVIF Device Manager不支持Profile T和H265, 可以用来调试Profile S的内容,毕竟这部分差不多。ONVIF Device Test Tool目前最新版本18.12, 已经支持Profle T, 但是应该还没有liveview支持。

NVR方面,目前手上有大华和海康的某NVR。其中大华NVR可以支持Profile T, 海康的不支持,海康支持的H265是通过media.wsdl实现的,不算标准的Profile T协议。

基于Profile T协议, 以下是初步判断设备是否支持Profile T。

1. ONVIF Discovery,  Scopes 必须包含 onvif://www.onvif.org/Profile/T,Types包含 tds:Device。

2. Profile T中Device.Capabilities并没有那么重要,在Extension加入DeviceIO. 另外需要检测的是Device.GetServices 和 Device.ServiceCapabilities。Device.GetServices中需要支持HttpDigest, 支持Media2 Service(名称自定义,namespace一致就行). Device.ServiceCapabilities 需要包含 Media2, Imaging, DeviceIO。

3. Event.ServiceCapabilities

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值