jgqwhucs 发表于 2019-6-10 19:27:54

Linux+OK6818+OV5640+OK5645如何同时录像?

我想两个摄像头同时启动录像,我将用户配置修改如下,        v4l2_scheme.useClipper0   = true;
        v4l2_scheme.useDecimator0 = true;
        v4l2_scheme.useMlc0Video= true;


        v4l2_scheme.useClipper1   = true;
        v4l2_scheme.useDecimator1 = true;
        v4l2_scheme.useMlc0Video= true;

不能同时录像,但是如果useDecimator0 和useDecimator1单独配置为true的话,相应的摄像头可以录像。
请问谁碰到过这种问题没?

Xu.Zhizhuang 发表于 2019-6-11 09:31:48

这样看的话,应该是两个摄像头不能同时使用

jgqwhucs 发表于 2019-6-11 09:36:16

从板子设计的话,设计两个摄像头接口,而不能同时浏览的话,感觉这种双摄像头设计有点多余,是驱动不支持还是硬件不支持啊

jgqwhucs 发表于 2019-6-11 09:37:55

从官方的下面代码看,感觉是支持两个摄像头的,是不是还有其它的地方需要配置
int V4l2NexellPrivate::linkDefault()
{
    int ret;

    if (SubdevUsage.useSensor0) {
      if (CameraInfo.IsMIPI) {
            // link sensor0 -> mipicsi
            if (!SubdevUsage.useMipiCSI) {
                ALOGE("%s: invalid SubDevUsageScheme!!!, sensor0 is mipi, but mipi not included", __func__);
                return -EINVAL;
            }
            ret = link(Sensor0, MipiCSI);
            if (ret) {
                ALOGE("%s: failed to link Sensor0 to MipiCSI", __func__);
                return ret;
            }
            ret = link(MipiCSI, Clipper0);
            if (ret) {
                ALOGE("%s: failed to link MipiCSI to Clipper0", __func__);
                return ret;
            }
      } else {
            ret = link(Sensor0, Clipper0);
            if (ret) {
                ALOGE("%s: failed to link Sensor0 to Clipper0", __func__);
                return ret;
            }
      }
    }

    if (SubdevUsage.useSensor1) {
      if (CameraInfo.IsMIPI) {
            // link sensor1 -> mipicsi
            if (!SubdevUsage.useMipiCSI) {
                ALOGE("%s: invalid SubDevUsageScheme!!!, sensor1 is mipi, but mipi not included", __func__);
                return -EINVAL;
            }
            ret = link(Sensor1, MipiCSI);
            if (ret) {
                ALOGE("%s: failed to link Sensor1 to MipiCSI", __func__);
                return ret;
            }
            ret = link(MipiCSI, Clipper1);
            if (ret) {
                ALOGE("%s: failed to link MipiCSI to Clipper1", __func__);
                return ret;
            }
      } else {
            ret = link(Sensor1, Clipper1);
            if (ret) {
                ALOGE("%s: failed to link Sensor1 to Clipper1", __func__);
                return ret;
            }
      }
    }

    if (UsageScheme.useDecimator0) {
      ret = link(Clipper0, Decimator0);
      if (ret)
            return ret;
    }

    if (UsageScheme.useDecimator1) {
      ret = link(Clipper1, Decimator1);
      if (ret)
            return ret;
    }

    return 0;
}

Xu.Zhizhuang 发表于 2019-6-11 10:05:44

jgqwhucs 发表于 2019-6-11 09:36
从板子设计的话,设计两个摄像头接口,而不能同时浏览的话,感觉这种双摄像头设计有点多余,是驱动不支持还 ...

两个摄像头类似于手机的前摄和后摄

jgqwhucs 发表于 2019-6-12 09:19:00

我用的linux
        v4l2_scheme.useClipper0   = true;
        v4l2_scheme.useDecimator0 = true;

        v4l2_scheme.useClipper1   = false;
        v4l2_scheme.useDecimator1 = false;

MIPI的摄像头可以正常采集和显示,但是将v4l2_scheme.useDecimator1 =true 设置后MIPI摄像头采集的数据有问题,图像显示的是DVP摄像头的,而且卡住了,感觉采集侧有冲突

jgqwhucs 发表于 2019-6-12 09:20:24

Xu.Zhizhuang 发表于 2019-6-11 10:05
两个摄像头类似于手机的前摄和后摄

我用的Linux,发现MIPI-CSI采集和DVP采集有冲突,同时开启,CSI视频显示的是DVP摄像头图像,且是停顿的
页: [1]
查看完整版本: Linux+OK6818+OV5640+OK5645如何同时录像?