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.

No video captured executing the example application from SD card provided by DM8148EVM

Other Parts Discussed in Thread: TVP5147, TVP7002

Hi:
     I haven't gotten any output h264 stream after running the "./capture_encode_a8host_debug.xv5T -o sample.h264 -m 1080p -f 30 -b 10000000 -n 100 -d 1 &" command.
     I have connect a 1080P@30fps camera with the DM8148EVM using the composite video port of EIO board(I am not sure this is an input port,I haven't got any document related to this).

     The output sample.h264 file have no stream data in it and is 0 bytes of size.
     There are several problems I am looking for help.

1)   Does the EVM support video capture only for 1080p by default?
     If it can support other video input formats like 720p, is there any thing need to change manually or the EVM can handle it automatically with a camera of 720p?

2)   There are composite video, S-video and component video ports on the EIO board, can all these server as input port?
     If these can all server as input ports, how to configure one port as working input port while keep other port idle?

3) Is there any document related to video capture other the "DM814x_AM387x_VPSS_Video_Driver_User_Guide"?

Beow are serial port print of my executing process.


./capture_encode_a8host_debug.xv5T -o sample.h264 -m 1080p -f 30 -b 10000000 -n 100 -d 1 &
root@dm814x-evm:/usr/share/czj# output file: sample.h264
bit_rate: 10000000
frame_rate: 30
num_frames: 100
mode: 1080p
display_id: 1
 Capture-Encode example
===============================
 OMX_Init completed
 UIAClient is ready to send a UIA configuration command
UIAClient received UIA_CONFIGURE_ACK
UIAClient is done sending requests
UIAClient is ready to send a UIA configuration command
UIAClient received UIA_CONFIGURE_ACK
UIAClient is done sending requests
 openeing file
 capture compoenent is created
 control TVP compoenent is created
Buffer Size computed: 3110400
set input port params (width = 1920, height = 1080) applying skip mask
enable capture output port
got eventEnable/Disable Event
 dei compoenent is created
set input port params (width = 1920, height = 1080)
set output port params (width = 1920, height = 1080)set output port params (width = 1920, height = 1080)set number of channelsset input resolutionset output resolutionenable dei input port
got eventEnable/Disable Event
enable dei output port 0
got eventEnable/Disable Event
enable dei output port 1
got eventEnable/Disable Event
 encoder compoenent is created
found handle 0x1302d0 for component OMX.TI.VPSSM3.VFDC
 got display handle
found handle 0x133dd8 for component OMX.TI.VPSSM3.CTRL.DC
Buffer Size computed: 1728000
set input port params (width = 1920, height = 1080)setting input and output memory type to defaultenable input port
got eventEnable/Disable Event
 connect call for capture-Dei
  connect call for dei- encoder
  connect call for dei-display
 got eventState changed to: OMX_StateIdle
 Capture outport buffers allocated
 got eventState changed to: OMX_StateIdle
 Capture is in IDLE state
 Dei input port use buffer done
  DEI outport buffers allocated
 got eventState changed to: OMX_StateIdle
 DEI is in IDLE state
 encoder input port use buffer done
  encoder outport buffers allocated
 got eventState changed to: OMX_StateIdle
 Encoder state IDLE
 got eventState changed to: OMX_StateIdle
 ctrl-dc state IDLE
  display buffers allocated
 waiting for IDLEgot eventState changed to: OMX_StateIdle
 display state IDLE
 got eventState changed to: OMX_StateExecuting
 display control state execute
 got eventState changed to: OMX_StateExecuting
 display state execute
 got eventState changed to: OMX_StateExecuting
 encoder state execute
 got eventState changed to: OMX_StateExecuting
 dei state execute
 got eventState changed to: OMX_StateExecuting
 capture state execute

  • Hello,

    yuan gao2 said:
         I haven't gotten any output h264 stream after running the "./capture_encode_a8host_debug.xv5T -o sample.h264 -m 1080p -f 30 -b 10000000 -n 100 -d 1 &" command.
         I have connect a 1080P@30fps camera with the DM8148EVM using the composite video port of EIO board(I am not sure this is an input port,I haven't got any document related to this).

    You should connect the video source to the Component Input(J8, J9,J10).

    The document that you could check is the OMX user guide page 70(/ti-ezsdk_dm814x-evm_5_05_02_00/component-sources/omx_05_02_00_48).

    yuan gao2 said:
    1)   Does the EVM support video capture only for 1080p by default?
         If it can support other video input formats like 720p, is there any thing need to change manually or the EVM can handle it automatically with a camera of 720p?

    Supports capture up to 1920x1080.
    Yes it supports also 1280x720 capture.

    yuan gao2 said:
    2)   There are composite video, S-video and component video ports on the EIO board, can all these server as input port?
         If these can all server as input ports, how to configure one port as working input port while keep other port idle?

    To the composite input we have connected TVP5147.

    EZSDK controls external interfaces like TVP7002 through media controller binary(component input). So if you want to use composite input you should make TVP5147 to work with EZSDK.

    TVP5147 driver is already available as a part of Linux kernel under $Kernel/driver/media/tvp514x.c. You just need to hook this up to V4L2 capture driver.

    You could follow this user guide:

    http://processors.wiki.ti.com/index.php/DM81xx_AM38xx_Adding_External_Decoders_to_V4L2_Capture_Driver

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_VIDEO_CAPTURE_Driver_User_Guide


    yuan gao2 said:
    3) Is there any document related to video capture other the "DM814x_AM387x_VPSS_Video_Driver_User_Guide"?

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_VIDEO_CAPTURE_Driver_User_Guide

    Best Regards,

    Margarita

     

  • Thanks you for your help.

    After read the document provided, I have another question.

    When executing omx example of capture and encodeing, does the module ti81xxvin.ko is necessary or not?

    From examples in USER GUIDE, applications interface with drivers directly using API open,ioctrl,etc.

    Application using OpenMax package does not operate driver directly but through a component VFCC .

    My question is, in order to executing the omx application of capture and encodeing, ti81xxvin.ko is needed or not?

    I guess it is needed and VFCC will use it to interface with VPSS driver but from ezsdk provided by EVM, user can't configure and build ti81xxvin.ko(PSP 04.01.00.06), so I am confusde

           

  • Hello,

    yuan gao2 said:
    When executing omx example of capture and encodeing, does the module ti81xxvin.ko is necessary or not?

    When you are using OMX capture_encode demo it is not.

    You could check the both scripts  load-hd-firmware.sh and load-hd-firmware.sh which .ko are loaded by default.

    The first script is loading by default. The second one is loading when we shall use the dm814x_hdvpss_v4l2.xem3 firmware.

    yuan gao2 said:
    user can't configure and build ti81xxvin.ko(PSP 04.01.00.06), so I am confusde

    We can change it. You could find it in ezsdk/board-support/linux-2.6.37-psp04.04.00.01/drivers/media/video/ti81xx

    You shall rebuild the kernel and the modules.

    Best Regards,

    Margarita