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.

About SwMs LINK in the DVRRDK 4.0 version of the problem

I'm going to read yuv data, and then mosaic display。
Read YUV file, channel 0 is 1920*1080, and channel 1 is 640*480
My software version is DVRRDK 4.0.
My LINK is as follows:
Read YUV -> ipcframesouthost -> ipcframesinvpss  -> SW Mosaic -> display
But display only the black box of the mosaic, no video data.

When I was so LINK as follows:
Read YUV -> ipcframesouthost -> ipcframesinvpss -> display.
Video data display.

My key code is as follows:

static Void MultiCh_setIpcFramesOutInQueInfo(System_LinkQueInfo *inQueInfo)
{
    inQueInfo->numCh = 2;

    inQueInfo->chInfo[0].bufType = SYSTEM_BUF_TYPE_VIDFRAME;
    inQueInfo->chInfo[0].dataFormat = SYSTEM_DF_YUV422I_YUYV;
    inQueInfo->chInfo[0].memType    = SYSTEM_MT_NONTILEDMEM;
    inQueInfo->chInfo[0].scanFormat = SYSTEM_SF_PROGRESSIVE;
    inQueInfo->chInfo[0].startX     = 0;
    inQueInfo->chInfo[0].startY     = 0;
    inQueInfo->chInfo[0].width      = 1920;
    inQueInfo->chInfo[0].height     = 1080;
    inQueInfo->chInfo[0].pitch[0]   = 1920*2;
    inQueInfo->chInfo[0].pitch[1]   = 1920*2;
    inQueInfo->chInfo[0].pitch[2]   = 1920*2;

 inQueInfo->chInfo[1].bufType = SYSTEM_BUF_TYPE_VIDFRAME;
    inQueInfo->chInfo[1].dataFormat = SYSTEM_DF_YUV422I_YUYV;
    inQueInfo->chInfo[1].memType    = SYSTEM_MT_NONTILEDMEM;
    inQueInfo->chInfo[1].scanFormat = SYSTEM_SF_PROGRESSIVE;
    inQueInfo->chInfo[1].startX     = 0;
    inQueInfo->chInfo[1].startY     = 0;
    inQueInfo->chInfo[1].width      = 640;
    inQueInfo->chInfo[1].height     = 480;
    inQueInfo->chInfo[1].pitch[0]   = 640*2;
    inQueInfo->chInfo[1].pitch[1]   = 640*2;
    inQueInfo->chInfo[1].pitch[2]   = 640*2;
}


    ipcFramesOutA8Prm.baseCreateParams.noNotifyMode = FALSE;
    ipcFramesOutA8Prm.baseCreateParams.notifyNextLink = TRUE;
    ipcFramesOutA8Prm.baseCreateParams.notifyPrevLink = FALSE;
    ipcFramesOutA8Prm.baseCreateParams.inQueParams.prevLinkId = SYSTEM_LINK_ID_INVALID;
    ipcFramesOutA8Prm.baseCreateParams.inQueParams.prevLinkQueId = 0;
    ipcFramesOutA8Prm.baseCreateParams.numOutQue = 1;
    ipcFramesOutA8Prm.baseCreateParams.outQueParams[0].nextLink = gVdisModuleContext.ipcFramesInVpssFromHostId;
    MultiCh_setIpcFramesOutInQueInfo(&ipcFramesOutA8Prm.inQueInfo);

    ipcFramesInVpssFromA8Prm.baseCreateParams.noNotifyMode = FALSE;
    ipcFramesInVpssFromA8Prm.baseCreateParams.notifyNextLink = TRUE;
    ipcFramesInVpssFromA8Prm.baseCreateParams.notifyPrevLink = TRUE;
    ipcFramesInVpssFromA8Prm.baseCreateParams.inQueParams.prevLinkId = gVdisModuleContext.ipcFramesOutHostId;
    ipcFramesInVpssFromA8Prm.baseCreateParams.inQueParams.prevLinkQueId = 0;
    ipcFramesInVpssFromA8Prm.baseCreateParams.numOutQue = 1;
    ipcFramesInVpssFromA8Prm.baseCreateParams.outQueParams[0].nextLink = gVdisModuleContext.swMsId[0];
 


    swMsPrm[0].swMsInstId[0]        = SYSTEM_SW_MS_SC_INST_DEI_SC_NO_DEI;
    swMsPrm[0].swMsInstId[1]        = SYSTEM_SW_MS_SC_INST_VIP1_SC;
    swMsPrm[0].numSwMsInst          = 2;
    swMsPrm[0].swMsInstStartWin[0]  = 0;
    swMsPrm[0].swMsInstStartWin[1]  = 16;
    swMsPrm[0].enableProcessTieWithDisplay = TRUE;

    VDIS_DEV vdDevId = VDIS_DEV_HDMI;

    swMsPrm[0].inQueParams.prevLinkId     = gVdisModuleContext.ipcFramesInVpssFromHostId;
    swMsPrm[0].inQueParams.prevLinkQueId  = 0;
    swMsPrm[0].outQueParams.nextLink      = gVdisModuleContext.displayId[0];
    swMsPrm[0].numOutBuf                 = 7;

    swMsPrm[0].maxInputQueLen             = SYSTEM_SW_MS_INVALID_INPUT_QUE_LEN;

    swMsPrm[0].maxOutRes              = VSYS_STD_1080P_60;
    swMsPrm[0].initOutRes             = gVdisModuleContext.vdisConfig.deviceParams[VDIS_DEV_HDMI].resolution;
       
    if(tilerEnable)
        swMsPrm[0].lineSkipMode           = FALSE;
    else
        swMsPrm[0].lineSkipMode           = TRUE;

    swMsPrm[0].enableLayoutGridDraw = gVdisModuleContext.vdisConfig.enableLayoutGridDraw;

    MultiCh_swMsGetDefaultLayoutPrm(vdDevId, &swMsPrm[0], FALSE);    /* both from 0-16 chnl */

    displayPrm[0].inQueParams[0].prevLinkId    = gVdisModuleContext.swMsId[0];
    displayPrm[0].inQueParams[0].prevLinkQueId = 0;
    displayPrm[0].displayRes                = swMsPrm[0].initOutRes;


    Read the file, and then send the read data out. The key API is as follows:
      Vdis_putFullVideoFrames(&emptyFrameList);
      Vdis_getEmptyVideoFrames(&emptyFrameList, 0);
   

    How do I solve this problem?