This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Sensor and Capture test behavior

Hi,

I'm working with the IPNC DM8127 version 3.0.0.5.

I've conducted the following test ( changed the Capture-Display usecase ):

  • Links Chain: [CameraLink]----720x480@30--->[NullLink]
  • CameraLink configuration:

cameraPrm.captureMode = CAMERA_LINK_CAPMODE_ISIF;
cameraPrm.outQueParams[0].nextLink = myNullId;

cameraPrm.numAudioChannels = 0;
cameraPrm.numVipInst = 1;
cameraPrm.tilerEnable = FALSE;

cameraPrm.vsEnable = 0;
pCameraInstPrm = &cameraPrm.vipInst[0];
pCameraInstPrm->vipInstId = SYSTEM_CAMERA_INST_VP_CSI2;
pCameraInstPrm->videoDecoderId = MultiCh_getSensorId(gUI_mcfw_config.sensorId);
pCameraInstPrm->inDataFormat = SYSTEM_DF_YUV420SP_VU;
pCameraInstPrm->sensorOutWidth = 1920;
pCameraInstPrm->sensorOutHeight = 1080;
pCameraInstPrm->standard = SYSTEM_STD_1080P_30;

pCameraInstPrm->numOutput = 1;

/* First stream */
pCameraOutPrm = &pCameraInstPrm->outParams[0];
pCameraOutPrm->dataFormat = SYSTEM_DF_YUV420SP_VU;
pCameraOutPrm->scEnable = FALSE;
pCameraOutPrm->scOutWidth = 720;
pCameraOutPrm->scOutHeight = 480;
pCameraOutPrm->outQueId = 0;
pCameraOutPrm->standard = SYSTEM_STD_NTSC;

/* Second stream */
// pCameraOutPrm = &pCameraInstPrm->outParams[1];
// pCameraOutPrm->dataFormat = SYSTEM_DF_YUV420SP_VU;
// pCameraOutPrm->scEnable = FALSE;
// pCameraOutPrm->scOutWidth = 720;
// pCameraOutPrm->scOutHeight = 480;
// pCameraOutPrm->standard = SYSTEM_STD_PAL;
// pCameraOutPrm->outQueId = 1;

/* 2A config */
cameraPrm.t2aConfig.n2A_vendor = gUI_mcfw_config.n2A_vendor;
cameraPrm.t2aConfig.n2A_mode = gUI_mcfw_config.n2A_mode;

  • The sensor Frame Valid (vsync) pin was connected to oscilloscope channel 1.
  • In cameraLink_drv.c: CameraLink_drvCallback(), I've added code to toggle GPIO pin and connected that to oscilloscope channel 2.
  • I've ran the system and set the oscilloscope to stop on the first few signals.
  • The Results:

It seems that the capture callback does not called only after several sensor frames (6).

Does the sensor frames are dropped/ignored in the capture driver/hardware or queued?
I need to understand what is the exact behavior here.
If the frames are queued it means that the capture introduce a latency into the system - that is unacceptable due to my system requirements to very low latency.
If the frames are lost/dropped/ignored etc.. at start, but keep synced from now on, maybe I can workaround this. 

Any thought on that?

Thanks,

Tal.