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.

video encode/decode with RGB 888 or YUV 444

Other Parts Discussed in Thread: TVP7002

I need to be able to display an input video source at 1080p@60 RGB 888 or YUV 444 through the 8168 and output the video at 1080p@60 RGB 888 or YUV 444.  The OMX users guide specifically states that it can only support YUV 422, so it seems to me that I can't use the OMX interface for what I want to do.  Is there any example code or more specific information about how this can be done?  I also want to be able to display graphics on top of the video at the same resolution and color space.  I'm current using the 5.01.01.80 SDK and I'm in the process of upgrading to the 5.02.01.59 SDK.

 

  • Hi,

     

    You can use V4L2 and FBDev to display YUV422 and RGB888 on hdmi output. There is no way to display YUV444.You can change the priority of the planes to display one over the other. There are some sysfs attributes to do this.

     

    Thanks,

    Brijesh Jadav

  • Sorry it's taken me so long to respond to your information.  Another project interrupted.

    What's the procedure to use V4L2 and FBDev..  I can't find any examples or documentation that describe how to make this work.  If you could point me in the right direction that would help alot.  I would also like to find documentation on the sysfs attributes.

    You describe displaying RGB888 on hdmi output, but I also need to receive RGB888 or YUV444 video and then send the received video to the hdmi output.  It looks like the EVM has the capability to receive DVI or HDMI video, but I can't find any documentation or examples that show how to use it.  Can you help?

    Carl

     

  • Carl,

    Currently you can use the TVP7002 to capture analog inputs and later you can move to the DVI interface once its supported.

    Regards,
    Marc

  • Hi,

    Currently HDVPSS display path is supported using V4L2 and graphics path is supported using fbdev. We are planning to support V4L2 capture with TVP7002 in Q411.

     

    Further HDVPSS can receive RGB888 data. It can also receive YUV444 data by fooling it as RGB but there are no processing/display modules in HDVPSS which can take YUV444. But RGB888 can be displayed/scaled using graphics path of RGB888. RGB888 can be received using DVI decoder present on daughter card.

     

    Regards,

    Hardik Shah

     

  • Reading through your VPSS video driver documentation it seems to only support fbdev.  I'm currently using SDK 5.01.01.80.  Does the later SDK now support V4L2 on VPSS?  How do you make HDVPSS receive video and how do you tell it where to get that video?  Once HDVPSS is receiving video how do you route the video stream through fbdev?  Is there a driver interface to support the DVI decoder or does that still need to be written?  I'd like to receive video and display that as a background and then overlay graphics drawings on top of that video, so I assume I will need to be using different graphics planes (one for the video and one for the overlay).  What is the typical way of doing this?

    I've compiled and run the saDisplay examples in the psp so I can see how you can use the fbdev driver to write directly to the screen, but I can't find any examples that show receiving video from a decoder and displaying that.

    Thank you for your help.

    Carl

     

  • Hi,

    VPSS Video driver on PSP04.00.00.12 supports FBDEV on graphics plane and V4L2 on display planes.  SDK is still using Media controller APIs for capture and display. We currently dont have support for V4L2 capture in VPSS. This is being added and will be available in Q411. Once we will have FBDEV,  V4L2 caputre, and V4L2 display support it will be possible to route buffer from capture to FBDEV using the userPtr mechanism of V4L2. Currently. I dont have dates for DVI support and yes it requires to be added to V4L2 capture after 4Q11. 

    For overlay mechanism,

    you should capture in YUV422 format and display it through display path of HDVPSS ( This is other than graphics path) and on top of video you can overlay using the graphics path of HDVPSS.

     

    Regards,

    Hardik Shah

  • Thank you for the information.

    For overlaying:  I would like to capture in RGB888 format and display it.  Is this possible?  Much of our video input will be from PCs.  If I'm overlaying using the graphics path of HDVPSS does this mean that the graphics will work with transparency if it's enabled?  In other words, the user will see the video being captured in the background and also see graphics (via FBDEV) depending on the transparency?  It would also be nice to have at least another plane that will work with transparency.  It seems like this would be supported with omapfb, but I can't find any documentation on this.  Can your point me in the right direction?

    Thanks.

    Carl

     

  • Hi,

    Yes its possible to capture in RGB888 format and display it. Yes you can use two graphics one for displaying you video content and other for your menu or something like that. You can have transparency between both of them.  Yes use will be able to see video in background for graphics with transparency enabled. FBDEV supports this in current release. you can look at Video driver userguide.

     

    Further,

    HDVPSS capture can be done in RGB and you can convert it to YUV using HDVPSS color space converter. This doesnt add any latency or delay. Once you get YUV out you can use display paths as well.

     

    Regards,

    Hardik Shah