尝试在没有此行的情况下运行您的代码:break;
. 您可能会发现不止一台摄像头,其中一台将是网络摄像头。
请注意,参数 ofcap.open
不仅是摄像头的数量 - 它还定义了您要使用的 API:
摄像头调度方式:index
为摄像头编号。
- 如果给定一个从 0 到 99 的索引,它会尝试找到第一个
- 可以访问给定相机索引的 API。
- 添加 100 的倍数以选择 API(来自 cap.cpp 的评论)
可能性(取自 highgui_c.h):
CV_CAP_ANY =0, // autodetect
CV_CAP_MIL =100, // MIL proprietary drivers
CV_CAP_VFW =200, // platform native
CV_CAP_V4L =200,
CV_CAP_V4L2 =200,
CV_CAP_FIREWARE =300, // IEEE 1394 drivers
CV_CAP_FIREWIRE =300,
CV_CAP_IEEE1394 =300,
CV_CAP_DC1394 =300,
CV_CAP_CMU1394 =300,
CV_CAP_STEREO =400, // TYZX proprietary drivers
CV_CAP_TYZX =400,
CV_TYZX_LEFT =400,
CV_TYZX_RIGHT =401,
CV_TYZX_COLOR =402,
CV_TYZX_Z =403,
CV_CAP_QT =500, // QuickTime
CV_CAP_UNICAP =600, // Unicap drivers
CV_CAP_DSHOW =700, // DirectShow (via videoInput)
CV_CAP_PVAPI =800, // PvAPI, Prosilica GigE SDK
CV_CAP_OPENNI =900, // OpenNI (for Kinect)
CV_CAP_OPENNI_ASUS =910, // OpenNI (for Asus Xtion)
CV_CAP_ANDROID =1000, // Android
CV_CAP_XIAPI =1100, // XIMEA Camera API
CV_CAP_AVFOUNDATION = 1200 // AVFoundation framework for iOS (OS X Lion will have the same API)
可能CV_CAP_AVFOUNDATION = 1200
是您正在寻找的 - 尝试从 1200 开始循环,不要忘记删除break;
,我认为您会找到您正在寻找的。