[gst-devel] Gst-omx buffer renegotiation problem
Rob Clark
rob at ti.com
Mon Aug 2 21:44:56 CEST 2010
On Aug 1, 2010, at 11:59 AM, Mikko Hurskainen wrote:
> Hi all,
>
> I ran into a buffer renegotiation problem when trying to use gst-omx.
> Since I didn't found any other mailing list for gst-omx and the problem
> might be relevant for other gstreamer components as well I am posting my
> question here.
>
> So the problem is that when using the gst-omx video decoding the buffers
> are allocated automatically. The gst-omx queries from the component that
> how many and which size buffers it should allocate. The omx component
> replies to allocate very few and very small buffers. With those buffer
> sizes the decoding cannot proceed (input 2 buffers of size 256 and
> output 4 buffers of size 256).
I think normally the input port params should be set already, before buffers are allocated.. so the OMX component should be able to return sensible buffer sizes before gst-openmax transitions into executing state (and allocates buffers as part of that transition).
So I'm tempted to call this a bug in your OMX component. But including a log with "*omx*:5" traces would be helpful to see exactly what is going on.
BR,
-R
>
> When gstreamer does the preroll and the component starts decoding it
> posts settings changed event that contains the correct sizes of the
> buffers for input & output. The settings changed event is handled in the
> base_video_dec class, but only for resolution & color format.
>
> So far I've identified two solutions:
> - Always at the beginning allocate a big enough buffer, however, this
> solution has a drawback when dealing with HD resolutions
> - Implement buffer reneallocation into the base_video_dec class.
>
> The buffer reallocation seems to be the way to go, but before jumping
> into this I would like to ask if anybody else has encountered the same
> problem with some non-omx codec and how it was handled ? For example
> which state the gstreamer pipeline needs to be and so on ? Normally of
> course media file container provides these values, but sometimes that
> might be broken and/or unavailable.
>
> -- Mikko Hurskainen
>
>
> ------------------------------------------------------------------------------
> The Palm PDK Hot Apps Program offers developers who use the
> Plug-In Development Kit to bring their C/C++ apps to Palm for a share
> of $1 Million in cash or HP Products. Visit us here for more details:
> http://p.sf.net/sfu/dev2dev-palm
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list