关于海康威视网络摄像机二次开发问题
来源:互联网 发布:up to date数据库官网 编辑:程序博客网 时间:2024/06/04 18:46
最近一个星期一直在研究海康威视的网络摄像机二次开发问题,纠结了很久。今天终于走通了一部分,记下来希望能够帮助到更多人。现在是用的 VS2013 + opencv 进行测试。
首先推荐两篇对我帮助很大的博文:
http://blog.csdn.net/wanghuiqi2008/article/details/31410509
这篇很详细的讲解了二次开发的框架,如果充分理解了作者的代码,那基本就差不多了。记得将#include "PlayM4.h"改为#include "plaympeg4.h",海康的SDK更新了
http://blog.csdn.net/shangtao1989/article/details/50260661
这篇博文很重要的就是关于YV12转换到RGB的内容,我建议大家使用作者提供的第二方法去替代第一篇博文中YV12转RGB的方法。另外建议大家事先开辟用来转换的两个图像空间。这样在实时回调过程中能提高实时性。
具体代码我就不粘贴了,我在这给出一些这段时间遇到的问题,以及解决办法,可能有些笨拙,在此抛砖引玉。
首先是配置的问题首先按照开发文档添加包含目录以及库目录,接着在链接器-输入-附加依赖项中添加HCNetSDK.lib;PlayCtrl.lib;ws2_32.lib;winmm.lib;GdiPlus.lib文件
接着将代码进行编译,这时可能会弹出缺少两个dll文件。注意:如果你是在debug模式下编译的,那就在生成的debug文件夹下添加相应文件。
截取一段开发文档中的原话:
1. 更新设备网络SDK时,SDK开发包【库文件】里的HCNetSDK.dll、HCCore.dll、PlayCtrl.dll、SuperRender.dll、AudioRender.dll、HCNetSDKCom文件夹等文件均要加载到程序里面,
【HCNetSDKCom文件夹】(包含里面的功能组件dll库文件)需要和HCNetSDK.dll、HCCore.dll一起加载,放在同一个目录下,且HCNetSDKCom文件夹名不能修改。
再次编译调试就能正常运行了。
接着你会发现播放有些卡顿,一般有5S延时,甚至运行一段时间后会打印出很多 PlayM4_InputData failed 接着会报 error happened出错。
这个原因在SDK文档中说: 回调函数中不能执行可能会占用时间较长的接口或操作,不建议调用该SDK(HCNetSDK.dll)本身的接口
个人认为就是说在解码回调函数void CALLBACK DecCBFun(*******)中不能运行耗时代码,不信你把imshow()和waitkey()注释掉就好了。
解决办法有很多:
1.可以尝试利用多线程在另一个线程中显示。
2.在realse模式下运行,记得编译后在realse文件夹下添加相关文件。(realse模式运行速度立马提升,可以达到实时性,并且CPU占用也大大减小)
3.登陆网络摄像机系统(网址就是自己改的IP),配置-视音频中降低分辨率(我的默认的是2560*1440,当我调到1280*720后在debug模式下也能满足实时性)
以上基本就是我遇到的问题,我也只是个小白,所以大家看后不要见笑,更希望这篇博文能够对你有用。
- 关于海康威视网络摄像机二次开发问题
- 海康威视网络摄像机远程监控配置(DDNS)
- 利用海康威视sdk 预览摄像机
- qt+opencv开发海康威视网络摄像机采集处理程序
- 基于Qt的海康威视网络摄像头SDK的二次开发(一)
- OpenCV_海康威视SDK_VS2012配置及实时预览(非海康(其他)网络摄像头IPC)二次开发
- 海康威视IP摄像头基于OPENCV的二次开发
- EasyCamera开源摄像机接入海康威视摄像机PS流转ES流
- EasyCamera开源摄像机接入海康威视摄像机快照获取上传
- EasyCamera开源摄像机接入海康威视摄像机实时视频
- EasyDarwin云平台:EasyCamera开源摄像机接入海康威视摄像机PS流转ES流
- EasyDarwin流媒体云平台:EasyCamera开源摄像机接入海康威视摄像机实时视频
- EasyCamera开源摄像机接入海康威视摄像机PS流转ES流
- 关于大华网络摄像机访问的问题
- 解决海康威视高清网络球机云台不能上扬的问题
- EasyDarwin开源云平台接入海康威视EasyCamera摄像机之快照获取与上传
- 海康威视 DVR IPC, IOS系统的SDK包。用于二次开发
- 海康威视 网络硬盘录像机 Linux / QT 视频监控
- 虚拟机安装centos 6.5 basicserver 配置联网
- codeforces 622E Ants in Leaves 数 贪心
- axure原型设计之播放控制条
- 作用域
- UVA 11134 Fabled Rook 枚举 multiset加速
- 关于海康威视网络摄像机二次开发问题
- 2-7 laravel中的Eloquent入门
- Trailing Zeroes (III) (数论(二分查找值,规律))
- Spring Boot学习笔记-Nginx+Jar包部署项目
- Unity3D学习(16)之初识DDD
- 文章标题
- 今天收到阿里巴巴一个电话面试
- babel-plugin-import不生效的问题
- [二进制分组 dsu on tree 二次函数] Codechef KILLER Painting Tree