CaptureByTimer
支持的硬件设备:Pro系列采集卡
例子展示的内容:
- 按指定帧率从输入信号中采集视频数据;
- 保存最后一帧的视频数据为.bmp;
- 如果存在多个设备,可以通过命令参数选择采集通道。
调用逻辑:
- 获取版本信息,初始化和枚举设备:MWGetVersion、MWCaptureInitInstance、MWRefreshDevice、MWGetChannelCount;
- 根据设备信息和接口信息筛选支持的设备:MWGetChannelInfoByIndex;
- 打开设备:
- 打开命令参数指定的设备:MWOpenChannel;
- 当命令参数没有指定设备时,默认打开首个可用通道:MWGetDevicePath,MWOpenChannelByPath;
- 开始采集视频:MMWStartVideoCapture;
- 创建Event:MWCreateEvent;
- 注册定时器:MWRegisterTimer;
- 设置时间计划:MWScheduleTimer;
- 等待Event:MWTryWaitEvent、MWWaitEvent;
- 采集视频数据:MWCaptureVideoFrameToVirtualAddressEx;
- 获取当前的采集状态,并释放采集卡资源:MWGetVideoCaptureStatus;
- 重复7、8、9、10,直到最后一帧;
- 保存文件;
- 注销定时器:MWUnregisterTimer;
- 关闭Event:MWCloseEvent;
- 停止采集:MWStopVideoCapture;
- 释放资源和内存:MWCloseChannel,MWCaptureExitInstance。
结果展示:

流程图:
