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.

DM8168 SDK5.05.02 OMX CaptureEncode example

Other Parts Discussed in Thread: TVP7002

Hi,

 

using the SDK5.05.02 I am trying to run the OMX capture and encode example, but am getting the following error. BTW, other OMX examples run fine.

 

root@dm816x-evm:~# cat ./runCapture1080iEncodeOMX.sh #!/bin/sh

/etc/init.d/matrix-gui-e stop echo 0 > /sys/devices/platform/vpss/graphics0/enabled

cd /usr/share/ti/ti-omx

rm -f ../data/videos/sample.h264

./capture_encode_a8host_debug.xv5T -o ../data/videos/sample.h264 -m 1080i -f 60 -b 8000000 -d 0 -n 100

cd ~

 

root@dm816x-evm:~# ./runCapture1080iEncodeOMX.sh

Stopping Matrix GUI application. output file: ../data/videos/sample.h264 bit_rate: 8000000 frame_rate: 60 num_frames: 1000 mode: 1080i display_id: 0  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: 2073600 set input port params (width = 1920, height = 1080)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 0x1244f8 for component OMX.TI.VPSSM3.VFDC  got display handle found handle 0x128500 for component OMX.TI.VPSSM3.CTRL.DC Buffer Size computed: 4147200 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 event*** unrecoverable error: OMX_ErrorInsufficientResources (0x80001000) Press a key to proceed

 

If i run the same test with format -m 1080p, the application goes further, but still does not complete ...

root@dm816x-evm:~# cat runCapture1080pEncodeOMX.sh

#!/bin/sh

/etc/init.d/matrix-gui-e stop

echo 0 > /sys/devices/platform/vpss/graphics0/enabled

cd /usr/share/ti/ti-omx

rm -f ../data/videos/sample.h264

./capture_encode_a8host_debug.xv5T -o ../data/videos/sample.h264 -m 1080p -f 60 -b 8000000 -d 0 -n 100

cd ~

root@dm816x-evm:~# ./runCapture1080pEncodeOMX.sh Stopping Matrix GUI application. output file: ../data/videos/sample.h264 bit_rate: 8000000 frame_rate: 60 num_frames: 100 mode: 1080p display_id: 0  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)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 0x1244f8 for component OMX.TI.VPSSM3.VFDC  got display handle found handle 0x128500 for component OMX.TI.VPSSM3.CTRL.DC Buffer Size computed: 4147200 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

 

 

Regards,

--Gunter

 

 

  • Hello,

    For more debug prints you could use:

    ./loggerSMDump.out 0x9e400000 0x100000 all

    This is avilable at /usr/share/ti/ti-uia folder in filesystem.

    Are you trying to capture 1080i?

    For 1080i we are using 422 format, and pitch would be 2xwidth. On PG1.1 DM8168, this pitch is not supported for > 1920, so you would see the error OMX_ErrorInsufficientResources  also. PG2.0 supports this. Please check this also.

    Let me know the result.

    Best Regards,

    Margarita

  • Hi Margarita,

     

    I think I may be running into the PG1.1 issue. The board that is used here has

    48140600: 1b81e02f

    which is PG1.1

     

    Could you clarify one more time what the pitch limitation is, and whether on PG1.1 the input of 1080i leading to 2x1920 pitch is causing the OMX_ErrorInsufficientResources issue?

     

    Thanks,

    --Gunter

     

  • Hello,

    Gunter Schmer said:
    Could you clarify one more time what the pitch limitation is, and whether on PG1.1 the input of 1080i leading to 2x1920 pitch is causing the OMX_ErrorInsufficientResources issue?

    Correct.

    Best Regards,

    Margarita

  • Hi Margarita,

     

    Thanks. We are testing with a PG2.1 board and will let you know the outcome.

    The input source into the Component Input is 1080i60.

    The commandline for testing is:

    ./capture_encode_a8host_debug.xv5T -o ../data/dm816x_1080i_capture.264 -m 1080i -f 60 -b 8000000 -d 1 -n 1200

     

    Here I had a side question, specifically about the -f 60 parameter, and the de-interlacer and which fps video frames it is sending to the encoder. Let's assume we are taking in 1080i60 video and capturing with the TVP7002, we are giving 1080i60 video to the DEI. What is the output of the DEI before it goes into the H264 Encoder then, is it at 60 fps or is it at 30 fps??

    While I cannot test this on my own board, it is very important, because we are setting a bitrate of 8Mbps and for that we ideally want to bring in 1080p video data into the H264 encoder at 30 fps to have good quality. If the output of the DEI was 60 fps, at 8Mbps bitrate Encode, the video quality would be much worse. My understanding is that the DEI generates a frame at the output for every field at the input, i.e. 60 fps output, but I want to confirm.

     

    Thanks,

    --Gunter

     

  • Hi Margarita and all,

     

    thanks for your help so far. Do you have an update on the DEI output fps framerate for a 1080i60 input? Can you confirm that the DEI output framerate is 60 fps? We have a meeting with the customer tomorrow and I would like to communicate this correctly.

     

    Thanks,

    --Gunter