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.

Display device selection in AM572x on GPEVM

Other Parts Discussed in Thread: TMDSEVM572X, AM5728

Hi All

I am using GPEVM (TMDSEVM572x) with software release ti-processor-sdk-linux-am57xx-evm-02.00.01.07-es2.0. I am trying various pipelines to decode various videos and display.

Whenever i connect HDMI, the video is displayed only on HDMI and not on touchscreen. But when i disconnect the HDMI, i am able to again see the video on touchscreen.

I have used following pipelines :

gst-launch-1.0 filesrc location=/usr/share/ti/video/TearOfSteel-Short-1920x800.mov ! qtdemux name=demux demux.audio_0 ! queue ! decodebin ! alsasink demux.video_0 ! queue ! h264parse ! ducatih264dec ! kmssink scale=true

gst-launch-1.0 filesrc location=/usr/share/ti/video/TearOfSteel-Short-1280x720.265 ! 'video/x-raw, format=(string)NV12, framerate=(fraction)24/1, width=(int)1280, height=(int)720'  ! h265dec threads=1 !  vpe ! waylandsink

In both cases same behavior is observed.
 My questions are:

1. How can i specify which output device to be used in kmssink and waylandsink??

2. How can i see the content on both LCD and HDMI??

3. Is there a way to enable the access of 3 output ports through v4l2?


Warm Regards

Amrit

  • Hi,

    I will ask the video experts to comment.
  • Hi All

    Can anybody please reply?
    I know that AM5728 is having 3 video out ports.
    We are planning to put some PAL encoder on lets say video output port1(VOUT1), connect video output port 2 (VOUT2) to LCD and video output 3 (VOUT3) to FPGA.

    I can see Video Input ports stuff in device tree files but nothing related to video out ports is there.
  • Hi Amrit,

    1. How can i specify which output device to be used in kmssink and waylandsink??
    [MA] kmssink has option that let you select connector but waylandsink doesn't provide that option. To know the capabilities of gstreamer plugins, you can do gst-inspect on that plugin name at command prompt as shown below -
    #gst-inspect-1.0 kmssink

    You can know the connector id by running the modetest on cmd prompt. Below is the example to run the output on HDMI using kmssink
    #gst-launch-1.0 playbin uri=file:///usr/share/ti/video/ToS-4k-1920_short.mov  video-sink=kmssink connector=16

    2. How can i see the content on both LCD and HDMI??
    [MA] You can clone the output on both LCD and HDMI, however this capability is not available at gstreamer plugin waylandsink and kmssink level. There are examples at layer below using drm APIs on cloning, extending, z-oder and alphablending of video on different displays. The examples can be found at
    git.ti.com/.../drm-tests

    3. Is there a way to enable the access of 3 output ports through v4l2?
    These output can be accessed through drm APIs as pointed in git repo link above
  • Refer to device tree files am57xx-idk-lcd-osd.dtsi for lcd integration and am57xx-beagle-x15.dts for hdmi integration under arch/arm/boot/dts folder of linux kernel
  • I would like to give headsup that currently VOUT2 port support is broken in DSS driver.
  • Hi Manisha
    Thanks. Through kmssink i can select the output device for the video.

    1. So you are saying that i can't specify that whether i want the QT UI at LCD0 output or LCD2 in wayland??
    2. Also we are planning to put a PAL encoder on LCD0 port. How can i integrate its driver? Its based on v4l2 model. Will i be able to access it from DRM APIs you mentioned?
    3. We are planning following output scenario:
    LCD0 -> PAL encoder
    LCD1 -> SDI encoder
    LCD2 -> back to FPGA

    LCD0 and LCD1 needs to display QT and LCD2 needs to feed raw video back to FPGA.

    Regards
    Amrit
  • Hi
    I would like to confirm.
    So AM5728 has 3 output devices. LCD0, LCD1 and LCD2.
    And you are saying that LCD2 support is broken in DSS driver?

    Our hardware team has already done 90% of the schematics. Will it be fixed in the next release?
    Is there any patch available for the fix?
    Any timeline for this?

    Otherwise we will have to remove this port output from current schematics.

    Regards
    Amrit

  •  1. So you are saying that i can't specify that whether i want the QT UI at LCD0 output or LCD2 in wayland??

    Wayland APIs do not support specification of display, position, etc. This feature has to come from layer above wayland. For ex,  IVI shell on top of weston is used for display choice and positioning.

    2. Also we are planning to put a PAL encoder on LCD0 port. How can i integrate its driver? Its based on v4l2 model. Will i be able to access it from DRM APIs you mentioned?

    v4l2 APIs cannot be used with omapdrm

    3. We are planning following output scenario:
     LCD0 -> PAL encoder
     LCD1 -> SDI encoder
     LCD2 -> back to FPGA
    
     LCD0 and LCD1 needs to display QT and LCD2 needs to feed raw video back to FPGA.

    There's only two PLLs feeding the three output and hence you cannot choose the clocks freely. Hope you have already referred to TRM and accounted for this in yoru hardware design.

  • The driver support for VOUT2 is broken in current PSDK release. It is expected to be working in PSDK release scheduled 2Q, 2016. There are chances that the feature can get pushed to 3Q, 2016.