Hi,
I used the DVR_RDK 3.0 now.
I want to enable tiler for the 90-degree rotation the chain as follow:
capture --> dei1 --> dei2 --> dup ...
Link input scanFormat output scanFormat resolution tilerEnable
Capture Link progressive 2592*1936 False
Dei1 Link progressive progressive 2592*1936 True
Dei2 Link progreesive progressive 1936*2592 False
...
I want to know if the deiLink could be converted progressive input to progressive output.
I set the deiLink params as follow:
/* vpssDeiLink1 param set */
DeiLink_CreateParams_Init(&gDeiPrm1);
gDeiPrm1.inQueParams.prevLinkId = thisObj->vpssCapId;
gDeiPrm1.inQueParams.prevLinkQueId = 0;
gDeiPrm1.outQueParams[DEI_LINK_OUT_QUE_VIP_SC].nextLink = gDeiLinkId2;//thisObj->vpssDupId;
gDeiPrm1.outQueParams[DEI_LINK_OUT_QUE_DEI_SC].nextLink = SYSTEM_LINK_ID_INVALID;
gDeiPrm1.enableOut[DEI_LINK_OUT_QUE_VIP_SC] = TRUE;
gDeiPrm1.enableOut[DEI_LINK_OUT_QUE_DEI_SC] = FALSE;
gDeiPrm1.tilerEnable[DEI_LINK_OUT_QUE_VIP_SC] = FALSE;
gDeiPrm1.comprEnable = FALSE;
gDeiPrm1.setVipScYuv422Format = FALSE;
gDeiPrm1.enableDeiForceBypass = TRUE;
gDeiPrm1.enableLineSkipSc = FALSE;
gDeiPrm1.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][0].scaleMode = DEI_SCALE_MODE_RATIO;
/* VIP Scalar ratio is 1:1 */
gDeiPrm1.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][0].ratio.widthRatio.numerator = 1;
gDeiPrm1.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][0].ratio.widthRatio.denominator = 1;
gDeiPrm1.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][0].ratio.heightRatio.numerator = 1;
gDeiPrm1.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][0].ratio.heightRatio.denominator = 1;
for (chId=1; chId < DEI_LINK_MAX_CH; chId++)
gDeiPrm1.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][chId] = gDeiPrm1.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][0];
/* vpssDeiLink2 param set */
DeiLink_CreateParams_Init(&gDeiPrm2);
gDeiPrm2.inQueParams.prevLinkId = gDeiLinkId1;
gDeiPrm2.inQueParams.prevLinkQueId = DEI_LINK_OUT_QUE_VIP_SC;
gDeiPrm2.outQueParams[DEI_LINK_OUT_QUE_VIP_SC].nextLink = thisObj->vpssDupId;
gDeiPrm2.outQueParams[DEI_LINK_OUT_QUE_DEI_SC].nextLink = SYSTEM_LINK_ID_INVALID;
gDeiPrm2.enableOut[DEI_LINK_OUT_QUE_VIP_SC] = TRUE;
gDeiPrm2.enableOut[DEI_LINK_OUT_QUE_DEI_SC] = FALSE;
gDeiPrm2.tilerEnable[DEI_LINK_OUT_QUE_VIP_SC] = FALSE;
gDeiPrm2.comprEnable = FALSE;
gDeiPrm2.setVipScYuv422Format = FALSE;
gDeiPrm2.enableDeiForceBypass = TRUE;
gDeiPrm2.enableLineSkipSc = FALSE;
gDeiPrm2.outScaleFactor[DEI_LINK_OUT_QUE_DEI_SC][0].scaleMode = DEI_SCALE_MODE_RATIO;
/* VIP Scalar ratio is 1:1 */
gDeiPrm2.outScaleFactor[DEI_LINK_OUT_QUE_DEI_SC][0].ratio.widthRatio.numerator = 1;
gDeiPrm2.outScaleFactor[DEI_LINK_OUT_QUE_DEI_SC][0].ratio.widthRatio.denominator = 1;
gDeiPrm2.outScaleFactor[DEI_LINK_OUT_QUE_DEI_SC][0].ratio.heightRatio.numerator = 1;
gDeiPrm2.outScaleFactor[DEI_LINK_OUT_QUE_DEI_SC][0].ratio.heightRatio.denominator = 1;
for (chId=1; chId < DEI_LINK_MAX_CH; chId++)
gDeiPrm2.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][chId] = gDeiPrm2.outScaleFactor[DEI_LINK_OUT_QUE_VIP_SC][0];
Now, the link could be build, however, the frames would be droped by deiLink.
I open the debug macro "SYSTEM_DEBUG_DEI_RT" in the system_debug.h, and the information as follow:
[m3vpss ] 54433: DEI : Received 1 IN frames !!!
[m3vpss ] 54433: DEI : Skipped 1 IN frames !!!
[m3vpss ] 54433: DEI : Submitting 0 frames !!!
[m3vpss ] 54449: DEI : Submitting 0 frames !!!
[m3vpss ] 54465: DEI : Submitting 0 frames !!!
[m3vpss ] 54481: DEI : Submitting 0 frames !!!
[m3vpss ] 54497: DEI : Submitting 0 frames !!!
[m3vpss ] 54513: DEI : Submitting 0 frames !!!
[m3vpss ] 54529: DEI : Received 1 IN frames !!!
[m3vpss ] 54529: DEI : Skipped 1 IN frames !!!
Should I set the "enableDeiForceBypass" be FALSE?