Commit graph

72 commits

Author SHA1 Message Date
Olivier Crête
ff2603a727 Port to Gst 0.11 2012-04-13 12:16:34 -04:00
Sebastian Dröge
9e6665e8f8 omx: Add hack for encoder components that don't allow empty EOS buffers 2011-12-09 12:24:01 +01:00
Sebastian Dröge
72fa93956b omx: Remove QCOM hack to reset nOffset in EmptyBufferDone
This is now done in a generic way that does not require any
hacks because it will work without any side effects on any
OMX implementation.
2011-10-14 10:27:47 +02:00
Sebastian Dröge
792cdb7d1f omxvideodec: New hack for QCOM to recreate the component instead of reconfiguring it on caps changes 2011-09-28 10:35:31 +02:00
Sebastian Dröge
837fc4ca66 omx: Add hack for Qualcomm's OMX implementation to manually reset nOffset in EmptyBufferDone 2011-09-26 13:05:23 +02:00
Sebastian Dröge
f0fe1148b7 omx: Wait until the Executing state is reached before calling OMX_FillThisBuffer()
This correctly works around the QCOM race condition that happens when calling
FTB after setting the new state and before reaching it.
2011-09-14 10:16:41 +02:00
Sebastian Dröge
8791be3f95 omx: Add parenthesis at correct places in the struct init macro 2011-08-08 13:04:30 +02:00
Sebastian Dröge
aced7478ab omx: Add a hacks flag for the Qualcomm 7x30 OMX_FillThisBuffer() race and make it optional 2011-08-01 13:22:05 +02:00
Sebastian Dröge
f2b456e2e6 omx: Add wrapper functions for OMX_[GS]et{Config,Parameter} 2011-07-28 12:16:43 +02:00
Sebastian Dröge
35850e7233 omx: Add macro to initialize OpenMAX structures 2011-07-28 12:16:43 +02:00
Sebastian Dröge
2343decb3c omxvideoenc: Add video encoder base class and MPEG4 video encoder
Unfortunately requires lots of hacks again to work properly with
Bellagio.
2011-07-20 11:08:18 +02:00
Sebastian Dröge
b6558570bf omx: Rework port reconfiguration again and only use the Bellagio specific hacks with Bellagio
We only reconfigure ports that need to be reconfigured now instead of
always all ports.
2011-07-19 10:33:54 +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
f0cbbad0f1 omx: Add support for setting the component-role 2011-07-13 20:37:02 +02:00
Sebastian Dröge
0a9fe2f146 omx: Improve error reporting by formatting the error codes better and also providing their string representation 2011-07-13 20:22:51 +02:00
Sebastian Dröge
940febae88 omx: Add initial version of configuration system
This now only registers elements that are specified in the
configuration file.

The configuration file is a keyfile in the first XDG configuration
directory with the name gstomx.conf.
2011-07-12 11:04:11 +02:00
Sebastian Dröge
db08890edd omx: Rework port reconfiguration
We always reconfigure all ports now if the settings of one
port changes to prevent lots of race conditions, dropped
frames and similar issues.
2011-07-09 11:06:06 +02:00
Sebastian Dröge
43b9dee4b2 omx: Clarify GQueue/GPtrArray element types 2011-07-09 11:06:06 +02:00
Sebastian Dröge
c8c1c7f10f omx: Add more checks to acquire_buffer() and return the current state additional to the buffer
Also refactor the code flow in the video decoder for this. This makes
the usage of acquire_buffer() easier and more atomic.
2011-07-09 11:06:06 +02:00
Sebastian Dröge
5d4f7890c2 omx: Don't use port_def.bEnabled to check if the Enable/Disable command is finished
bEnabled should be set immediately after sending the command, it's only
Bellagio that waits until the command is finished before setting it.
2011-07-09 11:06:05 +02:00
Sebastian Dröge
3d50c1f99c omx: Improve error handling and reporting 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