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.

8127 display HDMI problem

dear  everyone

i meet a problem when i want to display HDMI ,the link is  capture-->display  ,the code is showed below:

===================================================================================

Void MultiCh_createHdmi()
{

 CaptureLink_CreateParams ipcFrameCapturePrm;

 DisplayLink_CreateParams displayPrm;
 gipcFrameCaptureId = SYSTEM_LINK_ID_CAPTURE;
 gVdisModuleContext.displayId[0] = SYSTEM_LINK_ID_DISPLAY_0;
 
 gVcapModuleContext.captureId = gipcFrameCaptureId;

    MultiCh_detectBoard();
 
    System_linkControl(SYSTEM_LINK_ID_M3VPSS,
                       SYSTEM_M3VPSS_CMD_RESET_VIDEO_DEVICES, NULL, 0, TRUE);
 

    /*Set Capture link info*/
    ipcFrameCapturePrm.isPalMode = FALSE;
    ipcFrameCapturePrm.numVipInst = 1;

    ipcFrameCapturePrm.vipInst[0].vipInstId = 0;
    ipcFrameCapturePrm.vipInst[0].videoDecoderId = 0;
    ipcFrameCapturePrm.vipInst[0].inDataFormat =6;
    ipcFrameCapturePrm.vipInst[0].standard = SYSTEM_STD_1080I_60;
    ipcFrameCapturePrm.vipInst[0].numOutput = 1;
    ipcFrameCapturePrm.vipInst[0].Width =1920;
   ipcFrameCapturePrm.vipInst[0].Height =1080;
    ipcFrameCapturePrm.vipInst[0].pitch[0] =1920;
    ipcFrameCapturePrm.vipInst[0].pitch[1] =1920;
    ipcFrameCapturePrm.vipInst[0].pitch[2] = 0;
 
    ipcFrameCapturePrm.vipInst[0].outParams[0].dataFormat =SYSTEM_DF_YUV422I_YUYV;//7;//
    ipcFrameCapturePrm.vipInst[0].outParams[0].scEnable = 0;
    ipcFrameCapturePrm.vipInst[0].outParams[0].scOutWidth =4000;
    ipcFrameCapturePrm.vipInst[0].outParams[0].scOutHeight =2368;
    ipcFrameCapturePrm.vipInst[0].outParams[0].outQueId = 0;
    ipcFrameCapturePrm.outQueParams[0].nextLink=gVdisModuleContext.displayId[0];
    ipcFrameCapturePrm.tilerEnable = FALSE;
    ipcFrameCapturePrm.rtStatPrintEnable = 1;
    ipcFrameCapturePrm.numAudioChannels = 0;
    ipcFrameCapturePrm.fakeHdMode = FALSE;

    ipcFrameCapturePrm.enableSdCrop = FALSE;
    ipcFrameCapturePrm.doCropInCapture = FALSE;
    ipcFrameCapturePrm.numBufsPerCh = 4;
    ipcFrameCapturePrm.numExtraBufs = 0;

 

 

  MULTICH_INIT_STRUCT(DisplayLink_CreateParams,displayPrm);
  displayPrm.inQueParams[0].prevLinkId = gipcFrameCaptureId;
  displayPrm.inQueParams[0].prevLinkQueId = 0;
  displayPrm.numInputQueues=1;
  displayPrm.activeQueue=0;
  displayPrm.displayRes =SYSTEM_STD_1080I_60;// gVdisModuleContext.vdisConfig.deviceParams[VDIS_DEV_HDMI].resolution;
  displayPrm.displayId  = DISPLAY_LINK_DISPLAY_BP0;


    System_linkCreate(gipcFrameCaptureId, &ipcFrameCapturePrm,
                      sizeof(ipcFrameCapturePrm));
 
  System_linkCreate(gVdisModuleContext.displayId[0], &displayPrm,
                      sizeof(displayPrm));
 ===================================================================

and i meet a assert like this :

======================================================

->  [m3vpss ] No End Nodes
->  [m3vpss ] 7
->  [m3vpss ] (DisplayLink_drvDisplayCreate,1092),pObj->displayCreateStatus.dispWidth=0,pObj->displayCreateStatus.dispHeight=0,createStatus->retVal=-1
->  [m3vpss ]  4206: Assertion @ Line: 1093 in links_m3vpss/display/displayLink_drv.c: pObj->displayHndl != NULL : failed !!!

=====================================================

i follow the code , found the error is from

retVal = Dc_getPathInfo(instObj->dcHandle, &instObj->dcPathInfo);  

the retval is -1

into the function

========================================================

 if (TRUE == dcIsLastNode(currNode, TRUE))
            {
             Vps_printf("LastNode\n");
                outputNodes[numNodes] = currNode->nodeNum;
                numNodes ++;
            }

            /* dcGetNextTraversedNode */
            currNode = dcGetNextTraversedNode(TRUE);
        }

        /* If the current input is not connected to any of the VENCs/output
         * node or enableInputPaths returns error, return error. */
        if (0u == numNodes)
        {
         Vps_printf("No End Nodes\n");
            GT_2trace(DcTrace,
                      GT_ERR,
                      "%s: No End Nodes %d",
                      __FUNCTION__,
                      numNodes);
            retVal = FVID2_EFAIL;

=======================================

and i don't what to do next ,can anyone give me some points? thanks