SDK实现单路视频图像预览方法
九视电子系列视频采集卡随卡都带有相关视频录播、采集软件,并且也提供完整的SDK二次开发包,供二次开发应用需求。SDK开发包经过多次改版升级,目前非常完善,很多功能都可以直接调用函数,开发上更加方便。
九视系列视频采集卡随卡都带有相关视频录播、采集软件,并且也提供完整的SDK二次开发包,供二次开发应用需求。SDK开发包经过多次改版升级,目前非常完善,很多功能都可以直接调用函数,开发上更加方便。
当用户需要对当前已经开始采集的视频进行预览,其调用流程如下:
根据显示窗口句柄获取显示设备的GUID,XIS_GetMonitorGUIDFromWindow;
创建视频显示设备,XIS_CreateVideoRenderer;
设置图像显示的区域,XIS_SetVideoRendererPosition;
将图像数据绘制到显示设备上,XIS_VideoRendererDrawImage;
在显示设备窗口的WM_PAINT消息响应函数中重新刷新图像,XIS_VideoRendererRepaintRect
在显示设备窗口的WM_MOVE和WM_SIZE消息响应函数中重新设置图像显示区域,XIS_SetVideoRendererPosition;
关闭视频预览直接调用XIS_DestroyVideoRenderer即可。
注意1:如果希望预览采集到的原始图像,可以在XIS_SetVideoCaptureCallback设置的图像数据接收函数中直接调用XIS_VideoRendererDrawImage。
注意2:在创建显示设备时传入的图像格式(色彩空间、图像宽高)需要和绘制到显示设备上的图像数据格式一致。如果绘制的图像数据就是采集的原始图像数据,则需要和采集设备设置的图像格式一致。
示例程序“XILiteCapture”、“XICapture”、“XICaptureQuad”、“DoubleCapture”、“ImageInImage”均有该流程的示例代码。