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.

816x Expansion I/O daughtercard: Which Inputs are supported by SDK?

Other Parts Discussed in Thread: TVP7002, TVP5147

If I understand correctly, the 816x expansion I/O daughter-card has the following seven video inputs:

J5, J6, J7 - Component video input associated with TVP7002 #1

J10        - VGA input associated with TVP7002 #1

J2, J3, J4 - Component video input associated with TVP7002 #2

J9         - VGA input associated with TVP7002 #2

J1         - Composite input associated with TVP5147

P1         - S-Video input associated with TVP5147

P3         - HDMI input

Could someone please summarize which of the above inputs are currently supported by the latest SDK, 5.02.01.59?

  • Hello,

    Only component capture via TVP7002 is supported on the Expansion I/O board in the current SDK release.

    Regards,
    Marc

  • OK - can I use component capture on TVP7002 #2, though? I was kind of hoping I could test with two channels somehow.

  • Hi,

    Currently media controller binary supports only 1 TVP7002. So you cant use second TVP7002 as of now. Once we move all encoder/decoder support to Linux A8 you will be able to use second TVP7002. This is planned in 4Q11.

     

    Regards,

    Hardik Shah

  • OK, thanks.

  •  

    Hi,

    I'm reviewing XIO schematic rev.C. It has TVP5147 for component, and S-video input and interfaced with 16-bit pixel bus and clock output.

    It seems to use embedded sync. I've checked the TVP5147 manual and noticed it looks like supporting only 8 bits embedded sync. I'm wondering

    if it support 16-bits embedded sync or not ?

    Regards,

    Sympson

  • Hi,

     

    TVP5147 does not support 16 bit interface in embedded sync interface. You will have to use 16 bit discrete sync interface.

     

    Thx,

    Brijesh Jadav

  • Also having trouble getting the various video inputs on the expansion i/o daughter card to work. In fact, even the McFW demo app is not able to 'detect' any video sources. 

    Setup ... I've re-targeted the ‘DVRRDK_V03.00.00.00’ at the EVM (using Rules.Make) and can boot (kernel), load the M3 firmware and A8 ko’s and even run the mcfw cmd-line demo (/opt/dvr_rdk/ti816x/bin/dvr_rdk_demo_mcfw_api.out) that works on the DVR-RDK board.

    Output on the command line seems to indicate that everything (M3fw, ko, program) loaded and is running correctly, and the monitor connected to the HDMI-out (not the daughter card) display shows the “Texas Instruments” overlay (i.e. the OSD generated by the C6x DSP) but I can’t seem to access any video inputs that I have connected to D12 (composite input via NTSC camera), HDMI IN2 (DVI video via DVI camera) or [D6, D7, D8] (component in via another 8168x_evm board demo).

    I would assume that I would need to modify a driver of some sort to gain access or 'map' to the correct video inputs (on the EVM). Perhaps someone here can help? Ideally, we are looking at getting the 1xDVI (HDMI_IN2 on the EVM) and 1xNTSC_composite (D12 on the EVM) video inputs working.

  • Hi,

    Component input is supported with 1080P60, 720P60 and 1080i60 modes.

  • Hello HardikShah,

    I am working on DM816x-EVM(Netra) based custom board.

    Custom board setup is as following:

    We have DM816x Video ports connected to FPGA logic. At video RX side FPGA will recieve video from HD-SDI and converts it to 1080p30/1080p25/720p50 format and feed to VIN0 (x16) of DM816x. At video Tx side DM816x will feed VOUT1 (x16) 1080p30/1080p25/720p50 format to FPGA where it converts to HD-SDI and sent for display devices.

    Note : 1080p30/1080p25/720p50 format are user configurable at DM816x as well as at FPGA.

    Following test cases are passed:

     For all 1080p30/1080p25/720p50 formats, Omx Capture_encode application & saLoopback application works fine with custom board.

    But end user application needs GST pipelines.

    Following is the issues i am facing with gstreamer applications.

    1) For 1080p30: Works fine

    LOG:

    root@root:~# GST_DEBUG=0 gst-launch v4l2src always-copy=false queue-size=11 ! 'video/x-raw-yuv-
    strided,format=(fourcc)YUY2,width=1920,height=1080,framerate=(fraction)30/1' ! omxbufferalloc num
    Buffers=11 ! gstperf ! v4l2sink min-queued-bufs=2
    Setting pipeline to PAUSED ...

    ** (gst-launch-0.10:1332): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    ** (gst-launch-0.10:1332): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    ** (gst-launch-0.10:1332): CRITICAL **: gst_v4l2sink_sync_flip: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    Mode set is 1080
    allocating 11 buffers of size:4147200!!
    allocated outbuf:0x44f7a080
    allocated outbuf:0x4536e880
    allocated outbuf:0x45763080
    allocated outbuf:0x45b57880
    allocated outbuf:0x45f4c080
    allocated outbuf:0x46340880
    allocated outbuf:0x46735080
    allocated outbuf:0x46b29880
    allocated outbuf:0x46f1e080
    allocated outbuf:0x47312880
    allocated outbuf:0x47707080
    Pipeline is live and does not need PREROLL ...
    Setting pipeline to PLAYING ...
    New clock: GstSystemClock
    perf0: frames: 29 current: 28.68 average: 28.68 arm-load: 0
    perf0: frames: 60 current: 30.00 average: 29.35 arm-load: 0
    perf0: frames: 90 current: 30.00 average: 29.56 arm-load: 0
    perf0: frames: 121 current: 30.00 average: 29.67 arm-load: 0
    perf0: frames: 152 current: 30.00 average: 29.74 arm-load: 0
    perf0: frames: 182 current: 30.00 average: 29.78 arm-load: 0
    perf0: frames: 213 current: 30.00 average: 29.81 arm-load: 0
    perf0: frames: 244 current: 30.00 average: 29.84 arm-load: 0
    perf0: frames: 275 current: 30.00 average: 29.86 arm-load: 0
    perf0: frames: 305 current: 30.00 average: 29.87 arm-load: 0
    perf0: frames: 335 current: 30.00 average: 29.88 arm-load: 0
    perf0: frames: 365 current: 30.00 average: 29.89 arm-load: 0
    perf0: frames: 395 current: 30.00 average: 29.90 arm-load: 0
    perf0: frames: 426 current: 30.00 average: 29.91 arm-load: 0
    ^C

    Caught interrupt -- handling interrupt.
    Interrupt: Stopping pipeline ...
    Execution ended after 14974059036 ns.
    Setting pipeline to PAUSED ...
    Setting pipeline to READY ...

    !!!!!!!!!unreference all the remaining buffers!!!!!!!!!Setting pipeline to NULL ...
    Freeing pipeline ...
    root@root:~#

    2) For 1080p25: Could not negotiate format Error

    root@root:~# gst-launch -e v4l2src device=/dev/video0 always-copy=false queue-size=11 ! video/x
    -raw-yuv-strided,format=\(fourcc\)YUY2,framerate=\(fraction\)25/1,width=\(int\)1920,height=\(int\
    )1080 ! omxbufferalloc numBuffers=11 ! gstperf ! v4l2sink device=/dev/video1 sync=false min-queue
    d-bufs=2
    Setting pipeline to PAUSED ...

    ** (gst-launch-0.10:1207): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    ** (gst-launch-0.10:1207): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    ** (gst-launch-0.10:1207): CRITICAL **: gst_v4l2sink_sync_flip: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    Mode set is 15
    ERROR: Pipeline doesn't want to pause.
    ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Could not negotiate format
    Additional debug info:
    gstbasesrc.c(2778): gst_base_src_start (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
    Check your filtered caps, if any
    Setting pipeline to NULL ...

    !!!!!!!!!unreference all the remaining buffers!!!!!!!!!Freeing pipeline ...
    root@root:~#

    3) For 720p50: Could not negotiate format error

    root@root:~# GST_DEBUG=0 gst-launch v4l2src always-copy=false queue-size=11 ! 'video/x-raw-yuv-

    strided,format=(fourcc)YUY2,width=1280,height=720,framerate=(fraction)50/1' ! omxbufferalloc numB
    uffers=11 ! gstperf ! v4l2sink min-queued-bufs=2
    Setting pipeline to PAUSED ...

    ** (gst-launch-0.10:1288): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    ** (gst-launch-0.10:1288): CRITICAL **: gst_v4l2sink_sync_rotation: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    ** (gst-launch-0.10:1288): CRITICAL **: gst_v4l2sink_sync_flip: assertion `v4l2_ioctl (fd, VIDIOC_S_CTRL, &control) >= 0' failed

    Mode set is 6
    ERROR: Pipeline doesn't want to pause.
    ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Could not negotiate format
    Additional debug info:
    gstbasesrc.c(2778): gst_base_src_start (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
    Check your filtered caps, if any
    Setting pipeline to NULL ...

    !!!!!!!!!unreference all the remaining buffers!!!!!!!!!Freeing pipeline ...
    root@root:~#

    Hope you understand my problem, Please help in this regard. to make gst pipelines works for 1080p25 & 720p50 formats.

    Thanks in advance

    Regards

    Sadasivappa