他的回复:
根据回调的消息类型不同,这三个回调函数首先可以分为两类:设置SDK机制本身相关的事件回调:IVS_PU_SetAlarmEnventCallBack属于此类,该接口是设置SDK 事件回调函数,回调函数中回调的是SDK机制类的一些事件,事件来源于SDK机制本身,如媒体断流,前端设备离线,SDK消息发送接收错误等;设置相机业务相关的告警信息回调:IVS_PU_AlarmInfoStatesCallBack 和IVS_PU_AlarmInfoStatesCallBack_V20 属于此类,这两个接口是设置相机告警消息回调函数,回调函数中回调的是和相机业务相关的一些告警消息,告警消息来源于相机:如人脸检测,拌线检测等。 IVS_PU_AlarmInfoStatesCallBack_V20和IVS_PU_AlarmInfoStatesCallBack都是用于设置相机业务相关的告警信息回调函数,IVS_PU_AlarmInfoStatesCallBack_V20是IVS_PU_AlarmInfoStatesCallBack的加强版,差别主要在于设置的回调函数原型不同,分别是typedef LONG(CALLBACK *pfGetAlarmInfoCallBack_V20)(LPPU_ALARM_REPORT_S pstAlarmReport, VOID *pAlarmInfo, ULONG ulAlarmInfoSize, VOID *pUsrData);和typedef LONG(CALLBACK *pfGetAlarmInfoCallBack)(LPPU_ALARM_REPORT_S pstAlarmReport, VOID *pUsrData); 可以看到前者设置的回调函数原型比后者多出了VOID *pAlarmInfo, ULONG ulAlarmInfoSize两个参数;前者设置的回调接口除了会回调基本的告警信息(LPPU_ALARM_REPORT_S pstAlarmReport),还会回调具体的告警信息(VOID *pAlarmInfo)。当前该接口主要针对微卡款型的车牌抓拍结果回调,当回调的基本告警消息(LPPU_ALARM_REPORT_S pstAlarmReport)中enAlarmType为PU_LPR_CAPTURE_RES或PU_MANUAL_LPR_CAPTURE_RES时,可将回调的具体告警信息(VOID *pAlarmInfo)转换为LPR_CAPTURE_RES_S *类型,获取全景图,车牌小图以及其他车辆及车牌属性信息。