[Gstreamer-openmax] Proposal of new implementation

giulio urlini giulio.urlini at gmail.com
Wed Jan 26 07:40:24 PST 2011


Hi Felipe,
   my two cents from Bellagio, with an opinion of pros and cons of
Bellagio framework.

The Bellagio framework has been build so complicated in order to cover
all the definition and use cases of the standard, trying to reflect
the general opinion of the OpenMAX Khronos group about the behavior of
core and components in any use case. It covers also all the spec, with
a full interoperability support.
Finally it has a support for multiple loaders mechanism, necessary to
allow the necessary flexibility since this part is not covered
intentionally by the standard.

For sure I'll take a look at your implementation, but my opinion is
that the spec itself, if considered entirely is complicated, and a
"reference" implementation would be complicated as well.

Actually in Linaro Bellagio has been recognized as the reference for
standard OpenMAX support, so probably concentrating the efforts on it
and on the improvement of the interaction with gst-omx can be useful
for everyone.

https://wiki.linaro.org/WorkingGroups/Middleware/Multimedia/Specs/1105/StandardizeBellagioOmxCore

We are totally open to it, and we are increasing the effort spent on
this project.

Best Regards,

Giulio

On Wed, Jan 26, 2011 at 16:05, Benjamin Gaignard
<benjamin.gaignard at linaro.org> wrote:
> Hi,
>
> 1) I use bellagio only for the first tests on my desktop before going on
> "real" world  (I mean on the ARM device from TI, STE or Freescale or
> anyother with openmax components).
>
> 2) Most of the ARM devices don't have hw decoder/encoder with MMU
> capabilities (and yes it is a shame) so we have to take of that, and the
> "share buffer" hack doesn't in this case.
>
> 3) about gst_pad_alloc_buffer: you are right is it a problem with ring
> buffer, and Rob comments also suggest that isn't a good idea...
>
> Benjamin
> 2011/1/26 Felipe Contreras <felipe.contreras at gmail.com>
>>
>> Hi,
>>
>> On Mon, Jan 24, 2011 at 3:16 PM, Benjamin Gaignard
>> <benjamin.gaignard at linaro.org> wrote:
>> > For Linaro project I working on a new implementation of gst-openmax to
>> > allow
>> > zero copy between OMX element in gstreamer.
>> >
>> > On this page:
>> >
>> > https://wiki.linaro.org/WorkingGroups/Middleware/Multimedia/Specs/1105/ConsolidateGtsOmxMultivendor
>> > I have put sequence diagrams of what we want to achieve.
>> >
>> > We are looking for feedbacks about this proposal and all comment are
>> > welcome.
>>
>> Here are my comments:
>>
>> 1) Why bellagio?
>>
>> Bellagio is largely unmaintained and too complicated IMO. I have
>> contributed to the bellagio project, and although I think it has
>> contributed greatly to the OpenMAX ecosystem, I think I can write
>> something simpler that does the same in a short period of time. In
>> fact, I kind of did already:
>>
>> https://github.com/felipec/libomxil-g
>>
>> This is a good example of how simple an OpenMAX IL implementation can be.
>>
>> Also, recently bellagio stopped working at all for me.
>>
>> 2) gst-openmax already has zero-copy support
>>
>> Through the "share buffer" hacks, which is not ideal, but it works on
>> the implementations that support this. Any hardware that has an MMU
>> (all decent hw should) should have no trouble with it.
>>
>> Your solution on the other hand would _not_ provide zero-copy support
>> for non-omx elements.
>>
>> 3) Your solution doesn't conform with GStreamer API
>>
>> You can't just pad_buffer_alloc() and unref a buffer. If this buffer
>> comes from a sink that has a ring-buffer, like pulsesink, the sequence
>> would be screwed up.
>>
>> This could be easily fixed by checking of the next element implements
>> the gst-openmax interface, and add some kind of query.
>>
>> Cheers.
>>
>> --
>> Felipe Contreras
>
>
> ------------------------------------------------------------------------------
> Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
> Finally, a world-class log management solution at an even better price-free!
> Download using promo code Free_Logger_4_Dev2Dev. Offer expires
> February 28th, so secure your free ArcSight Logger TODAY!
> http://p.sf.net/sfu/arcsight-sfd2d
> _______________________________________________
> Gstreamer-openmax mailing list
> Gstreamer-openmax at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-openmax
>
>




More information about the Gstreamer-openmax mailing list