大华SDK对接使用

327 字
2 分钟
大华SDK对接使用

1、拉取示例代码#

该代码为自己验证实现的demo示例

GitHub:

https://github.com/Cherryhua69/dahua_SDK

2、直接编译运行即可#

根据自己的业务要求修改代码

Terminal window
cmake..
make -j
./Yulan

3、遇到的问题#

1、yuv原始Y、U、V分离存储数据转化#

void CALLBACK CBDecode(LONG nPort, FRAME_DECODE_INFO* pFrameDecodeInfo, FRAME_INFO_EX* pFrameInfo, void* pUser){
if (pFrameDecodeInfo->nType == T_IYUV)
{
// 验证输入参数
if (!pFrameDecodeInfo->pVideoData[0] || !pFrameDecodeInfo->pVideoData[1] || !pFrameDecodeInfo->pVideoData[2] || pFrameInfo->nWidth <= 0 || pFrameInfo->nHeight <= 0) {
return;
}
cout<<"nFrameSeq(对应的视频帧序号):"<<pFrameInfo->nFrameSeq<<endl;
uint8_t* yData = static_cast<uint8_t*>(pFrameDecodeInfo->pVideoData[0]);
uint8_t* uData = static_cast<uint8_t*>(pFrameDecodeInfo->pVideoData[1]);
uint8_t* vData = static_cast<uint8_t*>(pFrameDecodeInfo->pVideoData[2]);
// YUV420P格式:Y分量占width*height,U和V分量各占width*height/4
int ySize = pFrameInfo->nWidth * pFrameInfo->nHeight;
int uvSize = pFrameInfo->nWidth * pFrameInfo->nHeight / 4;
// 创建连续的YUV420P数据缓冲区
cv::Mat yuvData(pFrameInfo->nHeight + pFrameInfo->nHeight / 2, pFrameInfo->nWidth, CV_8UC1);
// 复制Y分量到缓冲区前部
memcpy(yuvData.data, yData, ySize);
// 复制U分量
memcpy(yuvData.data + ySize, uData, uvSize);
// 复制V分量
memcpy(yuvData.data + ySize + uvSize, vData, uvSize);
// 转换YUV420P到BGR
cv::Mat bgrMat;
cv::cvtColor(yuvData, bgrMat, cv::COLOR_YUV2BGR_I420);
yuvData.~Mat();
// 图片保存测试
std::string filename = generate_random_string_fast(10) + ".jpg";
imwrite(filename, bgrMat);
}
}

2、运行报错:cannot open shared object file: No such file or directory解决方法(libRenderEngine.so)#

这个是因为这个动态库需要配置在系统环境变量中才能找到

Terminal window
# libRenderEngine.so这个动态库需要添加到系统环境中:
export LD_LIBRARY_PATH= libs的路径 :$LD_LIBRARY_PATH

4、参考:#

  1. https://blog.csdn.net/zong596568821xp/article/details/90297360
  2. 大华官方的SDK文档(很乱且不全)

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
大华SDK对接使用
https://firefly.cuteleaf.cn/posts/obsidian/大华sdk对接使用/
作者
Firefly
发布于
2026-06-29
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
Firefly
Hello, I'm Firefly.
公告
欢迎来到我的博客!这是一则示例公告。
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
85
分类
5
标签
11
总字数
50,344
运行时长
0
最后活动
0 天前
站点信息
构建平台
Local
博客版本
Firefly v6.12.3
文章许可
CC BY-NC-SA 4.0

文章目录