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.

Unable to display YUV image properly it shows as pink screen

Part Number: DRA72XEVM

Hi TI Forum,

For an custom requirement, Iam trying to display 1 channel video and still image based on user selection whether he wants video or still image. If user selects switch 1 on HW Video is to be dispayed and if he selects Switch 2 then Still image has to be displayed. If user press switch-1 video is coming properly. But if user press switch-2 image is seen in pink. instead of actual image which should be as Texas Instruments image. [This still image data 420 YUV format is stored in  a buffer placed in a header file]

The format of video captured is -> pOutprms->dataFormat    =   SYSTEM_DF_YUV422I_YUYV;

          The Data format set for Still image is -> SYSTEM_DF_YUV420SP_UV

The scan format for  Still image is ->   SYSTEM_SF_PROGRESSIVE

The Buf_Type set for Still image is ->  SYSTEM_BUFFER_TYPE_VIDEO_FRAME

      //Capture -> Merge
       pObj->CapturePrm.outQueParams.nextLink = pObj->MergeLinkID;
       pObj->MergePrm.inQueParams[0].prevLinkId = pObj->CaptureLinkID;
       pObj->MergePrm.inQueParams[0].prevLinkQueId = 0;

       //NullSource -> Merge
       pObj->NullSourcePrm.outQueParams.nextLink = pObj->MergeLinkID;
       pObj->MergePrm.inQueParams[1].prevLinkId = pObj->NullSourceLinkID;
       pObj->MergePrm.inQueParams[1].prevLinkQueId = 0;

       //Merge -> Display_Video
       pObj->MergePrm.outQueParams.nextLink = pObj->Display_VideoLinkID;
       pObj->Display_VideoPrm.inQueParams.prevLinkId = pObj->MergeLinkID;
       pObj->Display_VideoPrm.inQueParams.prevLinkQueId = 0;

Could you please help me to correct this problem so that the still IMage = Texas Instruments could be seen when user press Switch-2

Regards,

SK

  • SK,

    When you switch from option-1 to option2, i guess your input format changes from YUV422 to YUV420. So in this case, you also need to change the DSS parameters.. 

    There are few options to resolve this,

    1, keep the format, size etc parameters same for both the options

    2, Change the parameter by calling SET_DSS params ioctl

    3, use two video pipelines, one for YUV422 format and other for YUV420 format and make pipeline on/off or transparent based on option selected. 

    Rgds,

    Brijesh