:
PB_OPCODE_SAVE_CLIP<<",";
_basic.rightCode=ss.str();
m_pImpl->SetBasicInfo(_basic);
2.1.2.2获取基本参数
接口名称
GetBasicInfo
接口描述
获取基本参数
接口原型
PB_RET_TYPEGetBasicInfo(SPB_BASIC_INFO&stBasicInfo)
输入
SPB_BASIC_INFO&stBasicInfo:
基本参数
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.2.3查询录像
接口名称
SearchRecord
接口描述
查询录像
接口原型
PB_RET_TYPESearchRecord(
constSPB_RCD_SEARCH_PARAM&stParam,
boolbClean=true)
输入
stParam:
查询录像的参数
返回值
PB_RET_TYPE:
0成功,其他失败
备注
1.支持向VMS获取VMR地址,再进行录像查询。
2.支持直接向VRM查询。
3.支持NCG级联录像查询。
4.支持KMS录像查询。
示例
SPB_RCD_SEARCH_PARAM_param;
_param.tBegin=TimeStringToNumber("2015-01-13T00:
00:
00.000Z");
_param.tEnd=TimeStringToNumber("2015-01-13T23:
59:
59.000Z");
_param.rcdType=RT_ALL;
_param.pRcdFun=CB_SearchResult;
_param.pRcdUser=this;
m_pImpl->SearchRecord(_param);
2.1.2.4设置录像信息
接口名称
SetRecordInfo
接口描述
设置录像信息
接口原型
PB_RET_TYPESetRecordInfo(
constRECORD_SEARCH_RESULT_MAP&records,
boolbClean=false)
输入
records:
录像信息
boolbClean:
清空原有录像
返回值
PB_RET_TYPE:
0成功,其他失败
备注
实际是追加录像片段,如果片段的起始时间一样,则会被覆盖。
示例
2.1.2.5获取录像信息
接口名称
GetRecordInfo
接口描述
获取录像信息
接口原型
PB_RET_TYPEGetRecordInfo(RECORD_SEARCH_RESULT_MAP&records)
输入
records:
录像信息
返回值
PB_RET_TYPE:
0成功,其他失败
备注
获取的是内部所有的录像片段信息
示例
2.1.2.6开始回放
接口名称
StartPlay
接口描述
开始回放
接口原型
PB_RET_TYPEStartPlay(
time_ttPlay=playback:
:
INVALID_TIME_VALUE,
time_ttEnd=playback:
:
INVALID_TIME_VALUE)
输入
tPlay:
可指定开始播放的时间,不指定则使用SetRecordInfo中得到的最早时间
返回值
PB_RET_TYPE:
0成功,其他失败
备注
内部必须要有录像片段才能回放,支持:
1.调用SetRecordInfo接口设置录像信息,直接播放。
2.外部SearchRecord接口查询录像,等到查询回调返回后,才可以播放。
示例
2.1.2.7停止回放
接口名称
StopPlay
接口描述
停止回放
接口原型
PB_RET_TYPEStopPlay(BOOLbClearRcd=FALSE)
输入
bClearRcd:
是否清空录像片段
返回值
PB_RET_TYPE:
0成功,其他失败
备注
内部状态会被重置,下次播放必须要重新SetBasicInfo。
示例
2.1.2.8挂起播放
接口名称
PendingPlay
接口描述
挂起播放
接口原型
PB_RET_TYPEPendingPlay(void)
输入
void
返回值
PB_RET_TYPE:
0成功,其他失败
备注
仅停止播放,但不重置内部状态,可以直接重新播放。
示例
2.1.2.9筛选录像类型
接口名称
FilterPlayType
接口描述
对录像类型进行筛选
接口原型
PB_RET_TYPEFilterPlayType(unsignedintrecType)
输入
recType:
筛选后允许播放的录像类型
返回值
PB_RET_TYPE:
0成功,其他失败
备注
播放过程中不匹配的录像片段类型直接跳过。
示例
2.1.3参数设置
2.1.3.1设置窗口序号
接口名称
SetIndex
接口描述
设置窗口序号
接口原型
PB_RET_TYPESetIndex(WND_INDEXwndIndex)
输入
wndIndex:
窗口序号
返回值
PB_RET_TYPE:
0成功,其他失败
备注
序号从0开始,默认为-1。
示例
2.1.3.2获取窗口序号
接口名称
GetWndIndex
接口描述
获取窗口序号
接口原型
WND_INDEXGetWndIndex(void)const
输入
void
返回值
WND_INDEX:
窗口序号
备注
示例
2.1.3.3配置常用参数
接口名称
Configurate
接口描述
配置常用参数
接口原型
PB_RET_TYPEConfigurate(constPB_CONFIGURATION&cfg)
输入
cfg:
常用参数
返回值
PB_RET_TYPE:
0成功,其他失败
备注
如果不配置使用默认的,则有的可能为非法值,导致操作失效。
示例
PB_CONFIGURATIONcfg;
cfg.toolbarShowMode=TBSM_ALWAYS_SHOW;
cfg.statusbarShowMode=TBSM_AUTO;
cfg.toolbarBtns.push_back(BTN_ID_INFO);
cfg.toolbarBtns.push_back(BTN_ID_SOUND);
cfg.toolbarBtns.push_back(BTN_ID_VOLUMN);
cfg.toolbarBtns.push_back(BTN_ID_SNAP_ONE);
cfg.toolbarBtns.push_back(BTN_ID_SNAP_MULTI);
cfg.toolbarBtns.push_back(BTN_ID_SAVE_CLIP);
cfg.toolbarBtns.push_back(BTN_ID_ZOOM);
cfg.clipCfg.packSize=512;
m_pImpl->Configurate(cfg);
2.1.3.4设置性能参数
接口名称
SetPerformance
接口描述
设置性能参数
接口原型
voidSetPerformance(constPB_PERFORMACE_PARAM&stPerform)
输入
stPerform:
播放性能参数
返回值
void
备注
下次播放时生效
示例
2.1.3.5设置磁盘状态
接口名称
SetDiskState
接口描述
设置磁盘状态
接口原型
PB_RET_TYPESetDiskState(intnOperation,intnDiskState)
输入
nOperation:
磁盘空间对应操作的位置(见PLAYBACK_DISK_OPERATION)
nDiskState:
磁盘空间的状态(见DISK_FREE_SPACE_STATE)
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.4播放控制
2.1.4.1获取播放端口
接口名称
GetPlayPort
接口描述
获取播放端口
接口原型
intGetPlayPort(void)const
输入
void
返回值
int:
播放端口
备注
并不是播放库的播放端口,而是vag_playctrl的句柄。
示例
2.1.4.2暂停/恢复播放
接口名称
Pause
接口描述
暂停/恢复播放
接口原型
PB_RET_TYPEPause(BOOLbPause=TRUE)
输入
bPause:
是否暂停
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.4.3单帧前进
接口名称
ForwardOneFrame
接口描述
单帧前进
接口原型
PB_RET_TYPEForwardOneFrame(void)
输入
void
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.4.4单帧后退
接口名称
BackwardOneFrame
接口描述
单帧后退
接口原型
PB_RET_TYPEBackwardOneFrame(void)
输入
void
返回值
PB_RET_TYPE:
0成功,其他失败
备注
仅海康播放库支持,切换到文件播放模式,在播放缓冲中单帧后退,到了文件头则无法再操作。
示例
2.1.4.5打开/关闭声音
接口名称
OpenSound
接口描述
打开/关闭声音
接口原型
PB_RET_TYPEOpenSound(BOOLbOpen=TRUE)
输入
bOpen:
是否打开声音
返回值
PB_RET_TYPE:
0成功,其他失败
备注
在1倍速播放时才可以操作声音。
示例
2.1.4.6设置音量大小
接口名称
SetSoundVolumn
接口描述
设置音量大小
接口原型
PB_RET_TYPESetSoundVolumn(intnVolumn)
输入
nVolumn:
音量大小,0~1000
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.4.7获取音量大小
接口名称
GetSoundVolumn
接口描述
获取音量大小
接口原型
intGetSoundVolumn(void)
输入
void
返回值
int:
音量大小,0~1000
备注
示例
2.1.4.8切换到倒放/正放
接口名称
Reverse
接口描述
切换到倒放/正放
接口原型
PB_RET_TYPEReverse(BOOLbBackward=TRUE)
输入
bBackward:
是否倒放
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.4.9自适应/拉伸显示
接口名称
Adaptive
接口描述
自适应/拉伸显示
接口原型
PB_RET_TYPEAdaptive(BOOLbAdaptive=TRUE)
输入
bAdaptive:
是否自适应显示
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.4.10设置回放速度
接口名称
SetSpeed
接口描述
设置回放速度
接口原型
PB_RET_TYPESetSpeed(intnSpeed)
输入
nSpeed:
回放速度
返回值
PB_RET_TYPE:
0成功,其他失败
备注
回放速度,取值范围参见PB_STREAM_SPEED。
示例
2.1.4.11定位到指定时间点
接口名称
SeekToTime
接口描述
定位到指定时间点
接口原型
PB_RET_TYPESeekToTime(time_ttSeek)
输入
tSeek:
定位时间点
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.4.12抓图
接口名称
SnapShot
接口描述
抓图
接口原型
PB_RET_TYPESnapShot(longlId,BOOLbContinous)
输入
lId:
操作ID,一次操作需要有一个ID,用于在回调中反馈
bContinous:
TRUE表示连续抓图,FALSE表示单张抓图
返回值
PB_RET_TYPE:
0成功,其他失败
备注
通过抓图回调返回。
示例
2.1.4.13进入/退出电子放大
接口名称
DigitalZoom
接口描述
进入/退出电子放大
接口原型
PB_RET_TYPEDigitalZoom(void)
输入
void
返回值
PB_RET_TYPE:
0成功,其他失败
备注
只能在UI线程中调用。
示例
2.1.5注册回调
2.1.5.1注册状态通知回调
接口名称
RegStateChgCB
接口描述
注册状态通知回调
接口原型
PB_RET_TYPERegStateChgCB(PB_STATECHG_CBpfun,void*pUser)
输入
pfun:
回调函数
pUser:
用户数据
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.5.2注册操作回调
接口名称
RegActionCB
接口描述
注册操作回调
接口原型
voidRegActionCB(PB_ACTION_CBpFun,void*pUser)
输入
pFun:
回调函数
pUser:
用户数据
返回值
void
备注
主要用于记录操作日志
示例
示例
2.1.5.3注册播放窗口画图回调
接口名称
RegPlayWndDrawCB
接口描述
注册播放窗口画图回调
接口原型
voidRegPlayWndDrawCB(PB_PLAYWND_DRAW_CBpFun,void*pUser)
输入
pFun:
回调函数
pUser:
用户数据
返回值
void
备注
示例
2.1.5.4注册窗口消息回调
接口名称
RegWindowMsg
接口描述
注册窗口消息回调
接口原型
PB_RET_TYPERegWindowMsg(PB_WNDMSG_CBpfun,longlUser)
输入
pfun:
回调函数
pUser:
用户数据
返回值
PB_RET_TYPE:
0成功,其他失败
备注
示例
2.1.5.5注册窗口消息回调
接口名称
RegWindowMsgEx
接口描述
注册窗口消息回调
接口原型
PB_RET_TYPERegWindowMsgEx(PB_WNDMSG_CB_EXpfun,longlUser)
输入
pfun:
回调函数
pUser:
用户数据
返回值
PB_RET_TYPE:
0成功,其他失败
备注
回调函数带有窗口序号。
示例
2.1.6获取状态
2.1.6.1获取播放时间
接口名称
GetPlayerTime
接口描述
获取播放时间
接口原型
time_tGetPlayerTime(void)
输入
void
返回值
time_t:
播放时间,无效时为-1
备注
并不总是有效,原因如下:
1、此接口不是直接向播放库获取时间,而是通过塞数据线程更新播放时间。
2、有些码流获取的播放时间无效,例如大华设备码流、ehome设备码流。
示例
2.1.6.2获取播放速度
接口名称
GetPlaySpeed
接口描述
获取播放速度
接口原型
intGetPlaySpeed(void)
输入
void
返回值
int:
播放速度值,参见PLAYBACK_SPEED
备注
示例
2.1.6.3是否处于空闲状态
接口名称
IsIdle
接口描述
播放窗口是否处于空闲状态
接口原型
BOOLIsIdle(void)const
输入
void
返回值
BOOL:
TRUE是,FALSE否
备注
StopPlay之后会处于空闲状态
示例
2.1.6.4是否处于挂起状态
接口名称
IsPending
接口描述
是否处于挂起状态
接口原型
BOOLIsPending(void)const
输入
void
返回值
BOOL:
TRUE是,FALSE否
备注
PendingPlay之后会处于挂起状态
示例
2.1.6.5是否有录像信息
接口名称
HasRecords
接口描述
是否有录像信息
接口原型
BOOLHasRecords(void)
输入
void
返回值
BOOL:
TRUE有,FALSE没有
备注
示例
2.1.6.6指定时间范围内是否有录像信息
接口名称
HasRecords
接口描述
指定时间范围内是否有录像信息
接口原型
BOOLHasRecords(time_ttSta,time_ttEnd)
输入
tSta:
起始时