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.

OMX capture encode application at 720p

Hi,

I am using the OMX capture encode application for capturing video at 720p. But after executing the application, the output video created has the resolution of 1920x1080p. I want the output video at 1280x720p .

I have attached the logs

root@dm814x-evm:~/app#
root@dm814x-evm:~/app# cat /sys/devices/platform/vpss/display0/mode
720p-60
root@dm814x-evm:~/app#

root@dm814x-evm:~/app# ./capture_encode_a8host_debug.xv5T -o xyz.h264 -m 720p -f
 60 -b 1000000 -d 0 -n 1000
output file: xyz.h264
bit_rate: 1000000
frame_rate: 60
num_frames: 1000
mode: 720p
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: 1382400
set input port params (width = 1280, height = 720)enable capture output port
got eventEnable/Disable Event
 dei compoenent is created
set input port params (width = 1280, height = 720)
set output port params (width = 1280, height = 720)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 0x12f4f8 for component OMX.TI.VPSSM3.VFDC
 got display handle
found handle 0x133500 for component OMX.TI.VPSSM3.CTRL.DC
Buffer Size computed: 1843200
set input port params (width = 1280, height = 720)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
 got eventState changed to: OMX_StateExecuting
 capture control ( TVP ) state execute
  file write thread created
  encode connect thread created
  dei connect thread created
  capture connect thread created
  display connect thread created
  executing the application now!!
 tearing down the capture-encode example
 exiting thread
 exiting thread
 exiting thread
 exiting thread
 got eventState changed to: OMX_StateIdle
 capture state idle
 got eventState changed to: OMX_StateIdle
 control tvp state idle
 got eventState changed to: OMX_StateIdle
 DEI state idle
 got eventState changed to: OMX_StateIdle
 display state idle
 got eventState changed to: OMX_StateIdle
 display control state idle
 got eventState changed to: OMX_StateIdle
 Encoder state idle
 got eventState changed to: OMX_StateLoaded
 display state loaded
 got eventState changed to: OMX_StateLoaded
 ctrl-dc state loaded
 got eventState changed to: OMX_StateLoaded
 encoder state loaded
 got eventState changed to: OMX_StateLoaded
 dei state loaded
 got eventState changed to: OMX_StateLoaded
 capture state loaded
 got eventState changed to: OMX_StateLoaded
 ctrl-tvp state loaded
  capture free handle
 ctrl-tvp free handle
 encoder free handle
 dei free handle
 display free handle
 ctrl-dc free handle
IL Client deinitialized
 example exit

Thanks,

Debasish

  • Hi Debashish,

    You are seeing 1920x1080 from encoder and on display because, De-Interlacer output and encoder input is hard-coded to output 1920 and 1080 (check IL_CLIENT_ENC_WIDTH and IL_CLIENT_ENC_HEIGHT).

    You can simply redefine these two defines in ilclient_utils.h as shown below and rebuild the application

    #define IL_CLIENT_ENC_WIDTH (1280)
    #define IL_CLIENT_ENC_HEIGHT (720)

    You should be able to see 72p video.

    Thanks

    Ram