我有一个delphi应用程序,以1秒的间隔从网络摄像头拍摄快照。在开发PC上它很好,但在目标平台(基于Atom的平板电脑运行带有不同摄像头的嵌入式Windows 7)上,它非常不稳定。重新启动后第一次运行应用程序时,它通常设法初始化网络摄像头确定并从中获取常规帧,但下次运行应用程序时,无法找到网络摄像头驱动程序,并弹出对话框要我指定视频源,大概是因为它找不到一个..
我的问题:我确定这与视频捕获API调用没有正确的顺序有关,但有没有一个工具(比如wireshark)可以让我嗅探API调用,所以我可以比较嵌入式Windows 7系统到XP开发系统的工作原理是什么?
我正在使用以下来电/留言:
初始化:
capCreateCaptureWindow
WM_CAP_DRIVER_CONNECT
WM_CAP_SET_PREVIEW (false)
WM_CAP_SET_VIDEOFORMAT (as camera after boot is in format I can't handle)
WM_CAP_GET_VIDEOFORMAT
开1秒计时器:
WM_CAP_SET_CALLBACK_FRAME
WM_CAP_GRAB_FRAME_NOSTOP
回调:
WM_CAP_SET_CALLBACK_FRAME (nil)
结束时:
WM_CAP_ABORT
WM_CAP_STOP
WM_CAP_DRIVER_DISCONNECT
答案 0 :(得分:0)
第一步更容易:你是否确定你拥有相同的驱动程序?
对于这个慢速系统,检测 - 开始采集的序列可能太快了。看看介入几秒钟睡眠中间是否有帮助