设备网络SDK开发使用手册

NET_DVR_SetPlayDataCallBack

注册回调函数,捕获录像数据。

BOOL NET_DVR_SetPlayDataCallBack(
  LONG                 lPlayHandle,
  fPlayDataCallBack    cbPlayDataCallBack,
  DWORD                dwUser
);

Parameters

lPlayHandle
[in] 播放句柄,NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
fPlayDataCallBack
[in] 录像数据回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fPlayDataCallBack)(
  LONG      lPlayHandle,
  DWORD     dwDataType,
  BYTE      *pBuffer,
  DWORD     dwBufSize,
  DWORD     dwUser
);

Callback Function Parameters

lPlayHandle
[out] 当前的录像播放句柄
dwDataType
[out] 数据类型
宏定义 宏定义值 含义
NET_DVR_SYSHEAD 1 系统头数据
NET_DVR_STREAMDATA 2 流数据(包括复合流或音视频分开的视频流数据)
NET_DVR_CHANGE_FORWARD 10 码流改变为正放
NET_DVR_CHANGE_REVERSE 11 码流改变为倒放
pBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 缓冲区大小
dwUser
[out] 用户数据

Return Values

TRUE表示成功,FALSE表示失败。接口返回失败请调用NET_DVR_GetLastError获取错误码,通过错误码判断出错原因。

以下是该接口可能返回的错误值

错误类型 错误值 错误信息
NET_DVR_NOERROR 0 没有错误。
NET_DVR_NOINIT 3 SDK未初始化。

Remarks

此函数包括开始和停止用户处理SDK捕获的数据,当回调函数cbPlayDataCallBack设为非NULL值时,表示回调和处理数据;当设为NULL时表示停止回调和处理数据。回调的第一个包是40个字节的文件头,供后续解码使用,之后回调的是压缩的码流。

See Also

NET_DVR_PlayBackByName  NET_DVR_PlayBackByTime

NET_DVR_SetPlaybackResponseCallBack

Reference Interface

扩展接口可见
NET_DVR_SetPlayDataCallBack_V40