Showing posts with label openmax. Show all posts
Showing posts with label openmax. Show all posts

Saturday, February 9, 2013

OpenMAX

gst-openmax issue with openmax-1.1.2 spec:
"Dynamic port reconfiguration:
The issue is with dynamically reconfiguring  the frame size and output number of buffers.
In this case, according to openmax-1.1.2 spec.
a) gst-openmax first disable the output port once it receives the event for port settings changed from openmax IL
b) Get the  Parameters from openmax IL
c) Set the Parameters
d) Enable the output port."

Omx test code is going same way as mentioned above:
Omxtest waits on OMX_COMPONENT_GENERATE_PORT_

RECONFIG event from Play_Decoder() and On receiving this event:
1. It disable output port (using Play_Decoder()->output_port_reconfig() -> disable_output_port() function)
2. Get the  Parameters from openmax IL (using output_port_reconfig()->OMX_GetParameter(dec_handle,OMX_IndexParamPortDefinition,&portFmt))
3. Set the Parameters
4. Enable the output port (using output_port_reconfig() -> enable_output_port() function)
5. Successful

But gst-openmax doesn't disable and enable the output port on receiving OMX_COMPONENT_GENERATE_PORT_RECONFIG event.
It does following:
a) Get the  Parameters from openmax IL (using EventHandler()->settings_changed_cb() ->OMX_GetParameter (core->omx_handle, OMX_IndexParamPortDefinition, &param))
b) Set the Parameters
c) Blocked


Use Android Hardware Decoder with OMXCodec in NDK

OpenMAX: