MWCapture SDK 中提供的采集时拼接多通道画面方法
- 根据拼接画面分辨率以及数量分配缓冲帧内存 buffer;
- 如果需要同步视频画面,则需要开启帧同步判断线程;
- 使用 MWCaptureVideoFrameToVirtualAddressEx() 采集各通道视频帧数据;
- 如果同步视频画面,需要使用 MWRegulateDeviceTime() 校准各个通道时钟;
采集时同步多通道画面方法
- 在采集线程之外开启帧同步判断线程;
- 判断各通道信号状态,对有信号的通道使用 MWSetDeviceTime() 进行时钟同步;
- 比对各通道获取的帧信息,如果在限值范围内,则置通道掩码为 1;
综上
- 缓冲 buffer 分配的是一块比较大的内存,每个通道在buffer中都有对应的目标矩形位置(由 pRectDest 指定);
- 实现画面的采集时拼接,需要使用 MWCaptureVideoFrameToVirtualAddressEx() 将各通道采集到的帧指定在缓冲buffer的不同位置。
- 帧同步需要以通道 A 采集到的帧时间作为参考值,设定参考范围,其他通道采集帧时间在此范围内,则置通道掩码为 1;采集线程根据掩码值采集同步的帧
- 同步多通道画面时,需要每隔一段时间使用 MWRegulateDeviceTime() 进行校准,使得各通道时钟同步。
示例 Examples \ Applications \ XICaptureQuad 中有详细的调用示范。