i want to add the dei link to change the enc resolution,but when i add the dei link ,there is no video output.
so whether somewhere i configured is wrong.
following is my configure:
{ // setting VIP0
pCaptureInstPrm = &capturePrm.vipInst[0];
pCaptureInstPrm->vipInstId = SYSTEM_CAPTURE_INST_VIP0_PORTA;
pCaptureInstPrm->inDataFormat = SYSTEM_DF_YUV422P;
pCaptureInstPrm->standard = SYSTEM_STD_1080P_60;
pCaptureInstPrm->numOutput = 1;
pCaptureOutPrm = &pCaptureInstPrm->outParams[0];
pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV422I_YUYV;
pCaptureOutPrm->scEnable = FALSE;
pCaptureOutPrm->scOutWidth = 0;
pCaptureOutPrm->scOutHeight = 0;
pCaptureOutPrm->outQueId = 0;
}
int chId;
UInt32 nullId;
nullId = SYSTEM_VPSS_LINK_ID_NULL_0;
DeiLink_CreateParams deiPrm[MAX_DEI_LINK];
DeiLink_CreateParams_Init(&deiPrm[0]);
deiPrm[0].inQueParams.prevLinkId = gVcapModuleContext.nsfId[0];//gVcapModuleContext.captureId;
deiPrm[0].inQueParams.prevLinkQueId = 0;
deiPrm[0].outQueParams[1].nextLink = ipcOutVpssId;
deiPrm[0].outQueParams[1^1].nextLink = nullId;
deiPrm[0].enableOut[1] = TRUE;
deiPrm[0].enableOut[1^1] = TRUE;
deiPrm[0].tilerEnable[1] = FALSE;
deiPrm[0].comprEnable = FALSE;
deiPrm[0].setVipScYuv422Format = FALSE;
deiPrm[0].enableDeiForceBypass = TRUE;
deiPrm[0].enableDualVipOut = FALSE;
deiPrm[0].interlacedBypassMode = TRUE;
deiPrm[0].outScaleFactor[1][0].scaleMode = DEI_SCALE_MODE_ABSOLUTE;//DEI_SCALE_MODE_RATIO;DEI_SCALE_MODE_ABSOLUTE
deiPrm[0].outScaleFactor[1][0].ratio.heightRatio.numerator = 1;
deiPrm[0].outScaleFactor[1][0].ratio.heightRatio.denominator = 1;
deiPrm[0].outScaleFactor[1][0].ratio.widthRatio.numerator = 1;
deiPrm[0].outScaleFactor[1][0].ratio.widthRatio.denominator = 1;
deiPrm[0].outScaleFactor[1][0].absoluteResolution.outWidth = 720;
deiPrm[0].outScaleFactor[1][0].absoluteResolution.outHeight = 576;
for (chId=1; chId < DEI_LINK_MAX_CH; chId++)
deiPrm[0].outScaleFactor[1][chId] = deiPrm[0].outScaleFactor[1][0];
System_linkCreate(gVcapModuleContext.deiId[0] , &deiPrm[0], sizeof(deiPrm[0]));