java对接海康威视SDK(win64、linux64),处理播放实时流转码,按时间回放功能,附海康威视最新3.0摄像头监控web端实例+插件
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
java对接海康威视SDK(win64、linux64),处理播放实时流转码,按时间回放功能
准备工作
- 海康威视sdk下载地址
开发版本使用win64,上线部署使用linunx64
官网下载的sdk包含示例代码,是可视化界面 - 示例代码(本篇会用到的代码)
遇到的坑
- 官网下载的Win64位SDK javademo不是最新版与开发文档不一致(不是最新版,开发文档更新了代码没更新),特此还与海康sdk开发方邮件沟通。解决方法:官网下载Linux64SDK是最新版,采用里面的javademo(需要修改HCNetSDK.java中继承类。由com.sun.jna.win32.StdCallLibrary改为Library)
- 海康威视通道号在对接中很重要,与大华同的是海康nvr是从33开始
- Linux环境中需要不同的代码(主要是HCNetSDK.java)不同的依赖包
- 个人认为大华的sdk写的比海康好
调用步骤
- 示例代码没有引入log4J都直接输出控制台
参数配置 DeviceEnums
playUrl("playUrl", "C:\\Users\\JIJL\\Desktop\\sdk\\video\\", "播放缓存地址"),
downloadUrl("downloadUrl", "C:\\Users\\JIJL\\Desktop\\sdk\\lib\\", "下载地址"),
libsUrl("downloadUrl", "C:\\Users\\JIJL\\Desktop\\sdk\\CH-HCNetSDKV6.0.2.35_build20190411_Win64\\库文件\\", "库文件地址"),
初始化sdk
/**
* @return boolean
* @Author jijl
* @Description: 初始化
* @Date 17:21 2019/7/11
**/
public boolean Init() {
boolean initSuc = hCNetSDK.NET_DVR_Init();
if (initSuc != true) {
System.out.println("初始化失败");
return false;
} else {
return true;
}
}
注册 大华的sdk叫登陆海康的叫注册
//注册
long userId = cli.Login_V30(drvice);
if (userId != -1) {
System.out.println("注册成功");
}else{
System.out.println("注册失败");
}
业务功能 直接按照开发文档来就好,需注意每个业务都需要登陆id。上面已经给了代码下载地址包含了几个功能可以参考(代码写的比较菜)
退出及清理SDK
/**
* @return boolean
* @Author jijl
* @Description: 注销
* @Date 9:08 2019/7/12
* @Param [drvice 设备信息]
**/
public boolean Logout_V30(long userId) {
//如果已经注册,注销
if (lUserID.longValue() > -1 && hCNetSDK.NET_DVR_Logout_V30(lUserID)) {
//cleanup SDK
return hCNetSDK.NET_DVR_Cleanup();
}
return false;
}
测试
不断在写的mp4文件
虽然是不断在写入用vlc还是可以播放的
康威视最新3.0摄像头监控web端实例+插件
web端开发的可以参考
由于内核原因,谷歌新版本并不支持,使用ie或者360、搜狗之类的浏览器可用
下载地址
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:1 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献1条内容
所有评论(0)