ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:20.37KB ,
资源ID:5791851      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5791851.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(NVR的SKD二次开发接口文档.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

NVR的SKD二次开发接口文档.docx

1、NVR的SKD二次开发接口文档NVR的SDK二次开发接口文档采购的海康NVR及IPC的产品需支持SDK版本在xxx上能够支持输出RTSP协议流以下SDK的接口是必须的1账号验证 用户登录NVR:实现用户的认证功能,登录成功后,返回的用户ID 作为其他功能操作的唯一标识。1.1SDK初始化1)初始化SDK接口:NET_DVR_Init函数: BOOL NET_DVR_Init()参数: 无返回值: TRUE 表示成功,FALSE 表示失败。说明: 调用设备网络SDK 其他函数的前提。2)释放SDK 资源接口:NET_DVR_Cleanup函数: BOOL NET_DVR_Cleanup()参数:

2、 无返回值: TRUE 表示成功,FALSE 表示失败。说明: 在结束之前最后调用。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。1.2NVR用户的认证/登录1)激活设备接口:NET_DVR_ActivateDevice函数: BOOL NET_DVR_ActivateDevice(char* sDVRIP, WORD wDVRPort, LPNET_DVR_ACTIVATECFGlpActivateCfg)参 数:insDVRIP 设备IP 地址inwDVRPort 设备端口inlpActivateCfg 激活参数,包括激活使用的初始密码返回

3、值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说明: 出厂设备需要先激活,然后再使用激活使用的初始密码登录设备。2)IPServer 或者DDNS 域名解析,获取动态IP 地址和端口号接口:NET_DVR_GetDVRIPByResolveSvr_EX函数:BOOL NET_DVR_GetDVRIPByResolveSvr_EX (char* sServerIP, WORD wServerPort, BYTE* sDVRName, WORD wDVRNameLen, BYTE* sDVRSeria

4、lNumber, WORD wDVRSerialLen, char* sGetIP, DWORD* dwPort)参数:insServerIP 解析服务器的IP 地址inwServerPort 解析服务器的端口号,IP Server 解析服务器端口号为7071,HiDDNS 服务器的端口号为80insDVRName 设备名称inwDVRNameLen 设备名称的长度insDVRSerialNumber 设备的序列号inwDVRSerialLen 设备序列号的长度outsGetIP 获取到的设备IP 地址指针outdwPort 获取到的设备端口号指针返回值: TRUE 表示成功,FALSE 表示

5、失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 该接口中的设备名称和设备序列号不能同时为空。通过设备域名或者序列号解析出设备当前IP地址和端口,然后调用NET_DVR_Login_V40 登录设备。支持的解析服务器有IPServer 和hiDDNS。3)用户注册设备接口:NET_DVR_Login_V40函 数: LONG NET_DVR_Login_V40(LPNET_DVR_USER_LOGIN_INFO pLoginInfo,LPNET_DVR_DEVICEINFO_V40 lpDeviceInfo)参 数: inpLogi

6、nInfo 登录参数,包括设备地址、登录用户、密码等outlpDeviceInfo 设备信息(同步登录即pLoginInfo 中bUseAsynLogin 为0 时有效返回值: 异步登录的状态、用户ID 和设备信息通过 NET_DVR_USER_LOGIN_INFO 结构体中设置的回调函数(fLoginResultCallBack)返回。对于同步登录,接口返回-1 表示登录失败,其他值表示返回的用户ID 值。用户ID 具有唯一性,后续对设备的操作都需要通过此ID 实现。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: pLoginInfo

7、 中bUseAsynLogin 为0 时登录为同步模式,接口返回成功即表示登录成功;pLoginInfo中bUseAsynLogin 为1 时登录为异步模式,登录是否成功在输入参数设置的回调函数中返回。设备同时最多允许128 个用户注册。SDK 支持2048 个注册,返回UserID 的取值范围为02047。4)用户注销接口:NET_DVR_Logout函 数: BOOL NET_DVR_Logout(LONG lUserID)参 数: inlUserID 用户ID 号,NET_DVR_Login_V40 的返回值返回值:TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DV

8、R_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 建议使用此接口实现注销功能。2视频监控浏览1)启动预览接口:NET_DVR_RealPlay_V40函 数: LONG NET_DVR_RealPlay_V40(LONG lUserID, LPNET_DVR_PREVIEWINFO lpPreviewInfo,REALDATACALLBACK fRealDataCallBack_V30, void *pUser)参 数: in lUserID NET_DVR_Login_V40 的返回值in lpPreviewInfo 预览参数,包括通道号、码流类型、取流协议in f

9、RealDataCallBack_V30 码流数据回调函数in pUser 用户数据返回值: -1 表示失败,其他值作为NET_DVR_StopRealPlay 等函数的句柄参数。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 该接口预览参数结构中可以设置当前预览操作是否阻塞(通过bBlocked 参数设置),若设为不阻塞,表示发起与设备的连接就认为连接成功,如果发生码流接收失败、播放失败等情况以预览异常的方式通知上层。在循环播放的时候可以减短停顿的时间,与NET_DVR_RealPlay处理一致。若设为阻塞,表示直到播放操作完成才返回

10、成功与否。 该接口中的回调函数可以置为空,这样该函数将不回调码流数据给用户,不过用户仍可以通过接口NET_DVR_SetRealDataCallBack 或NET_DVR_SetStandardDataCallBack 注册捕获码流数据的回调函数以捕获码流数据。fRealDataCallBack_V30 回调函数中不能执行可能会占用时间较长的接口或操作,不建议调用该SDK(HCNetSDK.dll)本身的接口。 Linux 64 位系统不支持软解码功能,因此需要将窗口句柄传NULL,设置回调函数,只取流不解码显示。 客户端异常离线时,设备端对取流连接的保持时间为10 秒。2)停止预览接口:NE

11、T_DVR_StopRealPlay函 数: LONG NET_DVR_StopRealPlay (LONG lRealHandle)参 数: inlRealHandle 预览句柄,NET_DVR_RealPlay_V40 的返回值返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明:3)获取预览时用来解码和显示的播放库句柄接口:NET_DVR_GetRealPlayerIndex函 数: int NET_DVR_GetRealPlayerIndex(LONG lRealHandle)参 数:

12、 inlRealHandle 预览句柄,NET_DVR_RealPlay_V40 的返回值返回值: -1 表示失败,其他值表示播放句柄。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 用户可以通过返回的句柄自行实现播放库SDK 提供的其他功能,详见本公司提供的软解码库函数说明播放器SDK 编程指南。3IPC录像3.1IPC信息操作1)获取IPC信息列表接口:NET_DVR_GetSadpInfoList函 数: BOOL NET_DVR_GetSadpInfoList(LONG lUserID, LPNET_DVR_SADPINFO_L

13、IST lpSadpInfoList)参 数: inlUserID NET_DVR_Login_V40 的返回值outlpSadpInfoList IPC 信息列表结构返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明:2)修改IPC信息接口:NET_DVR_UpdateSadpInfo函 数: BOOL NET_DVR_UpdateSadpInfo(LONG lUserID, LPNET_DVR_SADP_VERIFY lpSadpVerify,LPNET_DVR_SADPINFO lpS

14、adpInfo)参 数: inlUserID NET_DVR_Login_V40 的返回值inlpSadpVerify 校验信息inlpSadpInfo 修改的IPC 信息列表结构返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明:3.2声音控制功能1)设置声音播放模式接口:NET_DVR_SetAudioMode函 数: BOOL NET_DVR_SetAudioMode(DWORD dwMode)参 数: indwMode 声音播放模式:1- 独占声卡,单路音频模式;2- 共享声卡,多路

15、音频模式返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 不调用该接口设置声音播放模式,默认为独占播放。2)独占声卡模式下开启声音接口:NET_DVR_OpenSound函 数: BOOL NET_DVR_OpenSound(LONG lRealHandle)参 数: inlRealHandle NET_DVR_RealPlay_V40 的返回值返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原

16、因。说 明: 如果当前是共享模式播放,调用该接口将返回失败。以独占方式只能打开一路通道播放,即依次打开多个通道时仅打开最后一路。3)独占声卡模式下关闭声音接口:NET_DVR_CloseSound函 数: BOOL NET_DVR_CloseSound()参 数: 无返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明:4)共享声卡模式下开启声音接口:NET_DVR_OpenSoundShare函 数: BOOL NET_DVR_OpenSoundShare(LONG lRealHandle)

17、参 数: inlRealHandle NET_DVR_RealPlay_V40 的返回值返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明:5)共享声卡模式下关闭声音接口:NET_DVR_CloseSoundShare函 数: BOOL NET_DVR_CloseSoundShare (LONG lRealHandle)参 数: inlRealHandle NET_DVR_RealPlay_V40 的返回值返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_

18、GetLastError 获取错误码,通过错误码判断出错原因。说 明:6)调节播放音量接口:NET_DVR_Volume函 数: BOOL NET_DVR_Volume(LONG lRealHandle,WORD wVolume)参 数: inlRealHandle NET_DVR_RealPlay_V40 的返回值inwVolume 音量,取值范围0,0xffff返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明:3.3实时预览数据捕获1)注册回调函数,捕获实时码流数据接口:NET_DVR

19、_SetRealDataCallBack函 数: BOOL NET_DVR_SetRealDataCallBack(LONG lRealHandle, fRealDataCallBack cbRealDataCallBack,DWORD dwUser)参 数: inlRealHandle 预览句柄,NET_DVR_RealPlay_V40 的返回值incbRealDataCallBack 码流数据回调函数indwUser 用户数据返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 此函数包

20、括开始和停止用户处理SDK 捕获的数据,当回调函数cbRealDataCallBack 设为非NULL值时,表示回调和处理数据;当设为NULL 时表示停止回调和处理数据。回调的第一个包是40 个字节的文件头,供后续解码使用,之后回调的是压缩的码流。回调数据最大为256K 字节。 cbRealDataCallBack回调函数中不能执行可能会占用时间较长的接口或操作,不建议调用该SDK(HCNetSDK.dll)本身的接口。2)注册回调函数,捕获实时码流数据(标准码流)接口:NET_DVR_SetStandardDataCallBack函 数: BOOL NET_DVR_SetStandardDa

21、taCallBack(LONG lRealHandle, fStdDataCallBack cbStdDataCallBack,DWORD dwUser)参 数: inlRealHandle 预览句柄,NET_DVR_RealPlay_V40 的返回值incbStdDataCallBack 标准码流回调函数indwUser 用户数据返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 此函数包括开始和停止用户处理SDK 捕获的数据,当回调函数cbStdDataCallBack 设为非NULL

22、值时,表示回调和处理数据;当设为NULL 时表示停止回调和处理数据。回调的第一个包是40 个字节的文件头,供后续解码使用,之后回调的是标准码流(含12 字节的RTP 头)。 cbStdDataCallBack 回调函数中不能执行可能会占用时间较长的接口或操作,不建议调用该SDK(HCNetSDK.dll)本身的接口。 此函数仅支持对于支持RTSP 协议取流的设备的标准码流回调。3)捕获数据并保存到指定的文件中接口:NET_DVR_SaveRealData函 数: BOOL NET_DVR_SaveRealData(LONG lRealHandle,char *sFileName)参 数: in

23、lRealHandle NET_DVR_RealPlay_V40 的返回值insFileName 文件路径指针返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: V5.0.3.2 或以后版本,通过该接口保存录像,文件最大限制为1024MB,大于1024M 时,SDK 自动新建文件进行保存,文件开始将40 字节头自动写入,文件名命名规则为“在接口传入的文件名基础上增加数字标识(例如:*_1.mp4、*_2.mp4)”。4)停止数据捕获接口:NET_DVR_StopSaveRealData函

24、数: BOOL NET_DVR_StopSaveRealData(LONG lRealHandle )参 数: inlRealHandle NET_DVR_RealPlay_V40 的返回值返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明:3.4预览抓图1)设置抓图模式接口:NET_DVR_SetCapturePictureMode函 数: BOOL NET_DVR_SetCapturePictureMode(DWORD dwCaptureMode)参 数: indwCaptureMode

25、 抓图模式:enum tagPDC_PARAM_KEYBMP_MODE = 0, / BMP 模式JPEG_MODE = 1 / JPEG 模式CAPTURE_MODE返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 调用该接口设置抓图模式后,NET_DVR_CapturePicture 可抓取相应的图片。2)预览时,单帧数据捕获并保存成图片接口:NET_DVR_CapturePicture函 数: BOOL NET_DVR_CapturePicture(LONG lRealHandle

26、,char *sPicFileName)参 数: inlRealHandle NET_DVR_RealPlay_V40 的返回值insPicFileName 保存图象的文件路径。路径长度和操作系统有关,sdk 不做限制,windows 默认路径长度小于等于256 字节(包括文件名在内)。返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 在调用该接口之前可以调用NET_DVR_SetCapturePictureMode 设置抓图模式,默认为BMP 模式。如果抓图模式为BMP 模式,抓取的是

27、BMP 图片,保存路径后缀应为.bmp;如果抓图模式为JPEG 模式,抓取的是JPEG 图片,保存路径后缀应为.jpg。 若设备的当前分辨率为2CIF,播放库做了相关处理,抓取的图像为4CIF。 调用NET_DVR_CapturePicture 进行抓图,实际是播放库解码抓图,要求在调用NET_DVR_RealPlay_V40 等接口时传入非空的播放句柄(播放库解码显示),否则时接口会返回失败(调用次序错误)。3)单帧数据捕获并保存成JPEG 图片接口:NET_DVR_CaptureJPEGPicture函 数: BOOL NET_DVR_CaptureJPEGPicture(LONG lUs

28、erID, LONG lChannel, LPNET_DVR_JPEGPARA lpJpegPara, char *sPicFileName)参 数: inlUserID NET_DVR_Login_V40 的返回值inlChannel 通道号inlpJpegPara JPEG 图像参数insPicFileName 保存JPEG 图的文件路径返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 该接口用于设备的单帧数据捕获:SDK 发送命令给设备,设备抓图之后返回客户端,然后SDK将接收到的

29、JPEG 图片数据保存成文件。抓图功能和抓图分辨率需要设备支持,IPC 设备一般只支持当前视频分辨率的抓取。4)单帧数据捕获并保存成JPEG 存放在指定的内存空间中接口:NET_DVR_CaptureJPEGPicture_NEW函 数: BOOL NET_DVR_CaptureJPEGPicture_NEW(LONG lUserID, LONG lChannel, LPNET_DVR_JPEGPARA lpJpegPara, char *sJpegPicBuffer, DWORD dwPicSize, LPDWORD lpSizeReturned)参 数: inlUserID NET_DVR

30、_Login_V40 的返回值inlChannel 通道号inlpJpegPara JPEG 图像参数insJpegPicBuffer 保存JPEG 数据的缓冲区indwPicSize 输入缓冲区大小outlpSizeReturned 返回图片数据的大小返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通、过错误码判断出错原因。说 明: 该接口用于设备的单帧数据捕获:SDK 发送命令给设备,设备抓图之后返回客户端,然后SDK将接收到的JPEG图片数据保存在sJpegPicBuffer 缓冲区里。抓图功能和抓图分辨率需要设

31、备支持,IPC 设备一般只支持当前视频分辨率的抓取。4云台控制操作对IPC的操作,包括左、右、上、下移动等。1)云台控制操作(需先启动图像预览)接口:NET_DVR_PTZControl函 数: BOOL NET_DVR_PTZControl(LONG lRealHandle,DWORD dwPTZCommand,DWORD dwStop)参 数: inlRealHandle NET_DVR_RealPlay_V40 的返回值indwPTZCommand 云台控制命令indwStop 云台停止动作或开始动作:0- 开始,1- 停止返回值: TRUE 表示成功,FALSE 表示失败。接口返回失败请调用NET_DVR_GetLastError 获取错误码,通过错误码判断出错原因。说 明: 对云台实施的每一个动作都需要调用该接口两次,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1