开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 175|回复: 5
收起左侧

[易语言] 求海康取主码流sdk和例子

[复制链接]
结帖率:70% (31/44)
发表于 7 天前 高大上手机用户 | 显示全部楼层 |阅读模式   广东省佛山市
100精币

论坛上都试过都是取预览,预览不是特别清晰,
海康摄像头sdk取主码流。发我766711831@qq.com


回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:100% (2/2)

签到天数: 4 天

发表于 5 天前 | 显示全部楼层   福建省泉州市
1.海康官网下载CH-HCNetSDK
2.初始化sdk: 对应函数 NET_DVR_Init()
3.登录注册获得用户id, 对应函数 NET_DVR_Login(ip,端口,用户名,密码,HK_NET_DVR_DEVICEINFO结构体)
4.赋值NET_DVR_CLIENTINFO结构体成员:通道号lChannel=1 ,lLinkMode码流=0 (要清晰请取主码流0),hPlayWnd播放画面用的的窗口句柄(图片框或是画板的组件句柄均可),为0表示不显示图像  若设置为0,则SDK仍取流,但不进行解码显示,所以仍可以录像
5.使用 NET_DVR_RealPlay(用户id,NET_DVR_CLIENTINFO结构体),成功返回预览句柄
6.使用 NET_DVR_StopRealPlay(预览句柄)停止预览

点评

简单易懂,我抽空下载dll试试,官网我之前找过,没找到,太尴尬了   湖北省武汉市  发表于 前天 00:11
回复

使用道具 举报

结帖率:100% (2/2)

签到天数: 4 天

发表于 5 天前 | 显示全部楼层   福建省泉州市
1.海康官网下载CH-HCNetSDK
2.初始化sdk: 对应函数 NET_DVR_Init()
3.登录注册获得用户id, 对应函数 NET_DVR_Login(ip,端口,用户名,密码,HK_NET_DVR_DEVICEINFO结构体)
4.赋值NET_DVR_CLIENTINFO结构体成员:通道号lChannel=1 ,lLinkMode码流=0 (要清晰请取主码流0),hPlayWnd播放画面用的的窗口句柄(图片框或是画板的组件句柄均可),为0表示不显示图像  若设置为0,则SDK仍取流,但不进行解码显示,所以仍可以录像
5.使用 NET_DVR_RealPlay(用户id,NET_DVR_CLIENTINFO结构体),成功返回预览句柄
6.使用 NET_DVR_StopRealPlay(预览句柄)停止预览

回复

使用道具 举报

结帖率:87% (20/23)

签到天数: 7 天

发表于 7 天前 | 显示全部楼层   广东省东莞市
本回答由 AI 生成,内容仅供参考,请仔细甄别。
  
窗口程序集名保 留  保 留备 注
程序集1   
变量名类 型数组备 注
设备ID整数型  
播放句柄整数型  
正在播放逻辑型  
文件号整数型  
帧计数整数型  

子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
初始化SDK ()
连接摄像头 ("192.168.1.64", 8000, "admin", "your_password")
开始取流 (1)  ' 通道号1
延时 (10000)  ' 取流10秒
停止取流 ()
注销设备 ()
清理SDK ()
返回 0
子程序名返回值类型公开备 注
初始化SDK  
.DLL命令 NET_DVR_Init, 整数型, "HCNetSDK.dll", "NET_DVR_Init", , 初始化SDK
.DLL命令 NET_DVR_GetLastError, 整数型, "HCNetSDK.dll", "NET_DVR_GetLastError", , 获取错误码

如果真 (NET_DVR_Init () = 0)
输出调试文本 ("SDK初始化失败,错误码:" + 到文本 (NET_DVR_GetLastError ()))
结束 ()
输出调试文本 ("SDK初始化成功")
子程序名返回值类型公开备 注
连接摄像头  
DLL命令名返回值类型公开备 注
(暂未填写DLL命令名)   
DLL库文件名:
(未填写库文件名)
在DLL库中对应命令名:
(未填写命令名)
参数名类 型传址数组备 注
IP地址文本型
端口号整数型
用户名文本型
密码文本型

.DLL命令 NET_DVR_Login_V30, 整数型, "HCNetSDK.dll", "NET_DVR_Login_V30", , 登录设备
.参数 sDVRIP, 文本型
.参数 wDVRPort, 整数型
.参数 sUserName, 文本型
.参数 sPassword, 文本型
.参数 lpDeviceInfo, 整数型  ' 这里简化为0,实际应使用结构体
设备ID = NET_DVR_Login_V30 (IP地址, 端口号, 用户名, 密码, 0)
如果真 (设备ID < 0)
输出调试文本 ("设备登录失败,错误码:" + 到文本 (NET_DVR_GetLastError ()))
结束 ()
输出调试文本 ("设备登录成功,设备ID:" + 到文本 (设备ID))
子程序名返回值类型公开备 注
开始取流  
DLL命令名返回值类型公开备 注
(暂未填写DLL命令名)   
DLL库文件名:
(未填写库文件名)
在DLL库中对应命令名:
(未填写命令名)
参数名类 型传址数组备 注
通道号整数型

.DLL命令 NET_DVR_RealPlay_V40, 整数型, "HCNetSDK.dll", "NET_DVR_RealPlay_V40", , 开始实时预览
.参数 lUserID, 整数型
.参数 lpPreviewInfo, 整数型  ' 预览信息结构体指针
.参数 fRealDataCallBack, 子程序指针
.参数 pUser, 整数型

.DLL命令 NET_DVR_SetRealDataCallBack, 逻辑型, "HCNetSDK.dll", "NET_DVR_SetRealDataCallBack", , 设置回调函数
.参数 lRealHandle, 整数型
.参数 fRealDataCallBack, 子程序指针
.参数 dwUser, 整数型

' 创建预览信息结构体
预览信息.通道号 = 通道号
预览信息.码流类型 = 0  ' 0=主码流, 1=子码流
预览信息.连接方式 = 0  ' 0=TCP方式

' 设置回调函数
播放句柄 = NET_DVR_RealPlay_V40 (设备ID, 取变量地址 (预览信息), &数据回调, 0)
如果真 (播放句柄 < 0)
输出调试文本 ("开启预览失败,错误码:" + 到文本 (NET_DVR_GetLastError ()))
返回 ()

正在播放 = 真
输出调试文本 ("主码流预览启动成功,句柄:" + 到文本 (播放句柄))

' 创建文件保存视频流
文件号 = 打开文件 (取运行目录 () + "\主码流_" + 时间_格式化 (取现行时间 (), "yyyyMMdd_HHmmss") + ".h264", #重写, )
帧计数 = 0
启动线程 (&监控线程, , )
子程序名返回值类型公开备 注
数据回调整数型 
DLL命令名返回值类型公开备 注
(暂未填写DLL命令名)   
DLL库文件名:
(未填写库文件名)
在DLL库中对应命令名:
(未填写命令名)
参数名类 型传址数组备 注
句柄整数型
数据类型整数型
数据指针整数型
数据大小整数型
用户数据整数型

如果真 (数据类型 = 0)  ' 0=原始数据
如果真 (文件号 ≠ 0)
写出字节集 (文件号, 指针到字节集 (数据指针, 数据大小))
帧计数 = 帧计数 + 1
返回 0
子程序名返回值类型公开备 注
监控线程  
判断循环首 (正在播放)
延时 (1000)
输出调试文本 ("主码流接收中,帧数: " + 到文本 (帧计数))
判断循环尾 ()
子程序名返回值类型公开备 注
停止取流  
.DLL命令 NET_DVR_StopRealPlay, 整数型, "HCNetSDK.dll", "NET_DVR_StopRealPlay", , 停止实时预览
.参数 lRealHandle, 整数型

如果真 (播放句柄 ≥ 0)
NET_DVR_StopRealPlay (播放句柄)
正在播放 = 假
输出调试文本 ("预览已停止")

如果真 (文件号 ≠ 0)
关闭文件 (文件号)
文件号 = 0

子程序名返回值类型公开备 注
注销设备  
.DLL命令 NET_DVR_Logout, 整数型, "HCNetSDK.dll", "NET_DVR_Logout", , 注销登录
.参数 lUserID, 整数型

如果真 (设备ID ≥ 0)
NET_DVR_Logout (设备ID)
输出调试文本 ("设备已注销")

子程序名返回值类型公开备 注
清理SDK  
.DLL命令 NET_DVR_Cleanup, 整数型, "HCNetSDK.dll", "NET_DVR_Cleanup", , 清理SDK资源

NET_DVR_Cleanup ()
输出调试文本 ("SDK资源已释放")
' 定义预览信息结构体
数据类型名公开备 注
预览信息结构 
成员名类 型传址数组备 注
通道号整数型  
码流类型整数型  
连接方式整数型  
播放窗口整数型  
阻塞模式整数型  
其他参数整数型 256"  ' 预留

点评

对应的sdk有没有,   广东省佛山市  发表于 5 天前
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表