summaryrefslogtreecommitdiff
path: root/omx/gstomxvideodec.h
Commit message (Collapse)AuthorAgeFilesLines
* omxvideodec: Remove dead codeNicolas Dufresne2019-01-251-1/+0
| | | | | The omxvideodec base class have a totally unused prepare_frame() vritual function, remove it.
* omxvideodec: always signal drain cond when stopping streaming loopGuillaume Desmottes2018-06-081-1/+1
| | | | | | | | | | | | If for some reason something goes wrong and we stop the streaming loop we may end up with other threads still waiting on the drain cond. No more buffers will be produced by the component so they were waiting forever. Fix this by always signalling this cond when stopping the streaming loop. https://bugzilla.gnome.org/show_bug.cgi?id=796207
* omxvideodec: add internal-entropy-buffers property on zynqultrascaleplusGuillaume Desmottes2018-01-301-0/+5
| | | | | | | Custom property to control the number of internal buffers used in the decoder to smooth out entropy decoding performance. https://bugzilla.gnome.org/show_bug.cgi?id=792528
* omxvideodec: use dynamic buffer mode on input if possibleGuillaume Desmottes2017-12-141-0/+1
| | | | | | | | Prevent from copying the input buffers between GStreamer and OMX. Tested on zynqultrascaleplus and rpi (without dynamic buffers). https://bugzilla.gnome.org/show_bug.cgi?id=787093
* omxvideodec: factor out enable and disable codeGuillaume Desmottes2017-08-081-0/+2
| | | | | | | | | | No semantic change, just factor out the code enabling and disabling the component to their own functions. Makes the code easier to read as the set_format() method was already pretty big. Will also allow us to easily change the enabling logic. https://bugzilla.gnome.org/show_bug.cgi?id=785967
* omxvideodec: make generic the OMX_UseEGLImage code pathJulien Isorce2017-08-011-1/+5
| | | | | | | | | | | | | Will be easier to maintain and to make enhancements. Tested with Tizonia on Desktop. Also tested with Bellagio to make sure it does not crash when calling OMX_UseEGLImage and indeed it returns NotImplemented. Then gst-omx fallback to OMX_UseBuffer if it can and so on. Also tested on rpi to make sure there is no regression. https://bugzilla.gnome.org/show_bug.cgi?id=784365
* omxvideodec: add dmabuf support for outputGuillaume Desmottes2017-07-181-0/+3
| | | | | | | | | | | The zynqultrascaleplus OMX implementation has a custom extension allowing decoders to output dmabuf and so avoid buffers copy between OMX and GStreamer. Make use of this extension when built on the zynqultrascaleplus. The buffer pool code should be re-usable for other platforms as well. https://bugzilla.gnome.org/show_bug.cgi?id=784847
* omxvideodec: use OMX_UseBufferJulien Isorce2017-07-121-0/+5
| | | | | | | | | | | | | | | | | | | | | 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
* omx: Let base classes handle EOSSebastian Dröge2014-08-141-3/+0
| | | | https://bugzilla.gnome.org//show_bug.cgi?id=734774
* omxvideodec: Add support for egl_render on RPiSebastian Dröge2013-03-261-1/+10
|
* omxvideodec: Add buffer pool for sharing OpenMAX memory with downstreamSebastian Dröge2013-03-071-0/+2
|
* omxvideodec: Rename component variableSebastian Dröge2013-02-251-2/+2
|
* omx: Some minor refactoring and cleanupSebastian Dröge2013-02-121-1/+0
|
* omx: Fix includes to properly work with the 1.0 releasesSebastian Dröge2013-01-171-0/+1
|
* omx: Update to new GLib thread APISebastian Dröge2012-11-121-2/+2
|
* omx: Port to video base classes from -baseSebastian Dröge2012-10-221-6/+7
|
* Port to Gst 0.11Olivier Crête2012-04-131-11/+2
|
* omxvideodec: Use correct timestamp, duration and filled length for the EOS ↵Sebastian Dröge2011-12-061-0/+2
| | | | buffers
* omxvideodec: Don't try to drain the component after EOSSebastian Dröge2011-11-081-0/+3
| | | | | | 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.
* omxvideodec: Implement draining of the component and use itSebastian Dröge2011-11-011-0/+6
| | | | | This makes sure that all buffers are decoded and pushed downstream before flushing the ports and losing some buffers.
* omxvideodec: Forward downstream flow returns to upstreamSebastian Dröge2011-11-011-0/+2
|
* omxvideodec: Add API for subclasses to prepare/convert framesSebastian Dröge2011-09-291-0/+1
|
* omx: Add infrastructure to enable special hacks for broken OpenMAX ↵Sebastian Dröge2011-07-191-0/+2
| | | | implementations
* omxvideodec: Only flush the component ports after we passed input to themSebastian Dröge2011-07-141-0/+3
|
* omx: Add support for setting the component-roleSebastian Dröge2011-07-131-0/+1
|
* omxvideodec: Make sink/src pad template caps configurableSebastian Dröge2011-07-121-0/+3
|
* omxvideodec: Use the frames storage of the base class instead of ↵Sebastian Dröge2011-07-091-2/+0
| | | | | | implementing our own They could get out of sync and we could store already destroyed frames.
* omxvideodec: Make the inport and outport index configurable by the subclassSebastian Dröge2011-07-091-0/+2
|
* omx: Add initial version of OpenMAX framework, video decoder base class and ↵Sebastian Dröge2011-07-091-0/+77
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.