本文主要是介绍RTSP/RTMP视频图像智能分析技术平台EasyCVR如何下载规定时间段的录像文件?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在部分使用EasyCVR的用户当中出现了一个关于录像的需求,用户需要按照时间段下载设备的历史录像,但是目前我们只实现了录像文件的统一下载,因此该问题下我们首先分析需求,查询海康sdk文档,可以直接调用海康的NET_DVR_GetFileByTime_V40接口。
go端添加如下代码:
func (obj SdkHikVision) SdkDownDevRecordByTime(loginhandle, channelNum int, path string, startTime, endTime time.Time) (int, string, error) {log.Println("loginhandle===", loginhandle)log.Println("channelNum===", channelNum)log.Println("path===", path)log.Println("startTime===", startTime)log.Println("endTime===", endTime)spath := strings.Replace(path, "\\", "/", -1)cpath, err := syscall.BytePtrFromString(path)if err != nil {return -1, "", fmt.Errorf("error")}syear := startTime.Year()smonth := int(startTime.Month())sday := startTime.Day()shour := startTime.Hour()sminute := startTime.Minute()ssecond := startTime.Second()eyear := endTime.Year()emonth := int(endTime.Month())eday := endTime.Day()ehour := endTime.Hour()eminute := endTime.Minute()esecond := endTime.Second()ret := C.EASY_NET_DVR_DownFileByTime_Start(C.int(loginhandle), (*C.char)(unsafe.Pointer(cpath)), C.int(channelNum),C.int(syear), C.int(smonth), C.int(sday), C.int(shour), C.int(sminute), C.int(ssecond),C.int(eyear), C.int(emonth), C.int(eday), C.int(ehour), C.int(eminute), C.int(esecond))
再次通过海康SDK添加设备,然后查询通道录像显示正常。
点击下载,回放正常:
EasyCVR的功能正在逐步完善,目前作为视频智能分析平台,在人脸识别和车牌识别领域也有了比较完善的研发成果,并且对于新需求的展现也在不断推进研发当中,可在TSINGSEE青犀视频官方网站直接下载最新版进行实际部署测试。
这篇关于RTSP/RTMP视频图像智能分析技术平台EasyCVR如何下载规定时间段的录像文件?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!