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.

capture/display in AM5xx

hi experts,

we try to use the built-in demo application like capturevpedisplay, v4l2capturedisplay in am5xx EVM to see, but we can't see anything at all.

here under is the messages we saw

root@am57xx-evm:~# capturevpedisplay 640 480 yuyv 640 480 uyvy 0 1 -s 30:640x480
vpe:/dev/video0 open success!!!
vip open success!!!
using 1 connectors, 800x480 display, multiplanar: 1
vip: G_FMT(start): width = 640, height = 480, 4cc = YUYV
vpe i/p: G_FMT: width = 640, height = 480, 4cc = YUYV
vpe o/p: G_FMT: width = 640, height = 480, 4cc = UYVY

==> nothing happen in HDMI / on-board LCD

root@am57xx-evm:~# v4l2capturedisplay
Opening Video device /dev/video1
Driver: vip
caps: 85200001
Selected Camera Mode:
Width: 640
Height: 480
PixFmt: YUYV
Field: 1
Length: 614400
Address: 0xb5eb7000
Image Length: 0
Length: 614400
Address: 0xb5e21000
Image Length: 0
Length: 614400
Address: 0xb5d8b000
Image Length: 0
Length: 614400
Address: 0xb5cf5000
Image Length: 0
Length: 614400
Address: 0xb5c5f000
Image Length: 0
Length: 614400
Address: 0xb5bc9000
Image Length: 0
Opening Display..
using 0 connectors, 0x0 display, multiplanar: 1

==> still nothing happen on HDMI or on-board LCD...

Thanks.

  • hi experts,

       About the above phenomenon (SDK2.0.0),  it's ok to see video after I re-connect the mother board to daughter board.

    After I tried the same command in SDK 2.0.1, I got the following messages

    root@am57xx-evm:/run/media/sdb2/home/root# ./v4l2capturedisplay -w 1920 -h 1080 -n 0 -d /dev/video1 -s 26:1920x1080

    Opening Video device /dev/video1

    Driver: vip

    caps: 85200001

    Selected Camera Mode:

     Width: 1920

     Height: 1080

     PixFmt: YUYVµ ¶

     Field: 1

    Length: 4147200

    Address: 0xb5a88000

    Image Length: 0

    Length: 4147200

    Address: 0xb5693000

    Image Length: 0

    Length: 4147200

    Address: 0xb529e000

    Image Length: 0

    Length: 4147200

    Address: 0xb4ea9000

    Image Length: 0

    Length: 4147200

    Address: 0xb4ab4000

    Image Length: 0

    Opening Display..

    using 1 connectors, 1920x1080 display, multiplanar: 1

    ERROR:post_vid_buffer:418: failed to enable plane 33: Invalid argument

    And I also found messages in /var/log/messages

    Jan 9 02:03:10 am57xx-evm user.err kernel: [ 2513.039194] vip 48990000.vip: dma_alloc_coherent of size 4149248 failed
    Jan 9 02:03:55 am57xx-evm user.err kernel: [ 2557.631304] vip 48990000.vip: dma_alloc_coherent of size 4149248 failed
    Jan 9 02:04:56 am57xx-evm user.err kernel: [ 2618.770989] vip 48990000.vip: dma_alloc_coherent of size 4149248 failed
    Jan 9 02:05:11 am57xx-evm user.err kernel: [ 2633.300466] vip 48990000.vip: dma_alloc_coherent of size 4149248 failed
    Jan 9 02:06:05 am57xx-evm user.err kernel: [ 2687.351426] vip 48990000.vip: dma_alloc_coherent of size 4149248 failed
    ~
    ~

    and following messages in /var/log/weston.log

    [01:21:39.181] already in the native mode
    gbmpvr: ERROR: gbm_pvr_bo_import:126: could not get buffer info
    gbmpvr: ERROR: gbm_pvr_bo_import:126: could not get buffer info
    gbmpvr: ERROR: gbm_pvr_bo_import:126: could not get buffer info
    gbmpvr: ERROR: gbm_pvr_bo_import:126: could not get buffer info

    As I try following, it looks ok to display but the monitor shows 480P60

    root@am57xx-evm:/run/media/sdb2/home/root# ./v4l2capturedisplay -w 1920 -h 1080 -n 0 -d /dev/video1 -s 26:1919x1079
    Opening Video device /dev/video1
    Driver: vip
    caps: 85200001
    Selected Camera Mode:
    Width: 1920
    Height: 1080
    PixFmt: YUYVe
    Field: 1
    Length: 4147200
    Address: 0xb59f3000
    Image Length: 0
    Length: 4147200
    Address: 0xb55fe000
    Image Length: 0
    Length: 4147200
    Address: 0xb5209000
    Image Length: 0
    Length: 4147200
    Address: 0xb4e14000
    Image Length: 0
    Length: 4147200
    Address: 0xb4a1f000
    Image Length: 0
    Opening Display..
    using 1 connectors, 640x480 display, multiplanar: 1

    Any idea for this problem ??

    Thanks

  • Hi
    the above is for HDMI output, as I change for on-board LCD output It looks like normal.

    root@am57xx-evm:~/201# v4l2capturedisplay -w 1920 -h 1080 -n 0 -d /dev/video1 -s 30:1920x1080
    Opening Video device /dev/video1
    Driver: vip
    caps: 85200001
    Selected Camera Mode:
    Width: 1920
    Height: 1080
    PixFmt: YUYV
    Field: 1
    Length: 4147200
    Address: 0xb59d1000
    Image Length: 0
    Length: 4147200
    Address: 0xb55dc000
    Image Length: 0
    Length: 4147200
    Address: 0xb51e7000
    Image Length: 0
    Length: 4147200
    Address: 0xb4df2000
    Image Length: 0
    Length: 4147200
    Address: 0xb49fd000
    Image Length: 0
    Opening Display..
    using 1 connectors, 800x480 display, multiplanar: 1

    But the output resolution is still wierd~~ Any idea??

    Thanks

  • Hi experts,
    After confirming processors.wiki.ti.com/.../Processor_SDK_Linux_Kernel_Performance_Guide, the maximum supported resolution mode for LCD is 800x480, it looks correct.
    But the result for the HDMI is still strange.
    Any idea ??

    Thanks.

  • hi experts,

    I try another program as below

    root@am57xx-evm:~# capturevpedisplay 1920 1080 yuyv 720 480 uyvy 0 1 -s 26:1920x1080
    vpe:/dev/video0 open success!!!
    vip open success!!!
    using 1 connectors, 1920x1080 display, multiplanar: 1
    vip: G_FMT(start): width = 1920, height = 1080, 4cc = YUYV
    vpe i/p: G_FMT: width = 1920, height = 1080, 4cc = YUYV
    vpe o/p: G_FMT: width = 720, height = 480, 4cc = UYVY
    streaming started...
    ^C
    root@am57xx-evm:~# capturevpedisplay 1920 1080 yuyv 728 480 uyvy 0 1 -s 26:1920x1080
    vpe:/dev/video0 open success!!!
    vip open success!!!
    using 1 connectors, 1920x1080 display, multiplanar: 1
    vip: G_FMT(start): width = 1920, height = 1080, 4cc = YUYV
    vpe i/p: G_FMT: width = 1920, height = 1080, 4cc = YUYV
    vpe o/p: G_FMT: width = 728, height = 480, 4cc = UYVY
    streaming started...
    ERROR:post_vid_buffer:418: failed to enable plane 33: Invalid argument
    disp post vid buf failed
    root@am57xx-evm:~#

    root@am57xx-evm:~# capturevpedisplay 1920 1080 yuyv 720 488 uyvy 0 1 -s 26:1920x1080
    vpe:/dev/video0 open success!!!
    vip open success!!!
    using 1 connectors, 1920x1080 display, multiplanar: 1
    vip: G_FMT(start): width = 1920, height = 1080, 4cc = YUYV
    vpe i/p: G_FMT: width = 1920, height = 1080, 4cc = YUYV
    vpe o/p: G_FMT: width = 728, height = 488, 4cc = UYVY
    streaming started...
    ERROR:post_vid_buffer:418: failed to enable plane 33: Invalid argument
    disp post vid buf failed
    root@am57xx-evm:~#

    it looks like there's a limitation~
    Do you know why ??

    Thanks
  • hi Experts,
    I have add "video=HDMI-A-1:1920x1080@60" in bootargs under uboot and confirm in kernel as below

    root@am57xx-evm:~# cat /proc/cmdline
    console=ttyO2,115200n8 video=HDMI-A-1:1920x1080@60 root=PARTUUID=00058541-02 rw rootfstype=ext4 rootwait

    And I check modetest as below

    root@am57xx-evm:~# modetest
    trying to open device 'i915'...failed.
    trying to open device 'radeon'...failed.
    trying to open device 'nouveau'...failed.
    trying to open device 'vmwgfx'...failed.
    trying to open device 'omapdrm'...success.
    Encoders:
    id crtc type possible crtcs possible clones
    25 28 TMDS 0x00000001 0x00000000
    29 32 TMDS 0x00000002 0x00000000

    Connectors:
    id encoder status type size (mm) modes encoders
    26 25 connected HDMI-A 930x520 21 25 ==> why this is always 930x520 ????
    modes:
    name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
    1920x1080 60 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: preferred, driver
    1920x1080 60 1920 2040 2248 2576 1080 1081 1084 1118 flags: nhsync, pvsync; type: userdef
    1920x1080 60 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
    1920x1080 30 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
    1920x1080 30 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
    1920x1080 24 1920 2558 2602 2750 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
    1920x1080 24 1920 2558 2602 2750 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
    1600x900 60 1600 1696 1864 2128 900 901 904 932 flags: nhsync, pvsync; type:
    1280x1024 60 1280 1328 1440 1688 1024 1025 1028 1066 flags: phsync, pvsync; type: driver
    1280x720 60 1280 1390 1430 1650 720 725 730 750 flags: phsync, pvsync; type: driver
    1280x720 60 1280 1390 1430 1650 720 725 730 750 flags: phsync, pvsync; type: driver
    1280x720 30 1280 3040 3080 3300 720 725 730 750 flags: phsync, pvsync; type: driver
    1280x720 30 1280 3040 3080 3300 720 725 730 750 flags: phsync, pvsync; type: driver
    1280x720 24 1280 3040 3080 3300 720 725 730 750 flags: phsync, pvsync; type: driver
    1280x720 24 1280 3040 3080 3300 720 725 730 750 flags: phsync, pvsync; type: driver
    1024x768 60 1024 1048 1184 1344 768 771 777 806 flags: nhsync, nvsync; type: driver
    800x600 60 800 840 968 1056 600 601 605 628 flags: phsync, pvsync; type: driver
    720x480 60 720 736 798 858 480 489 495 525 flags: nhsync, nvsync; type: driver
    720x480 60 720 736 798 858 480 489 495 525 flags: nhsync, nvsync; type: driver
    640x480 60 640 656 752 800 480 490 492 525 flags: nhsync, nvsync; type: driver
    640x480 60 640 656 752 800 480 490 492 525 flags: nhsync, nvsync; type: driver
    props:
    1 EDID:
    flags: immutable blob
    blobs:

    value:
    00ffffffffffff004dd9034c01010101
    01180103805d34780a0dc9a057479827
    12484c2108008180a9c0010101010101
    010101010101023a801871382d40582c
    4500a20b3200001e011d007251d01e20
    6e285500a20b3200001e000000fc0053
    4f4e592054560a2020202020000000fd
    003a3e0e460f000a20202020202001e2
    020328f04c10050420223c3e03070206
    01260d0707150750830f000068030c00
    1000b82d0fe200fb8c0ad08a20e02d10
    103e9600a20b32000018011d8018711c
    1620582c2500a20b3200009e00000000
    00000000000000000000000000000000
    00000000000000000000000000000000
    00000000000000000000000000000071
    2 DPMS:
    flags: enum
    enums: On=0 Standby=1 Suspend=2 Off=3
    value: 0
    30 29 connected unknown 0x0 1 29
    modes:
    name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
    800x480 60 800 1010 1040 1056 480 502 515 525 flags: nhsync, nvsync; type: preferred, driver
    props:
    1 EDID:
    flags: immutable blob
    blobs:

    value:
    2 DPMS:
    flags: enum
    enums: On=0 Standby=1 Suspend=2 Off=3
    value: 0

    CRTCs:
    id fb pos size
    28 47 (0,0) (1920x1080)
    1920x1080 60 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: preferred, driver
    props:
    21 trans-key-mode:
    flags: enum
    enums: disable=0 gfx-dst=1 vid-src=2
    value: 0
    22 trans-key:
    flags: range
    values: 0 16777215
    value: 0
    23 background:
    flags: range
    values: 0 16777215
    value: 0
    24 alpha_blender:
    flags: range
    values: 0 1
    value: 0
    17 rotation:
    flags: bitmask
    values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20
    value: 1
    18 zorder:
    flags: range
    values: 0 3
    value: 0
    19 global_alpha:
    flags: range
    values: 0 255
    value: 255
    20 pre_mult_alpha:
    flags: range
    values: 0 1
    value: 0
    ...

    Do you have any idea about the above ???

    Thanks