我需要使用给我的一些值配置点灰色相机 (FL3-U3-32S2C)。出于某种原因,除了图像大小之外,一切都很完美。
例如,以下(非常简化的)代码完美运行:
#include <dc1394/dc1394.h>
int main(int argc, char *argv[])
{
dc1394_t * d;
dc1394camera_t * camera;
dc1394camera_list_t * list;
// Get the camera
d = dc1394_new ();
if (!d) return 1;
dc1394_camera_enumerate (d, &list);
camera = dc1394_camera_new (d, list->ids[0].guid);
dc1394_camera_free_list (list);
// Configure
dc1394_video_set_mode(camera, DC1394_VIDEO_MODE_FORMAT7_4);
dc1394_format7_set_image_size(camera, DC1394_VIDEO_MODE_FORMAT7_4, 640, 480);
dc1394_camera_free(camera);
dc1394_free (d);
return 0;
}
但是,如果我dc1394_format7_set_image_size(camera, DC1394_VIDEO_MODE_FORMAT7_4, 1040, 776);
改为 make,程序会引发以下错误
libdc1394 错误:Format_7 Error_flag_1 已设置:在 _dc1394_v130_handshake(format7.c,第 126 行)中:无效的图像位置、大小、颜色编码或 ISO 速度
libdc1394 错误:Format_7 Error_flag_1 已设置:在 dc1394_format7_set_image_size(format7.c,第 482 行)中:F7 握手失败
这很有趣,因为format7_4
根据相机的技术文档(第 8.4.6 节),它是受支持的尺寸。
所以我有点卡住了,有人知道握手失败的原因吗?:/