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.

TDA2EG-17: select link and merge link problem

Part Number: TDA2EG-17

Dear TI experts,

      I have  'two'  lens , and  'one'  panel  

      On the same panel I want to switch the behavior of two different lenses

      (By select links and merge links)

      One lens has Framecopy and the other does not

       Note : Select_1  OutputNum = 2    , Select_2 OutputNum =1 

       This is my chains : IssCapture -> Select_1 -> Framecopy ->Vpe_1 -> Merge_1 -> Select_2 -> Display

                                                        -> Select_1 ->            Vpe_2            -> Merge_1->

     Purpose  => By changing the Input Id of select_2, can see a camera displayed on the screen, Display different cameras according to different IDs

     Question1 : Is there any problem with this chains ? About the way to use merge and select link

      if the way is right

      and This is my linkconnect and select parameter related settings

      Question2 : Currently I can see the lens of chId:0, but how to set it to see the lens of chid:1?

 
 	 //Select_Main Preview  -> IPCOut_IPU1_0_A15_FCP_LinkID
    pMgr->Select_MainPrm.outQueParams[0].nextLink = pMgr->IPCOut_IPU1_0_A15_FCP_LinkID;
    pMgr->IPCOut_IPU1_0_A15_FCP_Prm.inQueParams.prevLinkId = pMgr->Select_MainLinkID;
    pMgr->IPCOut_IPU1_0_A15_FCP_Prm.inQueParams.prevLinkQueId = 0;
	
	//Select_Main Preview  -> VPE_2
	pMgr->Select_MainPrm.outQueParams[1].nextLink = pMgr->VPE_sv_cscLinkID_2;
	pMgr->VPE_sv_cscPrm_2.inQueParams.prevLinkId =	 pMgr->Select_MainLinkID;
	pMgr->VPE_sv_cscPrm_2.inQueParams.prevLinkQueId = 1;
	
	  //IPCOut_IPU1_0_A15_FCP_LinkID -> IPCIn_A15_0_IPU1_FCP_LinkID
    pMgr->IPCOut_IPU1_0_A15_FCP_Prm.outQueParams.nextLink = pMgr->IPCIn_A15_0_IPU1_FCP_LinkID;
    pMgr->IPCIn_A15_0_IPU1_FCP_Prm.inQueParams.prevLinkId = pMgr->IPCOut_IPU1_0_A15_FCP_LinkID;
    pMgr->IPCIn_A15_0_IPU1_FCP_Prm.inQueParams.prevLinkQueId = 0;
    
    //IPCIn_A15_0_IPU1_0_0 -> Alg_FrameCopy
    pMgr->IPCIn_A15_0_IPU1_FCP_Prm.outQueParams.nextLink = pMgr->Alg_FrameCopyLinkID;
    pMgr->Alg_FrameCopyPrm.inQueParams.prevLinkId = pMgr->IPCIn_A15_0_IPU1_FCP_LinkID;
    pMgr->Alg_FrameCopyPrm.inQueParams.prevLinkQueId = 0;
    
    //Alg_FrameCopy -> IPCOut_A15_0_IPU1_0_0
    pMgr->Alg_FrameCopyPrm.outQueParams.nextLink = pMgr->IPCOut_A15_0_IPU1_FCP_LinkID;
    pMgr->IPCOut_A15_0_IPU1_FCP_Prm.inQueParams.prevLinkId = pMgr->Alg_FrameCopyLinkID;
    pMgr->IPCOut_A15_0_IPU1_FCP_Prm.inQueParams.prevLinkQueId = 0;
    
	pMgr->IPCOut_A15_0_IPU1_FCP_Prm.outQueParams.nextLink = pMgr->IPCIn_IPU1_0_A15_FCP_LinkID;
    pMgr->IPCIn_IPU1_0_A15_FCP_Prm.inQueParams.prevLinkId =  pMgr->IPCOut_A15_0_IPU1_FCP_LinkID;
    pMgr->IPCIn_IPU1_0_A15_FCP_Prm.inQueParams.prevLinkQueId = 0;


   //IPCIn_IPU1_0_A15_0_0 -> VPE_sv_csc
    pMgr->IPCIn_IPU1_0_A15_FCP_Prm.outQueParams.nextLink = pMgr->VPE_sv_cscLinkID;
    pMgr->VPE_sv_cscPrm.inQueParams.prevLinkId =  pMgr->IPCIn_IPU1_0_A15_FCP_LinkID;
    pMgr->VPE_sv_cscPrm.inQueParams.prevLinkQueId = 0;

 
 
   //VPE_sv_csc -> Merge
   pMgr->VPE_sv_cscPrm.outQueParams[0].nextLink = pMgr->Merge_LinkID;
   pMgr->MergePrm.inQueParams[0].prevLinkId = pMgr->VPE_sv_cscLinkID;
   pMgr->MergePrm.inQueParams[0].prevLinkQueId = 0; 		
   
   //VPE_2 -> Merge
   pMgr->VPE_sv_cscPrm_2.outQueParams[0].nextLink = pMgr->Merge_LinkID;
   pMgr->MergePrm.inQueParams[1].prevLinkId = pMgr->VPE_sv_cscLinkID_2;
   pMgr->MergePrm.inQueParams[1].prevLinkQueId = 0;    
   
   //Merge -> Select
   pMgr->MergePrm.outQueParams.nextLink = pMgr->Select_MainLinkID_2;
   pMgr->Select_MainPrm_2.inQueParams.prevLinkId = pMgr->Merge_LinkID;
   pMgr->Select_MainPrm_2.inQueParams.prevLinkQueId = 0;  
   
   //Select -> Display
   pMgr->Select_MainPrm_2.outQueParams[0].nextLink = pMgr->Display_MainPreviewLinkID;
   pMgr->Display_MainPreviewPrm.inQueParams.prevLinkId = pMgr->Select_MainLinkID_2;
   pMgr->Display_MainPreviewPrm.inQueParams.prevLinkQueId = 0;  

	(pMgr->Select_MainPrm).numOutQue = 2;
	(pMgr->Select_MainPrm).outQueChInfo[0].outQueId     = 1;
	(pMgr->Select_MainPrm).outQueChInfo[0].numOutCh     = 1;	 
	(pMgr->Select_MainPrm).outQueChInfo[0].inChNum[0]   = 1;	

	(pMgr->Select_MainPrm).outQueChInfo[1].outQueId     = 0;
	(pMgr->Select_MainPrm).outQueChInfo[1].numOutCh     = 1;	 
	(pMgr->Select_MainPrm).outQueChInfo[1].inChNum[0]   = 0;
	
	//Initial main select link queue setting (main preview and encoder)
	(pMgr->Select_MainPrm_2).numOutQue = 1;
	(pMgr->Select_MainPrm_2).outQueChInfo[0].outQueId     = 0;
	(pMgr->Select_MainPrm_2).outQueChInfo[0].numOutCh     = 1;	
	(pMgr->Select_MainPrm_2).outQueChInfo[0].inChNum[0]   = 0;

     

Thanks!!!

Best Regards,

David