工具/软件:
尊敬的专家:
我们之前建立了图像数据链路:4 个摄像头->串行器/解串器->捕获 (csi0-Rx)-> CSI-TX
现在、我们只想替换 CSI-Rx 接口、并将其从 csi0-rx 更改为 csi2-rx。
我已修改 Capture parameters。 “instId"和“和“chInstMap"均“均已从 0 更改为 2。
#define CAPTURE_ERROR_FRAME_TIME_WAIT 100 //ms
#define NUM_CAPT_CHANNELS_TOTAL (4u)
#define NUM_CAPT_INST (1u)
#define CSI_INST_PORT_0 (0u)
#define CSI_INST_PORT_1 (1u)
#define CSI_INST_PORT_2 (2u)
static void set_capture_default_params(CaptureObj *captureObj, vx_int32 width, vx_int32 height, vx_int32 numCh)
{
vx_uint32 loop_id, instIdx, chIdx;
/* Capture initialization */
tivx_capture_params_init(&captureObj->params);
/* capture will dalay 2000ms if no frame available */
captureObj->params.timeout = CAPTURE_ERROR_FRAME_TIME_WAIT;
captureObj->params.timeoutInitial = CAPTURE_ERROR_FRAME_TIME_WAIT;
captureObj->params.numInst = NUM_CAPT_INST;
captureObj->params.numCh = NUM_CAPT_CHANNELS_TOTAL;
chIdx = 0U;
for (instIdx = 0U; instIdx < NUM_CAPT_INST; instIdx++)
{
captureObj->params.instId[instIdx] = CSI_INST_PORT_2;
captureObj->params.instCfg[instIdx].laneBandSpeed = TIVX_CAPTURE_LANE_BAND_SPEED_1350_TO_1500_MBPS; /* used for AVM, 4CH-1280*720@25Fps */
//captureObj->params.instCfg[instIdx].laneBandSpeed = TIVX_CAPTURE_LANE_BAND_SPEED_560_TO_640_MBPS;
captureObj->params.instCfg[instIdx].enableCsiv2p0Support = (uint32_t)vx_true_e;
captureObj->params.instCfg[instIdx].numDataLanes = 4U;
for (loop_id = 0U; loop_id < captureObj->params.instCfg[instIdx].numDataLanes; loop_id++)
{
captureObj->params.instCfg[instIdx].dataLanesMap[loop_id] = (loop_id + 1u);
}
for (loop_id = 0U; loop_id < numCh; loop_id++)
{
captureObj->params.chInstMap[chIdx] = CSI_INST_PORT_2;
chIdx++;
}
/* set the order of cam channel: 0-front, 1-rear, 2-left, 3-right */
captureObj->params.chVcNum[0] = 0;
captureObj->params.chVcNum[1] = 1;
captureObj->params.chVcNum[2] = 2;
captureObj->params.chVcNum[3] = 3;
}
captureObj->numCH = NUM_CAPT_CHANNELS_TOTAL;
captureObj->img_info.width = width;
captureObj->img_info.height = height;
captureObj->img_info.dataFormat = VX_DF_IMAGE_UYVY;
strcpy(captureObj->name_Target, TIVX_TARGET_CAPTURE1);
strcpy(captureObj->name_NodeObj, "CaptureNode");
}
但是、在运行捕获节点后、发现 vxVerifyGraph 接口卡滞
当我将捕获的参数从 2 更改回 0 时、不再出现此问题。
此外,我检查了 vxVerifyGraph 接口卡住的位置,它位于 ownGraphNodeKernelInit 部分。
您能帮我检查捕获参数中是否有我修改过的遗漏吗?
谢谢!

