Julien Isorce
80c6dd46a1
omxvideodec: use OMX_UseBuffer
...
For example this allows the omx decoder to directly fill the
pixmaps coming from the video sink.
It only avoids a buffer copy when the decoder uses a pool provided
by a downstream element. So let's restrict this usage to situations
where the decoder decides to use a downstream buffer pool.
Tested with Tizonia/OMX.Aratelia.video_decoder.vp8
and with Bellagio/OMX.mesa.video_decoder.avc.
If it fails to setup buffers with OMX_UseBuffer the decoders
fallbacks to usual OMX_AllocateBuffer.
Also it allows to test on desktop the GstOMXBufferPool->other_pool
management which was previously only used in the OMX_UseEGLImage
case, i.e. on Rpi.
https://bugzilla.gnome.org/show_bug.cgi?id=784069
2017-07-12 16:36:03 +01:00
Sebastian Dröge
d75334456d
omx: Let base classes handle EOS
...
https://bugzilla.gnome.org//show_bug.cgi?id=734774
2014-08-14 17:36:11 +03:00
Sebastian Dröge
8a1bb1b4a3
omxvideodec: Add support for egl_render on RPi
2013-03-26 14:00:03 +01:00
Sebastian Dröge
0cd96e8c6b
omxvideodec: Add buffer pool for sharing OpenMAX memory with downstream
2013-03-07 14:10:12 +01:00
Sebastian Dröge
e08b801fea
omxvideodec: Rename component variable
2013-02-25 09:19:08 +01:00
Sebastian Dröge
219a93bbaf
omx: Some minor refactoring and cleanup
2013-02-12 11:49:21 +01:00
Sebastian Dröge
4044aaecbe
omx: Fix includes to properly work with the 1.0 releases
2013-01-17 18:08:15 +01:00
Sebastian Dröge
2481ceb8c4
omx: Update to new GLib thread API
2012-11-12 11:29:48 +01:00
Sebastian Dröge
5fdb490f1a
omx: Port to video base classes from -base
2012-10-22 14:20:41 +02:00
Olivier Crête
ff2603a727
Port to Gst 0.11
2012-04-13 12:16:34 -04:00
Sebastian Dröge
05ad3343bf
omxvideodec: Use correct timestamp, duration and filled length for the EOS buffers
2011-12-06 12:47:12 +01:00
Sebastian Dröge
9251e0004c
omxvideodec: Don't try to drain the component after EOS
...
And don't send EOS twice in any case. This most likely
will cause the component to not output it again and
is not necessary anyway.
2011-11-08 11:08:06 +01:00
Sebastian Dröge
e4b7ffcc1b
omxvideodec: Implement draining of the component and use it
...
This makes sure that all buffers are decoded and pushed downstream
before flushing the ports and losing some buffers.
2011-11-01 16:23:22 +01:00
Sebastian Dröge
3b4260e54f
omxvideodec: Forward downstream flow returns to upstream
2011-11-01 13:58:38 +01:00
Sebastian Dröge
bb1dd8aaba
omxvideodec: Add API for subclasses to prepare/convert frames
2011-09-29 10:44:20 +02:00
Sebastian Dröge
4616d804ac
omx: Add infrastructure to enable special hacks for broken OpenMAX implementations
2011-07-19 10:33:15 +02:00
Sebastian Dröge
961445aa1b
omxvideodec: Only flush the component ports after we passed input to them
2011-07-14 07:58:41 +02:00
Sebastian Dröge
f0cbbad0f1
omx: Add support for setting the component-role
2011-07-13 20:37:02 +02:00
Sebastian Dröge
a24cdd41bc
omxvideodec: Make sink/src pad template caps configurable
2011-07-12 11:36:42 +02:00
Sebastian Dröge
0fbff1000f
omxvideodec: Use the frames storage of the base class instead of implementing our own
...
They could get out of sync and we could store already destroyed frames.
2011-07-09 11:06:06 +02:00
Sebastian Dröge
08181d86dc
omxvideodec: Make the inport and outport index configurable by the subclass
2011-07-09 11:06:05 +02:00
Sebastian Dröge
bc1e73e8c8
omx: Add initial version of OpenMAX framework, video decoder base class and MPEG4 video decoder
...
This currently hardcodes a lot of stuff but works at least.
Also adds a generic framework for handling OpenMAX cores, components
and ports.
2011-07-09 11:06:05 +02:00