Issue with gst-omx while using libomxil-bellagio( ffmpeg codec enabled)

Varruchi Jain varruchi.jain at spectracoretech.com
Fri May 3 06:11:01 PDT 2013


Hi,

I am using gst-omx with libomxil-bellagio (with ffmpeg codecs enabled).

I tried following commands like:

gst-launch-1.0 filesrc location=~/Downloads/video_test.mp4 !
mpeg4videoparse ! omxmpeg4videodec ! filesink location=~/video.raw
gst-launch-1.0 filesrc location=~/big.h264 ! h264parse ! omxh264dec !
filesink location=test.mp4

But both commands stuck on  *g_cond_wait (&comp->messages_cond,
&comp->messages_lock) *in gst_omx_port_acquire_buffer() / gstomx.c

  /* If this is an input port and at least one of the output ports
   * needs to be reconfigured, we wait until all output ports are
   * reconfigured. Afterwards this port is reconfigured if required
   * or buffers are returned to be filled as usual.
   */
  if (port->port_def.eDir == OMX_DirInput) {
    if (comp->pending_reconfigure_outports) {
      gst_omx_component_handle_messages (comp);
      while (comp->pending_reconfigure_outports &&
          (err = comp->last_error) == OMX_ErrorNone && !port->flushing) {
        GST_DEBUG_OBJECT (comp->parent,
            "Waiting for %s output ports to reconfigure", comp->name);
        g_mutex_lock (&comp->messages_lock);
        g_mutex_unlock (&comp->lock);
        if (g_queue_is_empty (&comp->messages))
          *g_cond_wait (&comp->messages_cond, &comp->messages_lock);*
        g_mutex_unlock (&comp->messages_lock);
        g_mutex_lock (&comp->lock);
        gst_omx_component_handle_messages (comp);
      }
      goto retry;
    }

And getting following errors logs:

OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.198007423  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.198021042  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 1 definition: None (0x00000000)
OMX-In omx_base_component_SendCommand
OMX-In omx_base_component_SendCommand messageSem up param=1
0:00:00.198056452  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-In compMessageHandlerFunction
OMX-In omx_videodec_component_MessageHandler
OMX-In omx_base_component_MessageHandler
In base_port_DisablePort Port Index=1
OMX-In base_port_DisablePort Port Index=1
OMX-In base_port_DisablePort TFlag=0 Qelem=0 BSem=0 bMgmtsem=0
component=OMX.st.video_decoder.mpeg4
OMX-Out base_port_DisablePort Port Index=1 isEnabled=0
0:00:00.210366122  7636 0x7f3e38001930 DEBUG                    omx
gstomx.c:422:EventHandler:<omxmpeg4videodec-omxmpeg4videodec0> mpeg4
DisablePort command complete (2)
0:00:00.210387843  7636 0x7f3e38001930 DEBUG                    omx
gstomx.c:458:EventHandler:<omxmpeg4videodec-omxmpeg4videodec0> mpeg4 port 1
disabled
OMX-Returning from omx_base_component_MessageHandler:
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.210434497  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.210448954  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 1 definition: None (0x00000000)
0:00:00.210463551  7636       0xbcd280 INFO                     omx
gstomx.c:1914:gst_omx_port_set_enabled_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
Set mpeg4 port 1 to disabled: None (0x00000000)
0:00:00.210479265  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.210512998  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.210527386  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 1 definition: None (0x00000000)
0:00:00.210542192  7636       0xbcd280 DEBUG                    omx
gstomx.c:279:gst_omx_component_handle_messages:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 port 1 disabled
0:00:00.210556020  7636       0xbcd280 INFO                     omx
gstomx.c:2155:gst_omx_port_wait_enabled_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
Waiting for mpeg4 port 1 to be disabled
0:00:00.210570058  7636       0xbcd280 DEBUG                    omx
gstomx.c:2168:gst_omx_port_wait_enabled_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 waiting for 1000000us
0:00:00.210583468  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.210613989  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.210627677  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 1 definition: None (0x00000000)
0:00:00.210641995  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.210672795  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.210686414  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 1 definition: None (0x00000000)
0:00:00.210700312  7636       0xbcd280 INFO                     omx
gstomx.c:2230:gst_omx_port_wait_enabled_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 port 1 is disabled: None (0x00000000)
0:00:00.210715468  7636       0xbcd280 INFO                     omx
gstomx.c:756:gst_omx_component_set_state:<omxmpeg4videodec-omxmpeg4videodec0>
Setting mpeg4 state from Loaded to Idle
OMX-In omx_base_component_SendCommand
OMX-In compMessageHandlerFunction
OMX-In omx_videodec_component_MessageHandler
OMX-In omx_base_component_MessageHandler
OMX-In omx_base_component_DoStateSet
OMX-Changing state from 1 to 2
OMX-pPort=12262288
OMX-In omx_base_component_DoStateSet: wait for buffers. port enabled 1,
port populated 0
OMX-In omx_base_component_SendCommand messageSem up param=2
0:00:00.210792084  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.210824280  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.210838109  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 0 definition: None (0x00000000)
0:00:00.210851938  7636       0xbcd280 INFO                     omx
gstomx.c:1633:gst_omx_port_allocate_buffers_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
Allocating 2 buffers of size 32768 for mpeg4 port 0
OMX-In base_port_AllocateBuffer
OMX-openmaxStandPort->nNumAssignedBuffers 1
0:00:00.210897334  7636       0xbcd280 DEBUG                    omx
gstomx.c:1674:gst_omx_port_allocate_buffers_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4: allocated buffer 0xaad780 (0x7f3e40017780)
OMX-In base_port_AllocateBuffer
OMX-openmaxStandPort->nNumAssignedBuffers 2
OMX-In base_port_AllocateBuffer nPortIndex=0
OMX-Tunnel status : port 0 flags  0x0
OMX-pPort=12190720
*OMX-In omx_base_component_DoStateSet: Port 1 Disabled So no wait*
OMX-Tunnel status : port 1 flags  0x0
OMX-running callback in omx_base_component_MessageHandler
0:00:00.211003074  7636 0x7f3e38001930 DEBUG                    omx
gstomx.c:422:EventHandler:<omxmpeg4videodec-omxmpeg4videodec0> mpeg4
SetState command complete (0)
0:00:00.211017252  7636 0x7f3e38001930 DEBUG                    omx
gstomx.c:433:EventHandler:<omxmpeg4videodec-omxmpeg4videodec0> mpeg4 state
change to Idle finished
OMX-Returning from omx_base_component_MessageHandler:
0:00:00.211038972  7636       0xbcd280 DEBUG                    omx
gstomx.c:1674:gst_omx_port_allocate_buffers_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4: allocated buffer 0xaaae20 (0x7f3e4001f790)
0:00:00.211053709  7636       0xbcd280 INFO                     omx
gstomx.c:225:gst_omx_component_handle_messages:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 state change to Idle finished
0:00:00.211067537  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.214136289  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.214164994  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 0 definition: None (0x00000000)
0:00:00.214175121  7636       0xbcd280 INFO                     omx
gstomx.c:1690:gst_omx_port_allocate_buffers_unlocked:<omxmpeg4videodec-omxmpeg4videodec0>
Allocated buffers for mpeg4 port 0: None (0x00000000)
0:00:00.214187902  7636       0xbcd280 DEBUG                    omx
gstomx.c:807:gst_omx_component_get_state:<omxmpeg4videodec-omxmpeg4videodec0>
Getting state of mpeg4
0:00:00.214197331  7636       0xbcd280 DEBUG                    omx
gstomx.c:884:gst_omx_component_get_state:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 returning state Idle
0:00:00.214206061  7636       0xbcd280 INFO                     omx
gstomx.c:756:gst_omx_component_set_state:<omxmpeg4videodec-omxmpeg4videodec0>
Setting mpeg4 state from Idle to Executing
OMX-In omx_base_component_SendCommand
OMX-In compMessageHandlerFunction
OMX-In omx_videodec_component_MessageHandler
OMX-In omx_base_component_MessageHandler
OMX-In omx_base_component_DoStateSet
OMX-Changing state from 2 to 3
OMX-running callback in omx_base_component_MessageHandler
0:00:00.214241889  7636 0x7f3e38001930 DEBUG                    omx
gstomx.c:422:EventHandler:<omxmpeg4videodec-omxmpeg4videodec0> mpeg4
SetState command complete (0)
0:00:00.214251597  7636 0x7f3e38001930 DEBUG                    omx
gstomx.c:433:EventHandler:<omxmpeg4videodec-omxmpeg4videodec0> mpeg4 state
change to Executing finished
OMX-Returning from omx_base_component_MessageHandler:
OMX-In omx_base_component_SendCommand messageSem up param=32574
0:00:00.214269127  7636       0xbcd280 INFO                     omx
gstomx.c:225:gst_omx_component_handle_messages:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 state change to Executing finished
0:00:00.214279673  7636       0xbcd280 DEBUG                    omx
gstomx.c:807:gst_omx_component_get_state:<omxmpeg4videodec-omxmpeg4videodec0>
Getting state of mpeg4
0:00:00.214288334  7636       0xbcd280 DEBUG                    omx
gstomx.c:884:gst_omx_component_get_state:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 returning state Executing
0:00:00.214297064  7636       0xbcd280 DEBUG                    omx
gstomx.c:1436:gst_omx_port_set_flushing:<omxmpeg4videodec-omxmpeg4videodec0>
Setting mpeg4 port 0 to not flushing
0:00:00.214305654  7636       0xbcd280 DEBUG                    omx
gstomx.c:1442:gst_omx_port_set_flushing:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 port 0 was not flushing already
0:00:00.214314105  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.214327934  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.214336594  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 0 definition: None (0x00000000)
0:00:00.214345534  7636       0xbcd280 DEBUG                    omx
gstomx.c:1561:gst_omx_port_set_flushing:<omxmpeg4videodec-omxmpeg4videodec0>
Set mpeg4 port 0 to not flushing: None (0x00000000)
0:00:00.214354823  7636       0xbcd280 DEBUG                    omx
gstomx.c:1436:gst_omx_port_set_flushing:<omxmpeg4videodec-omxmpeg4videodec0>
Setting mpeg4 port 1 to not flushing
0:00:00.214363553  7636       0xbcd280 DEBUG                    omx
gstomx.c:997:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Getting mpeg4 parameter at index 0x02000001
OMX-   Getting parameter 33554433
OMX-In omx_base_component_GetParameter
OMX-Getting parameter 33554433
0:00:00.214377661  7636       0xbcd280 DEBUG                    omx
gstomx.c:1000:gst_omx_component_get_parameter:<omxmpeg4videodec-omxmpeg4videodec0>
Got mpeg4 parameter at index 0x02000001: None (0x00000000)
0:00:00.214386601  7636       0xbcd280 DEBUG                    omx
gstomx.c:1191:gst_omx_port_update_port_definition:<omxmpeg4videodec-omxmpeg4videodec0>
Updated mpeg4 port 1 definition: None (0x00000000)
0:00:00.214395750  7636       0xbcd280 DEBUG                    omx
gstomx.c:1561:gst_omx_port_set_flushing:<omxmpeg4videodec-omxmpeg4videodec0>
Set mpeg4 port 1 to not flushing: None (0x00000000)
0:00:00.214405178  7636       0xbcd280 DEBUG                    omx
gstomx.c:973:gst_omx_component_get_last_error:<omxmpeg4videodec-omxmpeg4videodec0>
Returning last mpeg4 error: None (0x00000000)
0:00:00.214428505  7636       0xbcd280 DEBUG                    omx
gstomx.c:1215:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Acquiring mpeg4 buffer from port 0
0:00:00.214438493  7636       0xbcd280 DEBUG                    omx
gstomx.c:1326:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 port 0 has pending buffers
0:00:00.214447083  7636       0xbcd280 DEBUG                    omx
gstomx.c:1345:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Acquired buffer 0xaad780 (0x7f3e40017780) from mpeg4 port 0: 0
0:00:00.214461820  7636       0xbcd280 DEBUG                    omx
gstomx.c:1367:gst_omx_port_release_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Releasing buffer 0xaad780 (0x7f3e40017780) to mpeg4 port 0
OMX-In omx_base_component_EmptyThisBuffer
OMX-In base_port_SendBufferFunction portIndex 0
OMX-In base_port_SendBufferFunction Signalling bMgmtSem Port Index=0
0:00:00.214494505  7636       0xbcd280 DEBUG                    omx
gstomx.c:1412:gst_omx_port_release_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Released buffer 0xaad780 to mpeg4 port 0: None (0x00000000)
0:00:00.214506658  7636       0xbcd280 DEBUG                    omx
gstomx.c:1215:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Acquiring mpeg4 buffer from port 0
0:00:00.214515877  7636       0xbcd280 DEBUG                    omx
gstomx.c:1326:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
mpeg4 port 0 has pending buffers
0:00:00.214524328  7636       0xbcd280 DEBUG                    omx
gstomx.c:1345:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Acquired buffer 0xaaae20 (0x7f3e4001f790) from mpeg4 port 0: 0
0:00:00.214560505  7636       0xbcd280 DEBUG                    omx
gstomx.c:1367:gst_omx_port_release_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Releasing buffer 0xaaae20 (0x7f3e4001f790) to mpeg4 port 0
OMX-In omx_base_component_EmptyThisBuffer
OMX-In base_port_SendBufferFunction portIndex 0
OMX-In base_port_SendBufferFunction Signalling bMgmtSem Port Index=0
0:00:00.214577128  7636       0xbcd280 DEBUG                    omx
gstomx.c:1412:gst_omx_port_release_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Released buffer 0xaaae20 to mpeg4 port 0: None (0x00000000)
0:00:00.244461312  7636       0xbcd280 DEBUG                    omx
gstomx.c:1215:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Acquiring mpeg4 buffer from port 0
0:00:00.244497700  7636       0xbcd280 DEBUG                    omx
gstomx.c:1313:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Queue of mpeg4 port 0 is empty
0:00:00.244529896  7636 0x7f3e400024a0 DEBUG                    omx
gstomx.c:1313:gst_omx_port_acquire_buffer:<omxmpeg4videodec-omxmpeg4videodec0>
Queue of mpeg4 port 1 is empty
OMX-In omx_base_filter_BufferMgmtFunction
OMX-Waiting for next input/output buffer
OMX-Waiting for input buffer semval=2
OMX-Waiting for next input/output buffer
OMX-Waiting for input buffer semval=1
OMX-Waiting for next input/output buffer

Any help from you is highly appreciated...!!!!

Thanks,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-openmax/attachments/20130503/fd80a57a/attachment-0001.html>


More information about the gstreamer-openmax mailing list