我有一个 PTGrey FL3-U3-13E4C-C USB 3 相机。我能够从 PTGrey 提供的默认代码读取和存储单个相机的图像。
但是,当我尝试运行 MultipleCameraEx 以在连接了 2 个摄像头的情况下进行测试时,我收到了同步启动失败错误。
我尝试手动将摄像头数量设置为 2 并在没有 for 循环的情况下运行代码,对于 2 个摄像头我仍然遇到相同的错误。
我收到以下错误。
FlyCapture2库版本:2.10.3.266 应用构建日期:2017 年 4 月 8 日 17:45:42
检测到的摄像头数量:2
* 相机信息 * 序列号 - 16362359 相机型号-Flea3 FL3-U3-13E4C 相机供应商 - Point Grey Research 传感器 - E2v EV76C560(1/1.8"彩色 CMOS) 分辨率 - 1280x1024 固件版本 - 2.15.3.3 固件构建时间 - 2015 年 7 月 29 日星期三 16:41:55
* 相机信息 * 序列号 - 16362353 相机型号-Flea3 FL3-U3-13E4C 相机供应商 - Point Grey Research 传感器 - E2v EV76C560(1/1.8"彩色 CMOS) 分辨率 - 1280x1024 固件版本 - 2.15.3.3 固件构建时间 - 2015 年 7 月 29 日星期三 16:41:55
错误跟踪: 来源:IidcCameraInternal.cpp(469) 内置:2016 年 10 月 20 日 20:17:21 - 启动等时流时出错。 +-> 来自:Iso.cpp(2046) 内置:2016 年 10 月 20 日 20:16:34 - 同步启动失败。错误:0x2。
最佳答案
如果您在 Linux 下开发,您的问题可能与分配给 USB 子系统的最大可用内存量有关,该内存量太小(这就是我的问题的原因!)。 p>
要使用多个摄像头,usbcore 变量 usbfs_memory_mb
应该设置得足够大 (例如 1024)。就我而言,即使只有一台 Point Grey Blackfly BFLY-U3-23S6C 相机,分配的默认缓冲区(在我运行 Ubuntu 16.04 LTS 的机器上为 16 个) 也太小了。
为此使用
$ sudo modprobe usbcore usbfs_memory_mb=1024
或
$ sudo sh -c 'echo 1024 > /sys/module/usbcore/parameters/usbfs_memory_mb'
更改将在下次重启前有效。
要使更改永久生效,请将 options usbcore usbfs_memory_mb=1024
添加到适当的 /etc/modprobe.d
文件 (例如/etc/modprobe.d/usbcore.conf
).
检查 usbfs_memory_mb
的当前设置使用
$ sudo cat /sys/module/usbcore/parameters/usbfs_memory_mb
关于c++ - 同步启动失败。错误 : 0x2 ;When starting reading from 2 cameras PTGrey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43297480/