I have bee experimenting with the dual_display_encode_decode.oms OMTB example. Amongst other things I have tried to modify the encoding bit rate and frame rate and have found that some commands are accepted, but have no effect while others cause the encoder to fail.
1. I tried to change the frame rate because querying it value returned:
Frame rate....................................3932160
I used:
omx setp 0 h264venc framerate 60
And when I do so, invoking 'omx getp 0 h264venc' does show the value 60 has been accepted
Frame rate....................................60
However, when trying to run the example, I see no video and no encoded file.
2. I tried to change the encoding bit rate for a long time using the following commands
omx setp 0 h264venc OMX_IndexParamVideoBitrate nTargetBitrate 5000000
omx setp 0 h264venc OMX_IndexParamVideoBitrate eControlRate variable
The commands are accepted, and the output of omx getp 0 h264venc OMX_IndexParamVideoBitrate' reflects the change, but the encoding rate seems unaffected.
I was eventually able to affect the frame rate through:
omx setp 0 h264venc framerate 30
but that is making ask from all the data contained in the output of 'omx getp 0 h264venc' which are actually meaningful? Is this documented somewhere?
H264 Video Encoder Config Parameters:
OMX Component name............................OMX.TI.DUCATI.VIDENC
Input File name...............................h264venc_sample.yuv
Output File name............................../usr/share/ti/data/videos/dm816x_1080p60_encode_20M.264
Input Frame Width.............................1920
Input Frame Height............................1080
I/P Chroma Format.............................420SP
Data O/P Mode.................................file
I/P Buffer allocation Mode....................use
Number of i/p buffer..........................8
I/p buffer alignment..........................0
Contiguous i/p buffer memory..................enable
I/P buffer size input from user...............disable
I/p buffer size...............................4147200
O/P Buffer allocation Mode....................use
Number of o/p buffer..........................4
O/p buffer alignment..........................0
Contiguous o/p buffer memory..................enable
O/P buffer size input from user...............enable
O/p buffer size...............................3110400
O/P Compression Format........................avc
I/P Stride (# of bytes per span of image).....0
Bitrate.......................................20000000
Frame rate....................................3932160
Max file size for OMTB demo...................536870912
OMX_IndexConfigVideoFramerate Index Parameters:
Frame rate....................................3932160
OMX_IndexConfigVideoBitrate Index Parameters:
Bitrate.......................................1000000
OMX_TI_IndexConfigVideoMESearchRange Index Parameters:
Motion vector accuracy........................quarterpel
ME Horizontal Search Range for P Frames.......16
ME Vertical Search Range for P Frames.........16
ME Horizontal Search Range for B Frames.......16
ME Vertical Search Range for B Frames.........16
OMX_IndexConfigVideoIntraVOPRefresh Index Parameters:
Intra Refresh VOP.............................disable
OMX_TI_IndexConfigVideoQPSettings Index Parameters:
QP for I frames...............................25
QP Max for I frames...........................51
QP Min for I frames...........................0
QP for P frames...............................25
QP Max for P frames...........................51
QP Min for P frames...........................0
QP offset for B frames........................4
QP Max for B frames...........................51
QP Min for B frames...........................0
OMX_IndexConfigVideoAVCIntraPeriod Index Parameters:
IDR period....................................128
P frames period...............................0
OMX_TI_IndexConfigSliceSettings Index Parameters:
Slice Mode Type...............................default
Slice Size....................................0
OMX_TI_IndexConfigVideoPixelInfo Index Parameters:
Input Pixel Width.............................0
Input Pixel Height............................0
OMX_TI_IndexParamVideoNALUsettings Index Parameters:
NALU Start of Sequence........................0
NALU End of Sequence..........................0
NALU IDR Frame #..............................0
NALU Intra Picture #..........................0
NALU Non Intra Picture #......................0
OMX_TI_IndexParamVideoAdvancedFMO Index Parameters:
FMO Num Slice Groups..........................0
FMO Slice Groups Map Type.....................0
FMO Slice Groups Change Direction.............raster
FMO Slice Groups Change Rate..................0
FMO Slice Groups Change Cycle.................0
FMO Slice Groups Param 0......................0
FMO Slice Groups Param 1......................0
OMX_TI_IndexParamVideoMEBlockSize Index Parameters:
ME Min Block Size - P Frame...................16x16
ME Min Block Size - B Frame...................16x16
OMX_IndexParamVideoIntraRefresh Index Parameters:
Intra Refresh Mode............................cyclic
# of Intra MBs to be Refreshed................0
# of times Motion marked MB be Intra Coded....0
# of Consecutive MBs to be Intra Coded........0
OMX_TI_IndexParamVideoVUIsettings Index Parameters:
VUI Aspect Ratio Present Flag.................disable
VUI Pixel Aspect Ratio........................none
VUI Pixel Value Full Range Flag...............disable
OMX_TI_IndexParamVideoIntraPredictionSettings Index Parameters:
Luma Intra 4x4 Pred Modes Enabled.............0
Luma Intra 8x8 Pred Modes Enabled.............0
Luma Intra 16x16 Pred Modes Enabled...........0
Chroma Intra 8x8 Pred Modes Enabled...........0
Chroma Intra Component........................cr_only
OMX_TI_IndexParamVideoDataSyncMode Index Parameters:
Video Data Mode...............................fixed_length
Video Num Data Units..........................0
OMX_IndexConfigVideoNalSize Index Parameters:
NAL bytes .....................................0
OMX_IndexParamVideoAvc Index Parameters:
Num MBs Between Slice Header..................0
Max # of P Frames between each I Frames.......1
Max # of B Frames between each I Frames.......0
Hadamard Transform............................disable
# of Refrence Frames..........................0
Refrence Index in Bwd Frames list.............0
Refrence Index in Fwd Frames list.............0
Unequal Error Protection......................disable
Flexible Macroblock Ordering..................disable
Arbitrary Slice Ordering......................disable
Redundant Slices..............................disable
AVC Profile...................................high
AVC Level.....................................4.1
Picture Types Allowed In Bitstream............0
Frame MBs Only................................disable
Frame Field MB Switching......................disable
CABAC.........................................disable
Weighted Prediction for P frames..............disable
Weighted Biprediciton Mode....................0
Constrained Intra Prediction..................disable
Luma Motion Vector Method for B Frames........disable
Spatial/Temporal mode for B Frame Coding......disable
CABAC Context Init Index......................0
Loop Filter Mode..............................enable
OMX_IndexParamVideoBitrate Index Parameters:
Param Bitrate.................................0
Param Rate Control Algorithm..................disable
OMX_IndexParamVideoProfileLevelCurrent Index Parameters:
Profile.......................................high
Level.........................................4.1
OMX_TI_IndexParamVideoBitStreamFormatSelect Index Parameters:
Bitstream Format..............................byte
OMX_TI_IndexParamVideoEncoderPreset Index Parameters:
Encoder Preset................................userdef
Rate Control Preset...........................msmq
OMX_TI_IndexParamVideoFrameDataContentSettings Index Parameters:
Input Content Type............................progressive
Interlace Coding Type.........................picaff
OMX_TI_IndexParamVideoTransformBlockSize Index Parameters:
Transform Block Size..........................8x8
OMX_IndexParamVideoSliceFMO Index Parameters:
Num Slice Group...............................0
Slice Group map type..........................0
Slice Mode Type...............................default
OMX_IndexParamVideoMotionVector Index Parameters:
Unrestricted Motion Vector....................disable
Four Motion Vectors...........................disable
Motion Vector X Search Range .................16
Motion Vector Y Search Range .................16
OMX_TI_IndexParamBuffMemType Index Parameters:
Buffer Memory Type............................default
OMX_IndexParamCompBufferSupplier Index Parameters:
Buffer Supplier Type..........................unspecified
OMX_IndexParamVideoInit Index Parameters:
Number of i/p + o/p Ports ....................2
Start Port Number ............................0
OMX_IndexParamVideoPortFormat Index Parameters:
Compression Format............................avc
Color Format..................................420SP
Frame rate....................................3932160
OMX_IndexParamVideoQuantization Index Parameters:
QP for I frames...............................25
QP for P frames...............................25
QP for B frames...............................4
OMX_TI_IndexParamCompPortNotifyType Index Parameters:
Comp Port Notify Type.........................always
OMX_IndexParamPortDefinition Index Parameters:
Port Direction................................input
Buffer Count Actual...........................4
Buffer Count Min..............................1
Buffer Size...................................3110400
Port Default Status...........................disable
Port Populated................................disable
Domain........................................video
Buffers Contiguous............................disable
Buffer Alignment..............................0
MIME Type.....................................
Native Render.................................0
Frame Width...................................720
Frame Height..................................480
Stride........................................720
Slice Height..................................0
Bit Rate......................................0
Frame Rate....................................0
Flag Error Concealment........................disable
Compression Format............................unused
Color Format..................................420SP
Native Window.................................0
OMX_TI_IndexConfigChannelName Index Parameters:
Frame Queue Channel name......................NULL