3ccffb336481b92dd974e428b874e7155488fcd7
[platform/upstream/gstreamer.git] / ChangeLog
1 === release 1.13.90 ===
2
3 2018-03-03 23:00:59 +0000  Tim-Philipp Müller <tim@centricular.com>
4
5         * NEWS:
6         * RELEASE:
7         * configure.ac:
8         * gst-omx.doap:
9         * meson.build:
10           Release 1.13.90
11
12 2018-03-03 20:21:06 +0000  Tim-Philipp Müller <tim@centricular.com>
13
14         * config/Makefile.am:
15           config: dist tizonia config files
16
17 2018-03-02 11:06:08 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
18
19         * omx/gstomx.c:
20           Revert "omx: wait for flush complete and buffers being released when flushing"
21           This reverts commit 4211e4c29a262f110cb92ddf9c06b403ced233ef.
22
23 2018-02-21 12:50:42 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
24
25         * omx/gstomxvideoenc.c:
26           videoenc: don't set stride padding to 0 when copying frames
27           Padding can be left undefined there is no point filling it with 0.
28           https://bugzilla.gnome.org/show_bug.cgi?id=793694
29
30 2018-02-16 11:50:35 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
31
32         * omx/gstomxbufferpool.c:
33         * omx/gstomxh264enc.c:
34         * omx/gstomxh265enc.c:
35         * omx/gstomxvideo.c:
36         * omx/gstomxvideodec.c:
37         * omx/gstomxvideoenc.c:
38           add support for NV12_10LE32 and NV16_10LE32 on zynqultrascaleplus
39           The encoder and decoder on zynqultrascaleplus support these new 10 bits
40           format.
41           https://bugzilla.gnome.org/show_bug.cgi?id=793694
42
43 2018-02-16 11:46:47 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
44
45         * omx/gstomxvideoenc.c:
46           omxvideoenc: factor out gst_omx_video_enc_nv12_manual_copy()
47           No semantic change, I'm going to re-use it to copy the NV12_10LE32
48           format.
49           https://bugzilla.gnome.org/show_bug.cgi?id=793694
50
51 2018-01-17 10:40:49 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
52
53         * omx/gstomxvideoenc.c:
54           omxvideoenc: display the computed buffer size when configuring input
55           https://bugzilla.gnome.org/show_bug.cgi?id=793694
56
57 2018-02-06 14:25:57 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
58
59         * omx/gstomxvideoenc.c:
60         * omx/gstomxvideoenc.h:
61           videoenc: implement ROI on zynqultrascaleplus
62           Check input buffers for ROI meta and pass them to the encoder by using
63           zynqultrascaleplus's custom OMX extension. Also add a new
64           "default-roi-quality" in order to tell the encoder what quality level
65           should be applied to ROI by default.
66           https://bugzilla.gnome.org/show_bug.cgi?id=793696
67
68 2018-02-14 17:23:39 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
69
70         * omx/gstomxvideoenc.c:
71           omxvideoenc: remove GST_PARAM_MUTABLE_PLAYING from 'max-bitrate' property
72           This property isn't actually mutable in the PLAYING state.
73           https://bugzilla.gnome.org/show_bug.cgi?id=793458
74
75 2018-02-14 17:20:02 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
76
77         * omx/gstomxvideoenc.c:
78         * omx/gstomxvideoenc.h:
79           omxvideoenc: protect target_bitrate with the object lock
80           The 'target-bitrate' property can be changed while PLAYING
81           (GST_PARAM_MUTABLE_PLAYING). Make it thread-safe to prevent concurrent
82           accesses between the application and streaming thread.
83           https://bugzilla.gnome.org/show_bug.cgi?id=793458
84
85 2018-02-20 11:46:49 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
86
87         * omx/gstomxbufferpool.c:
88           omxbufferpool: add PERFORMANCE DEBUG message when copying output frames
89           I spent quiet some time figuring out why performance of my pipeline were
90           terrible. Turned out it was because of output frames being copied
91           because of stride/offset mismatch.
92           Add a PERFORMANCE DEBUG message to make it easier to spot and debug from logs.
93           https://bugzilla.gnome.org/show_bug.cgi?id=793637
94
95 2018-02-15 19:44:37 +0000  Tim-Philipp Müller <tim@centricular.com>
96
97         * configure.ac:
98         * meson.build:
99           Back to development
100
101 === release 1.13.1 ===
102
103 2018-02-15 17:50:14 +0000  Tim-Philipp Müller <tim@centricular.com>
104
105         * Makefile.am:
106         * NEWS:
107         * configure.ac:
108         * gst-omx.doap:
109         * meson.build:
110           Release 1.13.1
111
112 2017-06-30 15:15:06 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
113
114         * omx/gstomxh265enc.c:
115           omxh265enc: fix typo in "periodicty-idr" property name
116           Also fix the 'nick' of the property.
117           omxh265enc is based on the code from omxh264enc and suffers the same
118           typo as we fixed in https://bugzilla.gnome.org/show_bug.cgi?id=784370
119           This element isn't part of a stable release yet so it's not an API
120           break.
121           https://bugzilla.gnome.org/show_bug.cgi?id=793390
122
123 2018-02-08 19:18:59 +0000  Tim-Philipp Müller <tim@centricular.com>
124
125         * meson.build:
126           meson: make version numbers ints and fix int/string comparison
127           WARNING: Trying to compare values of different types (str, int).
128           The result of this is undefined and will become a hard error
129           in a future Meson release.
130           Also remove unused libversion/soversion.
131
132 2017-12-12 16:50:00 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
133
134         * configure.ac:
135         * meson.build:
136         * omx/gstomx.h:
137           include all OMX extension headers if present
138           The OMX specs defines 8 headers that implementations can use to define
139           their custom extensions. We were checking and including 3 and ignoring
140           the other ones.
141           https://bugzilla.gnome.org/show_bug.cgi?id=792043
142
143 2018-01-30 10:31:03 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
144
145         * meson.build:
146         * omx/meson.build:
147         * tools/meson.build:
148           meson: simplify OMX extensions detection
149           We are now always checking which files are present or not, even when using our
150           internal copy of OMX, rather than hardcoding the ones present in it.
151           https://bugzilla.gnome.org/show_bug.cgi?id=792043
152
153 2018-01-30 11:54:24 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
154
155         * meson.build:
156         * omx/meson.build:
157         * tools/meson.build:
158           Revert "meson: use include_directories() with external OMX headers path"
159           This reverts commit 9d37a92a615e54e8ee12f8c65bcfe386ec9de2d0.
160
161 2017-11-27 14:52:10 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
162
163         * omx/gstomxh265enc.c:
164         * omx/gstomxh265enc.h:
165           omxh265enc: add some encoding properties
166           constrained-intra-prediction and loop-filter-mode.
167           Those map standard OMX settings.
168           https://bugzilla.gnome.org/show_bug.cgi?id=792528
169
170 2017-11-23 15:54:15 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
171
172         * omx/gstomxh264enc.c:
173         * omx/gstomxh264enc.h:
174           omxh264enc: add some encoding properties
175           entropy-mode, constrained-intra-prediction and loop-filter-mode.
176           Those map standard OMX settings.
177           https://bugzilla.gnome.org/show_bug.cgi?id=792528
178
179 2017-06-08 12:31:21 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
180
181         * omx/gstomxvideoenc.c:
182         * omx/gstomxvideoenc.h:
183           omxvideoenc: add zynqultrascaleplus specific properties
184           https://bugzilla.gnome.org/show_bug.cgi?id=792528
185
186 2017-10-31 12:24:39 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
187
188         * omx/gstomxvideoenc.c:
189           omxvideoenc: document unit of target-bitrate property
190           nTargetBitrate and nEncodeBitrate are defined in bits per second in the
191           OMX spec.
192           https://bugzilla.gnome.org/show_bug.cgi?id=792528
193
194 2017-07-06 10:18:48 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
195
196         * omx/gstomxvideodec.c:
197         * omx/gstomxvideodec.h:
198           omxvideodec: add internal-entropy-buffers property on zynqultrascaleplus
199           Custom property to control the number of internal buffers used in the
200           decoder to smooth out entropy decoding performance.
201           https://bugzilla.gnome.org/show_bug.cgi?id=792528
202
203 2018-01-30 10:31:03 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
204
205         * meson.build:
206         * omx/meson.build:
207         * tools/meson.build:
208           meson: use include_directories() with external OMX headers path
209           It seems cleaner to use the proper meson tools to include this path
210           rather than manually tweak the build flags.
211           This also allows us to simplify the OMX extensions detection code. We
212           are now always checking which files are present, even when using our
213           internal copy of OMX, rather than hardcoding the ones present in it.
214           https://bugzilla.gnome.org/show_bug.cgi?id=792043
215
216 2017-11-07 15:09:35 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
217
218         * omx/gstomxvideoenc.c:
219           omxvideoenc: expose chroma format and bit depth in output caps
220           As we added in the parser (bgo#792039) expose the chroma and bit
221           depth information in output caps.
222           https://bugzilla.gnome.org/show_bug.cgi?id=792040
223
224 2017-11-07 14:30:45 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
225
226         * omx/gstomxvideoenc.c:
227           omxvideoenc: factor out get_output_caps()
228           No semantic change so far.
229           https://bugzilla.gnome.org/show_bug.cgi?id=792040
230
231 2017-12-29 11:59:36 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
232
233         * config/zynqultrascaleplus/gstomx.conf:
234         * omx/gstomx.c:
235         * omx/gstomx.h:
236         * omx/gstomxvideodec.c:
237           omxvideodec: add hack to pass color format from caps to OMX decoder
238           This hack tries to pass as much information as possible from caps to the
239           decoder before it receives any buffer. These information can be used by
240           the OMX decoder to, for example, pre-allocate its internal buffers
241           before starting to decode and so reduce its initial latency.
242           This mechanism is currently supported by the zynqultrascaleplus decoder.
243           https://bugzilla.gnome.org/show_bug.cgi?id=792040
244
245 2017-12-01 12:43:19 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
246
247         * omx/gstomx.c:
248           log failing OMX calls as errors
249           I find it confusing when debugging that OMX calls returning an error
250           where not logged as GST_LEVEL_ERROR making them harder to spot.
251           Fix this by introducing simple log macros checking the return value of
252           the OMX call and logging failures as errors.
253           https://bugzilla.gnome.org/show_bug.cgi?id=791069
254
255 2017-10-30 11:59:19 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
256
257         * omx/gstomx.c:
258           add OMX_PERFORMANCE debug category
259           Can be used to log buffers exchange between OMX and gst-omx to profile
260           performances of the OMX component.
261           Ideally this should be done using tracer hooks but it's currently not
262           possible to define custom hooks outside of core.
263           Use GST_DEBUG="OMX_PERFORMANCE:8" to enable it.
264           See also
265           https://github.com/gdesmott/gst-log-parser/blob/master/src/bin/omx-perf.rs
266           as a simple program consuming those logs to generate gnuplot files and
267           stats.
268           https://bugzilla.gnome.org/show_bug.cgi?id=791093
269
270 2017-07-27 11:21:59 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
271
272         * omx/gstomx.c:
273         * omx/gstomx.h:
274         * omx/gstomxvideoenc.c:
275         * omx/gstomxvideoenc.h:
276           omxvideoenc: implement dmabuf import on zynqultrascaleplus
277           The Zynq UltraScale+ encoder implements a custom OMX extension to
278           directly import dmabuf saving the need of mapping input buffers.
279           This can be use with either 'v4l2src io-mode=dmabuf' or an OMX video
280           decoder upstream.
281           https://bugzilla.gnome.org/show_bug.cgi?id=792361
282
283 2017-09-22 16:02:40 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
284
285         * omx/gstomxvideoenc.c:
286           omxvideoenc: drop late input frames if QoS is enabled
287           Make use of the new GstVideoEncoder QoS API to drop late input frames. This may
288           help a live pipeline to catch up if it's being late and all frames end up
289           being dropped at the sink.
290           https://bugzilla.gnome.org/show_bug.cgi?id=792783
291
292 2018-01-19 15:18:23 +0530  Ashish Kumar <kr.ashish@samsung.com>
293
294         * examples/egl/testegl.c:
295           TestEgl: Removed redundant/unused code
296           https://bugzilla.gnome.org/show_bug.cgi?id=788550
297
298 2018-01-03 16:07:18 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
299
300         * omx/gstomxvideoenc.c:
301           omxvideoenc: early return in fill_buffer() if something goes wrong
302           If something goes wrong while trying to manually copy the input buffer,
303           the 'break' was moving us out of the 'for' loop but not out of the switch block.
304           So we ended up calling gst_video_frame_unmap() a second time (raising
305           assertions) and returning TRUE rather than FALSE.
306           Reproduced with a WIP zynqultrascaleplus OMX branch reporting wrong
307           buffer sizes and so triggering this bug.
308           https://bugzilla.gnome.org/show_bug.cgi?id=792167
309
310 2017-12-19 16:09:41 +0000  Tim-Philipp Müller <tim@centricular.com>
311
312         * meson.build:
313           meson: gl: the winsys and platform list in the .pc file is space-separated
314
315 2017-12-19 16:08:58 +0000  Tim-Philipp Müller <tim@centricular.com>
316
317         * meson.build:
318           meson: fix subproject fallback for gstreamer-gl-1.0
319           It's now in -base.
320
321 2017-12-12 17:30:27 +0000  Julien Isorce <jisorce@oblong.com>
322
323         * omx/gstomxvideo.c:
324         * omx/gstomxvideo.h:
325         * omx/gstomxvideodec.c:
326           omxvideodec: ignore very little variations of the framerate
327           If less than 1%.
328           The dynamic format change should not happen when the
329           resolution does not change and when only the framerate
330           changes but very slightly, i.e. from 50000/1677=29.81
331           to 89/3=29.66 so a "percentage change" of less than 1%
332           (i.e. 100*(29.81-29.66)/29.66 = 0.50 < 1 ). In that case
333           just ignore it to avoid unnecessary renegotiation.
334           https://bugzilla.gnome.org/show_bug.cgi?id=759043
335
336 2017-08-09 12:07:33 -0400  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
337
338         * omx/gstomxvideodec.c:
339         * omx/gstomxvideodec.h:
340           omxvideodec: use dynamic buffer mode on input if possible
341           Prevent from copying the input buffers between GStreamer and OMX.
342           Tested on zynqultrascaleplus and rpi (without dynamic buffers).
343           https://bugzilla.gnome.org/show_bug.cgi?id=787093
344
345 2017-07-20 16:35:31 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
346
347         * omx/gstomxvideoenc.c:
348         * omx/gstomxvideoenc.h:
349           omxvideoenc: use dynamic buffer mode on input if possible
350           If the OMX component supports dynamic buffer mode and the input buffers
351           are properly aligned avoid copying each input frame between OMX and
352           GStreamer.
353           Tested on zynqultrascaleplus and rpi (without dynamic buffers).
354           https://bugzilla.gnome.org/show_bug.cgi?id=787093
355
356 2017-07-20 12:56:37 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
357
358         * omx/gstomxvideodec.c:
359         * omx/gstomxvideoenc.c:
360           omxvideoenc/dec: factor out input buffer allocation
361           No semantic change so far. I'm going to add an alternate way to allocate
362           input buffers.
363           https://bugzilla.gnome.org/show_bug.cgi?id=787093
364
365 2017-07-20 16:31:54 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
366
367         * omx/gstomx.c:
368         * omx/gstomx.h:
369           omx: add API to implement dynamic buffers support
370           OMX 1.2.0 introduced a third way to manage buffers by allowing
371           components to only allocate buffers header during their initialization
372           and change their pBuffer pointer at runtime.
373           This new feature can save us a copy between GStreamer and OMX for each
374           input buffer.
375           This patch adds API to allocate and use such buffers.
376           https://bugzilla.gnome.org/show_bug.cgi?id=787093
377
378 2017-12-14 14:53:17 +1100  Matthew Waters <matthew@centricular.com>
379
380         * common:
381           Automatic update of common submodule
382           From e8c7a71 to 3fa2c9e
383
384 2017-12-13 12:06:40 +0000  Julien Isorce <jisorce@oblong.com>
385
386         * omx/gstomxvideodec.c:
387           omxvideodec: consolidate the decision to try UseBuffer
388           The tee element can call gst_query_add_allocation_pool with pool as NULL.
389           Checking nth > 0 is not enough so we need to verify if there is a pool.
390           https://bugzilla.gnome.org/show_bug.cgi?id=730758
391           https://bugzilla.gnome.org/show_bug.cgi?id=784069
392
393 2017-12-12 14:45:30 +0000  Julien Isorce <jisorce@oblong.com>
394
395         * omx/gstomxvideo.c:
396         * omx/gstomxvideo.h:
397         * omx/gstomxvideodec.c:
398         * omx/gstomxvideoenc.c:
399           gstomxvideodec: fix framerate overflow
400           Some live streams can set the framerate to 50000/1677 (=29.81).
401           GstVideoInfo.fps_n << 16 is wrong if the fps_n is 50000
402           (i.e. greater than 32767).
403           https://bugzilla.gnome.org/show_bug.cgi?id=759043
404
405 2017-08-22 13:48:26 +0100  Julien Isorce <jisorce@oblong.com>
406
407         * configure.ac:
408         * examples/egl/Makefile.am:
409         * examples/egl/meson.build:
410         * examples/egl/testegl.c:
411         * meson.build:
412           example: port testegl.c to desktop
413           Will be easier to maintain.
414           Also uniformize autotool build with meson build which is
415           already retrieving the gl libs.
416           https://bugzilla.gnome.org/show_bug.cgi?id=781606
417
418 2017-12-11 15:55:44 +0000  Julien Isorce <jisorce@oblong.com>
419
420         * meson.build:
421           meson: move omx features check after target selection
422           And uses gst_omx_args instead of add_global_arguments.
423           Similar to c69232852120d064c689caef07b3c68ad8fe6288
424           which was only for configure.ac
425           Useful to get omxvp8dec with meson too:
426           meson . buildtmp -D with_omx_target=tizonia
427           https://bugzilla.gnome.org/show_bug.cgi?id=782800
428
429 2017-12-04 17:11:04 +0000  Julien Isorce <jisorce@oblong.com>
430
431         * config/tizonia/gstomx.conf.in:
432           config: add OMX.Aratelia.audio_decoder.aac to Tizonia config
433           Useful mostly for testing/debugging purpose as this is a software
434           based decoder (libfaad) for which GStreamer provides a direct
435           wrapper.
436           https://bugzilla.gnome.org/show_bug.cgi?id=791482
437
438 2017-11-29 14:18:41 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
439
440         * omx/gstomxvideodec.c:
441           omxvideodec: retrieve OMX_IndexParamVideoPortFormat before setting it
442           The usual pattern when setting OMX params is to first get the struct
443           param, override the values we want to set and then set the updated
444           param.
445           We were not doing this with OMX_IndexParamVideoPortFormat and so were
446           resetting some fields such as OMX_VIDEO_PARAM_PORTFORMATTYPE.xFramerate
447           https://bugzilla.gnome.org/show_bug.cgi?id=790979
448
449 2017-05-21 17:34:51 +0100  Julien Isorce <jisorce@oblong.com>
450
451         * omx/gstomxaacenc.c:
452           omxaacenc: also set 'profile' if mpegversion is 4
453           Like done by gst_codec_utils_aac_caps_set_level_and_profile
454           which is called by avenc_aac, ffaac and voaacenc.
455           https://bugzilla.gnome.org/show_bug.cgi?id=735208
456
457 2017-10-24 12:19:50 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
458
459         * omx/gstomx.c:
460           omx: wait for flush complete and buffers being released when flushing
461           As stated in the existing comment, when flusing we should wait for OMX
462           to send the flush command complete event AND all ports being released.
463           We were stopping as soon as one of those condition was met.
464           Fix a race between FillThisBufferDone/EmptyBufferDone and the flush
465           EventCmdComplete messages. The OMX implementation is supposed to release
466           its buffers before posting the EventCmdComplete event but the ordering
467           isn't guaranteed as the FillThisBufferDone/EmptyBufferDone and
468           EventHandler callbacks can be called from different threads (cf 2.7
469           'Thread Safety' in the spec).
470           https://bugzilla.gnome.org/show_bug.cgi?id=789475
471
472 2017-10-24 11:45:20 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
473
474         * omx/gstomx.c:
475           gst_omx_port_set_flushing: simplify waiting loop
476           No semantic change so far, I just made the 'while' end condition easier
477           to understand as a first step before changing it.
478           - move error/time out checks inside the loop to make it clearer on what
479           we are actually waiting for.
480           - group port->buffers checks together with parenthesis as they are part
481           of the same conceptual check: waiting for all buffers to be released.
482           https://bugzilla.gnome.org/show_bug.cgi?id=789475
483
484 2017-11-27 20:17:17 +1100  Matthew Waters <matthew@centricular.com>
485
486         * common:
487           Automatic update of common submodule
488           From 3f4aa96 to e8c7a71
489
490 2017-11-23 15:03:48 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
491
492         * omx/gstomxh264enc.c:
493         * omx/gstomxh264utils.c:
494           zynqultrascaleplus: add support for extra AVC levels
495           The Zynqultrascaleplus has support for extra AVC levels not defined in
496           the OMX spec as a customer extension.
497           https://bugzilla.gnome.org/show_bug.cgi?id=790758
498
499 2017-10-16 14:47:07 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
500
501         * .gitignore:
502         * Makefile.am:
503         * config/meson.build:
504         * configure.ac:
505         * meson.build:
506         * tests/Makefile.am:
507         * tests/check/.gitignore:
508         * tests/check/Makefile.am:
509         * tests/check/generic/.gitignore:
510         * tests/check/generic/states.c:
511         * tests/check/meson.build:
512         * tests/meson.build:
513           add test support
514           Most of the boilerplate and the states test has been copied from
515           gst-plugins-good.
516           https://bugzilla.gnome.org/show_bug.cgi?id=789094
517
518 2017-10-17 13:07:05 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
519
520         * meson.build:
521         * tools/meson.build:
522           meson: add tools support
523           Looks like the tools directory was left out during the initial port to
524           meson.
525           https://bugzilla.gnome.org/show_bug.cgi?id=789090
526
527 2017-10-16 14:24:50 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
528
529         * omx/gstomx.c:
530           omx: fix build on rpi
531           The nTimeStamp field is a OMX_TICKS struct on the rpi so use the proper
532           macro to set it.
533           Fix build on the build which has been broken by
534           b3173144b7c1b12c9e1b7571f78659be45d813f6
535           https://bugzilla.gnome.org/show_bug.cgi?id=789052
536
537 2017-10-17 12:11:04 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
538
539         * configure.ac:
540         * meson.build:
541           check if Allegro headers are present when building zynqultrascaleplus
542           The Zynq UltraScale+ uses a custom version of OMX implementing several
543           3rd party extensions. Make sure those are present when building this
544           target.
545           https://bugzilla.gnome.org/show_bug.cgi?id=788064
546
547 2017-10-16 12:42:44 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
548
549         * omx/gstomxvideodec.c:
550           omxvideodec: remove redundant debug message
551           We have already a debug message right after.
552           https://bugzilla.gnome.org/show_bug.cgi?id=789058
553
554 2017-10-16 13:26:38 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
555
556         * omx/gstomxh265enc.c:
557         * omx/gstomxh265utils.c:
558           omxh265: fix enum casting when using Allegro HEVC extensions
559           Allegro's HEVC implementation defines a superset of the profiles and
560           enums from the Android implementation.
561           Properly cast to fix -Wenum-conversion warnings from clang.
562           https://bugzilla.gnome.org/show_bug.cgi?id=789057
563
564 2017-10-16 13:08:12 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
565
566         * omx/gstomxh265enc.c:
567         * omx/gstomxvp8dec.c:
568           properly cast extension enums
569           OMX's allow 3rds party to define extensions using their own enums
570           (like OMX_VIDEO_CODINGEXTTYPE) and to be used as the general
571           ones (like OMX_VIDEO_CODINGTYPE).
572           Properly cast those to fix -Wenum-conversion warnings from some
573           compilers such as clang.
574           https://bugzilla.gnome.org/show_bug.cgi?id=789057
575
576 2017-10-09 13:12:35 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
577
578         * omx/gstomx.c:
579           omx: also reset nTimeStamp when re-using buffers
580           Some OMX implementations may check if the timestamp of the output buffers
581           they receive is actually not set.
582           https://bugzilla.gnome.org/show_bug.cgi?id=788711
583
584 2017-10-04 17:11:55 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
585
586         * omx/gstomx.c:
587           omx: factor out gst_omx_buffer_reset()
588           https://bugzilla.gnome.org/show_bug.cgi?id=788711
589
590 2017-10-09 17:27:22 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
591
592         * omx/gstomx.c:
593         * omx/gstomx.h:
594         * omx/gstomxvideodec.c:
595         * omx/gstomxvideoenc.c:
596           add gst_omx_buffer_flags_to_string()
597           Make debug logs more readable so users don't have to manually figure out
598           the meaning of flags.
599           https://bugzilla.gnome.org/show_bug.cgi?id=788767
600
601 2017-09-27 19:47:29 +0530  Ponnam Srinivas <p.srinivas@samsung.com>
602
603         * omx/gstomxh263enc.c:
604           h263enc: fix caps leak in error code path
605           https://bugzilla.gnome.org/show_bug.cgi?id=788245
606
607 2017-09-21 15:21:36 +0530  Ponnam Srinivas <p.srinivas@samsung.com>
608
609         * omx/gstomxh264enc.c:
610           omxh264enc: fix caps leak
611           https://bugzilla.gnome.org/show_bug.cgi?id=787711
612
613 2017-09-21 11:36:46 +0530  Ponnam Srinivas <p.srinivas@samsung.com>
614
615         * omx/gstomxh265enc.c:
616           omxh265enc: fix caps leak
617           https://bugzilla.gnome.org/show_bug.cgi?id=787714
618
619 2017-09-13 15:32:51 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
620
621         * omx/gstomxvideodec.c:
622           omxvideodec: log info about frame before releasing it
623           gst_video_decoder_release_frame() takes ownership of the frame and will
624           destroy it. So we should no longer use it after calling it.
625           https://bugzilla.gnome.org/show_bug.cgi?id=787628
626
627 2017-08-20 20:19:33 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
628
629         * configure.ac:
630           configure: Show tizonia target in help
631           https://bugzilla.gnome.org/show_bug.cgi?id=786544
632
633 2017-07-12 14:35:10 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
634
635         * config/zynqultrascaleplus/gstomx.conf:
636         * omx/Makefile.am:
637         * omx/gstomx.c:
638         * omx/gstomxh265dec.c:
639         * omx/gstomxh265dec.h:
640         * omx/meson.build:
641           omxh265dec: add H265 decoder
642           Add HEVC decoder for the zynqultrascaleplus platform.
643           I used the H264 decoder code as a template.
644           https://bugzilla.gnome.org/show_bug.cgi?id=785434
645
646 2017-07-12 11:01:15 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
647
648         * config/zynqultrascaleplus/gstomx.conf:
649         * configure.ac:
650         * meson.build:
651         * omx/Makefile.am:
652         * omx/gstomx.c:
653         * omx/gstomxh265enc.c:
654         * omx/gstomxh265enc.h:
655         * omx/gstomxh265utils.c:
656         * omx/gstomxh265utils.h:
657         * omx/meson.build:
658           omxh265enc: add H265 encoder
659           The OMX spec doesn't support HEVC but the OMX stack of the
660           zynqultrascaleplus adds it as a custom extension.
661           It uses the same API as the one of Android's OMX stack.
662           I used the H264 encoder code as a template.
663           https://bugzilla.gnome.org/show_bug.cgi?id=785434
664
665 2017-08-28 13:56:22 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
666
667         * omx/gstomxvideoenc.c:
668           omxvideoenc: use caps from query in propose_allocation
669           Prevent crash by not deferencing a NULL pointer if self->input_state
670           isn't defined when propose_allocation() is called.
671           https://bugzilla.gnome.org/show_bug.cgi?id=786442
672
673 2017-09-04 09:34:03 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
674
675         * omx/gstomx.c:
676           omx: display states as string if changing failed
677           Improve the error message by displaying the states in their string
678           representation rather than their numerical value.
679           https://bugzilla.gnome.org/show_bug.cgi?id=787235
680
681 2017-08-22 10:22:45 +0100  Julien Isorce <jisorce@oblong.com>
682
683         * omx/gstomxvideodec.c:
684           omxvideodec: EGLDisplay is not indirectly defined by gstgl headers inclusion
685           Just use gpointer as done in GstGL to not include
686           EGL/egl.h just for EGLDisplay.
687           https://bugzilla.gnome.org/show_bug.cgi?id=784779
688
689 2017-07-14 16:34:04 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
690
691         * config/tizonia/gstomx.conf.in:
692           config: expose OMX.mesa h264 decoder and encoder in Tizonia config
693           https://bugzilla.gnome.org/show_bug.cgi?id=783976
694
695 2017-08-11 07:48:37 -0700  Julien Isorce <jisorce@oblong.com>
696
697         * omx/gstomxvideodec.c:
698           omxvideodec: remove wrong SettingsChanged ack
699           Partially revert 1b7d0b8:
700           omxvideodec: handle IL 1.2 behavior for OMX_SetParameter
701           It turned out it was a problem in the decoder which was
702           not updating some local variables upon SetParameter.
703           https://bugzilla.gnome.org/show_bug.cgi?id=783976
704
705 2017-07-20 09:43:19 +0100  Julien Isorce <jisorce@oblong.com>
706
707         * omx/gstomxaudiodec.c:
708         * omx/gstomxaudioenc.c:
709         * omx/gstomxvideodec.c:
710         * omx/gstomxvideoenc.c:
711           omx{audio,video}{dec,enc}: sequentially disable ports because buffers are not shared
712           For the history, the parallel disable port has been introduced by:
713           "00be69f omxvideodec: Disable output port when setting a new format"
714           and then replicated to videoenc, audiodec and audioenc.
715           This is only required to do 'parallel' if buffers are shared between ports.
716           But for decoders and encoders the input and output buffer are of different
717           nature by definition (bitstream vs images). So they cannot be shared.
718           Also starting from IL 1.2.0 it is written in the spec that the parallel
719           disable is not allowed and will return an error. Except when buffers are
720           shared.
721           Again here we know in advance that they are not shared so let's always
722           do a sequential disable.
723           Tested on Desktop, rpi and zynqultrascaleplus.
724           https://bugzilla.gnome.org/show_bug.cgi?id=786348
725
726 2017-08-17 12:26:05 +0100  Tim-Philipp Müller <tim@centricular.com>
727
728         * common:
729           Automatic update of common submodule
730           From 48a5d85 to 3f4aa96
731
732 2017-08-10 12:16:53 -0400  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
733
734         * omx/gstomxvideodec.c:
735           omxvideodec: use the decoder API to set latency
736           https://bugzilla.gnome.org/show_bug.cgi?id=785125
737
738 2017-07-06 14:19:19 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
739
740         * omx/gstomxvideodec.c:
741         * omx/gstomxvideoenc.c:
742           omxvideoenc/dec: declare latency on zynqultrascaleplus
743           The OMX specification doesn't provide any API to expose the latency
744           introduced by encoders and decoders. We implemented this as a custom
745           extension as declaring the latency is needed for live pipelines like
746           video conferencing.
747           https://bugzilla.gnome.org/show_bug.cgi?id=785125
748
749 2017-08-07 13:16:01 -0400  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
750
751         * omx/gstomxvideoenc.c:
752           omxvideoenc: adjust stride and slice height from input
753           Use the stride and slice height information from the first buffer meta
754           data to adjust the settings of the input port.
755           This will ensure that the OMX input buffers match the GStreamer ones
756           and so will save us from having to copy line-by-line each one.
757           This is also the first step to allow the OMX encoder to receive dmabuf.
758           Tested on rpi and zynqultrascaleplus.
759           https://bugzilla.gnome.org/show_bug.cgi?id=785967
760
761 2017-08-07 11:45:29 -0400  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
762
763         * omx/gstomxvideoenc.c:
764           omxvideoenc: delay buffer configuration until component is enabled
765           No significant change for now. Just delay the input port configuration
766           of the buffer size related fields (stride, slice height, buffer size)
767           until the component is activated.
768           This will allow us to use the actual stride/height of the first input
769           and so avoid the buffer copying code path in most cases.
770           Tested on rpi and zynqultrascaleplus.
771           https://bugzilla.gnome.org/show_bug.cgi?id=785967
772
773 2017-07-24 13:52:35 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
774
775         * omx/gstomxvideodec.c:
776         * omx/gstomxvideoenc.c:
777           omxvideodec/enc: delay allocation after the allocation query
778           Allocating OMX components buffers in set_format() is too early.
779           Doing it when receiving the first buffers will allow the element to use
780           the information from the allocation query and/or the first incoming
781           buffer to pick to best allocation mode.
782           Tested on raspberry pi with dynamic resolution changes on decoder and
783           encoder input.
784           https://bugzilla.gnome.org/show_bug.cgi?id=785967
785
786 2017-07-25 14:27:45 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
787
788         * omx/gstomxvideoenc.c:
789           omxvideoenc: start src thread in handle_frame()
790           Makes the code simpler as we no longer need to restart the thread in
791           gst_omx_video_enc_flush() and It's more symetric which the omxvideodec
792           implementation.
793           I'm also going to move the enabling of the OMX component in
794           handle_frame() and the src pad thread needs to be started after it.
795           https://bugzilla.gnome.org/show_bug.cgi?id=785967
796
797 2017-07-25 14:07:30 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
798
799         * omx/gstomxvideodec.c:
800           omxvideodec: earlier return if downstream_flow_ret is not OK
801           There is no point to (re)start the src thread if, for example, we are
802           flushing.
803           https://bugzilla.gnome.org/show_bug.cgi?id=785967
804
805 2017-07-24 12:31:37 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
806
807         * omx/gstomxvideodec.c:
808         * omx/gstomxvideodec.h:
809           omxvideodec: factor out enable and disable code
810           No semantic change, just factor out the code enabling and disabling the
811           component to their own functions.
812           Makes the code easier to read as the set_format() method was already
813           pretty big. Will also allow us to easily change the enabling logic.
814           https://bugzilla.gnome.org/show_bug.cgi?id=785967
815
816 2017-07-24 12:31:37 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
817
818         * omx/gstomxvideoenc.c:
819         * omx/gstomxvideoenc.h:
820           omxvideoenc: factor out enable and disable code
821           No semantic change, just factor out the code enabling and disabling the
822           component to their own functions.
823           Makes the code easier to read as the set_format() method was already
824           pretty big. Will also allow us to easily change the enabling logic.
825           https://bugzilla.gnome.org/show_bug.cgi?id=785967
826
827 2017-07-27 12:12:01 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
828
829         * omx/gstomx.c:
830           omx: also reset nFilledLen before calling OMX_FillThisBuffer()
831           The spec states that the buffer passed to OMX_FillThisBuffer() needs to be
832           empty. Some implementation may check it actually is by checking its
833           nFilledLen field, so best to reset it as well.
834           https://bugzilla.gnome.org/show_bug.cgi?id=785623
835
836 2017-07-17 21:06:47 +0100  Julien Isorce <jisorce@oblong.com>
837
838         * omx/gstomxvideodec.c:
839         * omx/gstomxvideodec.h:
840           omxvideodec: make generic the OMX_UseEGLImage code path
841           Will be easier to maintain and to make enhancements.
842           Tested with Tizonia on Desktop.
843           Also tested with Bellagio to make sure it does not crash when
844           calling OMX_UseEGLImage and indeed it returns NotImplemented.
845           Then gst-omx fallback to OMX_UseBuffer if it can and so on.
846           Also tested on rpi to make sure there is no regression.
847           https://bugzilla.gnome.org/show_bug.cgi?id=784365
848
849 2017-07-21 11:52:00 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
850
851         * omx/gstomxvideodec.c:
852           omxvideodec: Fix segment seek
853           On segment seek, unlike EOS, we drain, but we cannot expect a flush
854           later to reset the decoder state. As a side effect, the decoder would
855           remain in EOS state and ignore any new incoming buffers.
856           To fix this, we call _flush() inside the _drain() function, and
857           _finish() becomes what _drain() was before. This way, for _finish() (the
858           eos case) we only drain, for _drain() triggered by segment seek or new
859           caps, we also reset the decoder state so it's ready to accept buffers.
860           https://bugzilla.gnome.org/show_bug.cgi?id=785237
861
862 2017-07-10 15:00:58 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
863
864         * omx/gstomxvideoenc.c:
865           omxvideoenc: ensure enough buffers are allocated in the pool
866           Handle allocation query and ensure enough buffers are allocated in
867           the negotiated pool. This help preventing buffer starvation in the pipeline.
868           https://bugzilla.gnome.org/show_bug.cgi?id=785122
869
870 2017-07-04 12:16:39 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
871
872         * configure.ac:
873         * meson.build:
874         * omx/Makefile.am:
875         * omx/gstomxbufferpool.c:
876         * omx/gstomxbufferpool.h:
877         * omx/gstomxvideodec.c:
878         * omx/gstomxvideodec.h:
879         * omx/meson.build:
880           omxvideodec: add dmabuf support for output
881           The zynqultrascaleplus OMX implementation has a custom extension
882           allowing decoders to output dmabuf and so avoid buffers copy between OMX
883           and GStreamer.
884           Make use of this extension when built on the zynqultrascaleplus. The
885           buffer pool code should be re-usable for other platforms as well.
886           https://bugzilla.gnome.org/show_bug.cgi?id=784847
887
888 2017-06-20 00:13:33 +0100  Julien Isorce <jisorce@oblong.com>
889
890         * config/tizonia/gstomx.conf.in:
891           config: add OMX.Aratelia.video_decoder.vp8 to Tizonia config
892           Useful mostly for testing/debugging purpose as this is a software
893           based encoder (libvpxdec) for which GStreamer provides a direct
894           wrapper.
895           https://bugzilla.gnome.org/show_bug.cgi?id=783976
896
897 2017-06-19 23:56:02 +0100  Julien Isorce <jisorce@oblong.com>
898
899         * omx/gstomxvideodec.c:
900           omxvideodec: handle IL 1.2 behavior for OMX_SetParameter
901           It triggers SettingsChanged on the other port and it is up to
902           the client to decide if it should lead to a port reconfiguration.
903           Settings are propagated to the other port for fields they have
904           in common. But this event is only triggered on the other port
905           if it actually change a setting.
906           https://bugzilla.gnome.org/show_bug.cgi?id=783976
907
908 2017-07-18 23:41:17 +0100  Julien Isorce <jisorce@oblong.com>
909
910         * config/tizonia/gstomx.conf.in:
911           config: set rank to 0 for Tizonia's mp3 decoder
912           Should have been 0 from the initial commit
913           eed49b4231a063639f90279c8044404c2149902a
914
915 2017-07-17 21:03:55 +0100  Julien Isorce <jisorce@oblong.com>
916
917         * omx/gstomxvideodec.c:
918           omxvideodec: fix file permissions
919           Introduced by ebc9b4903cbdac2793c24b05a1bb7acc3b67fae5
920
921 2017-06-29 23:17:26 +0100  Julien Isorce <jisorce@oblong.com>
922
923         * omx/gstomxvideodec.c:
924           omxvideodec: fix buffer leak when eglimage setup fails
925           Can happen if gst_buffer_pool_acquire_buffer succeeds but
926           gst_buffer_n_memory (buffer) is not exactly 1.
927           In theory this should not happen because the decoder requests
928           EGLImage(RGBA) but better to fix any leak on corner cases.
929           https://bugzilla.gnome.org/show_bug.cgi?id=784365
930
931 2017-07-17 18:36:36 +0530  Satya Prakash Gupta <sp.gupta@samsung.com>
932
933         * omx/gstomx.c:
934           omx: Possible Memory leak in gst_caps_from_string
935           https://bugzilla.gnome.org/show_bug.cgi?id=784978
936
937 2017-07-17 15:48:44 +0530  Satya Prakash Gupta <sp.gupta@samsung.com>
938
939         * omx/gstomxvideoenc.c:
940           omxvideoenc: Fix deadlock in error case when draining
941           https://bugzilla.gnome.org/show_bug.cgi?id=784972
942
943 2017-07-17 13:44:54 +0530  Satya Prakash Gupta <sp.gupta@samsung.com>
944
945         * omx/gstomxaudioenc.c:
946           omxaudioenc: Fix deadlock in error case when draining
947           https://bugzilla.gnome.org/show_bug.cgi?id=784967
948
949 2017-06-02 12:36:30 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
950
951         * configure.ac:
952         * meson.build:
953         * omx/gstomx.h:
954           build: include OMX_IndexExt and OMX_ComponentExt if present
955           These files may be used by OMX implementation to define custom extensions.
956           Include them if present as we are already doing with OMX_VideoExt.h
957           https://bugzilla.gnome.org/show_bug.cgi?id=784847
958
959 2017-07-13 16:40:26 +1000  Jan Schmidt <jan@centricular.com>
960
961         * omx/gstomxh264enc.c:
962           omxh264enc: Re-add periodicty-idr property for backward compat
963           Retain backwards compatibility by adding a duplicate
964           property for periodicty-idr
965           https://bugzilla.gnome.org/show_bug.cgi?id=784370
966
967 2017-06-30 15:15:06 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
968
969         * omx/gstomxh264enc.c:
970           omxh264enc: fix typo in "periodicty-idr" property name
971           Also fix the 'nick' of the property.
972           https://bugzilla.gnome.org/show_bug.cgi?id=784370
973
974 2017-06-29 22:48:47 +0100  Julien Isorce <jisorce@oblong.com>
975
976         * omx/gstomxvideodec.c:
977         * omx/gstomxvideodec.h:
978           omxvideodec: use OMX_UseBuffer
979           For example this allows the omx decoder to directly fill the
980           pixmaps coming from the video sink.
981           It only avoids a buffer copy when the decoder uses a pool provided
982           by a downstream element. So let's restrict this usage to situations
983           where the decoder decides to use a downstream buffer pool.
984           Tested with Tizonia/OMX.Aratelia.video_decoder.vp8
985           and with Bellagio/OMX.mesa.video_decoder.avc.
986           If it fails to setup buffers with OMX_UseBuffer the decoders
987           fallbacks to usual OMX_AllocateBuffer.
988           Also it allows to test on desktop the GstOMXBufferPool->other_pool
989           management which was previously only used in the OMX_UseEGLImage
990           case, i.e. on Rpi.
991           https://bugzilla.gnome.org/show_bug.cgi?id=784069
992
993 2017-07-12 10:29:16 +0100  Julien Isorce <jisorce@oblong.com>
994
995         * omx/gstomx.c:
996           omx: do not always print an error if OMX_{UseBuffer,EGLImage} fails
997           Let the caller decide to print an error. Because it can be part of
998           a normal trial path.
999           https://bugzilla.gnome.org/show_bug.cgi?id=784069
1000
1001 2017-07-12 16:00:53 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1002
1003         * omx/meson.build:
1004           meson: add gstomxmp3enc
1005           Commit 02d493e85921596f7cac7ef4af02fde500e9a5d8 didn't add
1006           gstomxmp3enc.c to meson.
1007           https://bugzilla.gnome.org/show_bug.cgi?id=784848
1008
1009 2017-05-23 10:32:58 +0100  Julien Isorce <jisorce@oblong.com>
1010
1011         * config/tizonia/gstomx.conf.in:
1012           config: add OMX.Aratelia.audio_encoder.mp3 to Tizonia config
1013           Useful mostly for testing/debugging purpose as this is a software
1014           based encoder (libmp3lame) for which GStreamer provides a direct
1015           wrapper.
1016           https://bugzilla.gnome.org/show_bug.cgi?id=782988
1017
1018 2017-05-23 10:32:06 +0100  Julien Isorce <jisorce@oblong.com>
1019
1020         * omx/Makefile.am:
1021         * omx/gstomx.c:
1022         * omx/gstomxmp3enc.c:
1023         * omx/gstomxmp3enc.h:
1024           omx: add gstomxmp3enc
1025           Initial support and only tested with the software based
1026           encoder OMX.Aratelia.audio_encoder.mp3 from Tizonia which
1027           internally uses libmp3lame.
1028           https://bugzilla.gnome.org/show_bug.cgi?id=782988
1029
1030 2017-03-28 16:27:10 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1031
1032         * config/zynqultrascaleplus/gstomx.conf:
1033         * omx/gstomx.c:
1034         * omx/gstomx.h:
1035         * omx/gstomxh264dec.c:
1036           h264dec: add hack to pass profile and level to OMX
1037           This information can be useful to zynqultrascaleplus decoders. They may
1038           use this information to reduce startup latency by configuring itself
1039           before receiving the first frames.
1040           We also have a custom OMX extension allowing the decoder to report the
1041           latency. The profile/level information helps it reporting a more
1042           accurate latency earlier.
1043           https://bugzilla.gnome.org/show_bug.cgi?id=783114
1044
1045 2017-07-03 13:17:11 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1046
1047         * omx/Makefile.am:
1048         * omx/gstomxh264enc.c:
1049         * omx/gstomxh264utils.c:
1050         * omx/gstomxh264utils.h:
1051         * omx/meson.build:
1052           omxh264enc: move profile and level parsing functions to their own files
1053           Will allow to re-use them in the decoder element.
1054           https://bugzilla.gnome.org/show_bug.cgi?id=783114
1055
1056 2017-07-04 03:15:00 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
1057
1058         * config/meson.build:
1059         * config/tizonia/meson.build:
1060         * meson.build:
1061         * meson_options.txt:
1062           meson: Add tizonia option
1063           https://bugzilla.gnome.org/show_bug.cgi?id=782800
1064
1065 2017-04-29 02:56:59 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
1066
1067         * .gitignore:
1068         * config/tizonia/Makefile.am:
1069         * config/tizonia/gstomx.conf.in:
1070         * config/tizonia/meson.build:
1071         * configure.ac:
1072           config: add omxmp3dec config for tizonia
1073           GST_OMX_CONFIG_DIR=$HOME/gst/master/gst-omx/config/tizonia/ \
1074           gst-launch-1.0 filesrc location=mpthreetest.mp3 ! id3demux ! \
1075           mpegaudioparse ! omxmp3dec ! audioconvert ! pulsesink
1076           v2: [Nicolas] Use template to create gstomx.conf using pkg-config
1077           v3: [Nicolas] Ignore only config/tizonia/gstomx.conf
1078           v4: [Nicolas] Add "/" for single occurence
1079           https://bugzilla.gnome.org/show_bug.cgi?id=782800
1080
1081 2017-05-07 20:09:54 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
1082
1083         * omx/gstomx.c:
1084           omx: always ignore OMX_ErrorPortUnpopulated
1085           It is safe to ignore it always. Tizonia notifies this error to pass
1086           some khronos conformance tests. Problem is that gst-omx saves this
1087           error in comp->last_error and then gst_omx_port_set_enabled early
1088           error out which fails the pipeline.
1089           https://bugzilla.gnome.org/show_bug.cgi?id=782800
1090
1091 2017-04-29 02:53:26 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
1092
1093         * omx/gstomx.c:
1094         * omx/gstomx.h:
1095           omx: guard some omx enums with IL version
1096           Some enums that existed in 1.1.2 just do not exit in 1.2.0
1097           See https://www.khronos.org/registry/OpenMAX-IL/specs/OpenMAX_IL_1_2_0_Specification_redline.pdf
1098           https://bugzilla.gnome.org/show_bug.cgi?id=782800
1099
1100 2017-04-29 01:56:01 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
1101
1102         * configure.ac:
1103           configure.ac: add tizonia target for --with-omx-target flag.
1104           This will check for tizilheaders.pc which adds path to omx-il
1105           headers its cflags. Can be installed all together with the 1.2 headers
1106           with package tizilheaders if not building from sources:
1107           https://github.com/tizonia/tizonia-openmax-il
1108           It is also adviced to remove libomxil-bellagio-dev package because
1109           it installs headers /usr/include directly, ex: /usr/include/OMX_Video.h.
1110           https://bugzilla.gnome.org/show_bug.cgi?id=782800
1111
1112 2017-07-05 10:47:41 +0100  Julien Isorce <jisorce@oblong.com>
1113
1114         * omx/gstomxaudioenc.c:
1115           omxaudioenc: update local port_def after reopening the component
1116           gst_omx_audio_enc_open will only update GstOMXAudioEnc->port->port_def.
1117           Note that the component is reopen only if the flag
1118           GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set.
1119           https://bugzilla.gnome.org/show_bug.cgi?id=782418
1120
1121 2017-07-05 10:48:52 +0100  Julien Isorce <jisorce@oblong.com>
1122
1123         * omx/gstomxvideoenc.c:
1124           omxvideoenc: update local port_def after reopening the component
1125           gst_omx_video_enc_open will only update GstOMXVideoEnc->port->port_def.
1126           Note that the component is reopen only if the flag
1127           GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set.
1128           https://bugzilla.gnome.org/show_bug.cgi?id=782418
1129
1130 2017-05-10 12:38:39 +0900  Sejun Park <sejun79.park@samsung.com>
1131
1132         * omx/gstomxvideodec.c:
1133           omxvideodec: update local port_def after reopening the component
1134           gst_omx_video_dec_open will only update GstOMXVideoDec->port->port_def.
1135           Note that the component is reopen only if the flag
1136           GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set.
1137           https://bugzilla.gnome.org/show_bug.cgi?id=782418
1138
1139 2017-07-03 16:33:06 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1140
1141         * omx/gstomxvideodec.c:
1142           omxvideodec: increase the minimum number of allocated buffers
1143           Ensure that enough buffers are allocated by adding up component's own
1144           minimal plus the number of buffers requested by downstream.
1145           This should prevent buffers starvation problem if downstream elements
1146           are holding some of the buffers they required.
1147           Also simplify the check on the maximum on buffers. What we actually care
1148           about is to make sure the pool can hold the minimum of required buffers.
1149           https://bugzilla.gnome.org/show_bug.cgi?id=784479
1150
1151 2017-07-03 10:54:50 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1152
1153         * omx/gstomxh264enc.c:
1154           omxh264enc: raise a warning if AVCIntraPeriod is not supported
1155           Some platforms may not implement OMX_IndexConfigVideoAVCIntraPeriod and
1156           use OMX_IndexParamVideoAvc instead to configure the GOP pattern.
1157           So raise a warning instead of an error if this API is not implemented.
1158           https://bugzilla.gnome.org/show_bug.cgi?id=784379
1159
1160 2017-06-29 14:16:19 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1161
1162         * omx/gstomxh264enc.c:
1163         * omx/gstomxh264enc.h:
1164           omxh264enc: add 'b-frames' property
1165           Add a property to control the number of B-frames produced by the
1166           encoder using the OMX_VIDEO_PARAM_AVCTYPE OMX API.
1167           https://bugzilla.gnome.org/show_bug.cgi?id=784379
1168
1169 2017-06-30 14:18:35 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1170
1171         * omx/gstomxh264enc.c:
1172           omxh264enc: fix typo in 'set_avc_intra_period'
1173           https://bugzilla.gnome.org/show_bug.cgi?id=784379
1174
1175 2017-05-22 11:23:33 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1176
1177         * config/Makefile.am:
1178         * config/meson.build:
1179         * config/zynqultrascaleplus/Makefile.am:
1180         * config/zynqultrascaleplus/gstomx.conf:
1181         * config/zynqultrascaleplus/meson.build:
1182         * configure.ac:
1183         * meson.build:
1184         * meson_options.txt:
1185           add 'zynqultrascaleplus' as OMX target
1186           Adding support for the 'Zynq UltraScale+' as a new OMX target.
1187           See https://www.xilinx.com/products/silicon-devices/soc/zynq-ultrascale-mpsoc.html
1188           for details about the platform.
1189           https://bugzilla.gnome.org/show_bug.cgi?id=783097
1190
1191 2017-05-21 15:23:09 +0100  Julien Isorce <jisorce@oblong.com>
1192
1193         * config/bellagio/gstomx.conf:
1194           config: add OMX.mesa.video_decoder.{avc,mpeg2} for Bellagio config
1195           Install libomxil-bellagio0 and make sure mesa has been built with
1196           --enable-omx. Check there is /usr/lib/libomxil-bellagio0/libomx_mesa.so
1197           then run omxregister-bellagio to regenerate $XDG_DATA_HOME/.omxregister
1198           Then omxh264dec and omxmpeg2dec should load.
1199           https://bugzilla.gnome.org/show_bug.cgi?id=782926
1200
1201 2017-05-18 13:50:56 +0100  Julien Isorce <jisorce@oblong.com>
1202
1203         * configure.ac:
1204           configure.ac: move omx features check after target selection
1205           Does not change anything, except this will be useful for future commits.
1206           Indeed some targets provide a .pc file where to look for the omx headers.
1207           https://bugzilla.gnome.org/show_bug.cgi?id=782800
1208
1209 2017-06-29 16:48:07 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1210
1211         * omx/gstomxh264dec.c:
1212           omxh264dec: remove 'parsed=true' from sink pad
1213           The decoder only requires to receive one frame per buffer which is
1214           already enforced with 'alignment=au'. There is no need to require to
1215           have a parser upstream.
1216           Allow to run "encode ! decode" pipeline without having a parser.
1217           https://bugzilla.gnome.org/show_bug.cgi?id=784344
1218
1219 2017-06-16 13:28:33 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1220
1221         * omx/gstomxh264enc.c:
1222           omxh264enc: set profile/level using OMX_VIDEO_PARAM_AVCTYPE as well
1223           The OMX specification defines two API to set the AVC profile and level:
1224           using OMX_VIDEO_PARAM_PROFILELEVELTYPE and OMX_VIDEO_PARAM_AVCTYPE.
1225           We were already supporting the former but not the latter. We are now
1226           setting both so implementation don't have to rely on a specific one.
1227           https://bugzilla.gnome.org/show_bug.cgi?id=783862
1228
1229 2017-06-16 13:19:33 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1230
1231         * omx/gstomxh264enc.c:
1232           omxh264enc: factor out update_param_profile_level()
1233           https://bugzilla.gnome.org/show_bug.cgi?id=783862
1234
1235 2017-06-16 12:53:15 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1236
1237         * omx/gstomxh264enc.c:
1238           omxh264enc: factor out string to profile/level enum conversion
1239           https://bugzilla.gnome.org/show_bug.cgi?id=783862
1240
1241 2017-06-28 15:06:10 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1242
1243         * omx/gstomxh264enc.c:
1244           omxh264enc: use OMX_IndexConfigBrcmVideoIntraPeriod on pi
1245           The OMX_VIDEO_CONFIG_AVCINTRAPERIOD.nPFrames setting isn't of any use on
1246           the raspbery pi. Instead it uses a custom extension to define the I
1247           frame period.
1248           https://bugzilla.gnome.org/show_bug.cgi?id=783829
1249
1250 2017-06-28 15:03:52 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1251
1252         * omx/gstomxh264enc.c:
1253           omxh264enc: factor out set_avc_intra_perdiod()
1254           https://bugzilla.gnome.org/show_bug.cgi?id=783829
1255
1256 2017-06-02 12:48:57 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1257
1258         * meson.build:
1259           meson: define HAVE_VIDEO_EXT if OMX_VideoExt.h is present
1260           Meson build wasn't defining the HAVE_VIDEO_EXT like configure.ac does.
1261           https://bugzilla.gnome.org/show_bug.cgi?id=783346
1262
1263 2017-06-11 12:32:01 +0000  Graham Leggett <minfrin@sharp.fm>
1264
1265         * omx/gstomxvideoenc.c:
1266           omxvideoenc: Improve debug output when setting codec state due to new codec_data fails
1267           https://bugzilla.gnome.org/show_bug.cgi?id=783657
1268
1269 2017-05-20 14:49:20 +0100  Julien Isorce <jisorce@oblong.com>
1270
1271         * omx/gstomx.c:
1272           omx: allow 0 feature
1273           Previously the omx plugin was blacklisted if GST_OMX_CONFIG_DIR
1274           points to an invalid path or if the gstomx.conf contains 0 valid
1275           component.
1276           Problem is that once the plugin is blacklisted, a rescan is not
1277           triggered upon changes of the env var or the gstomx.conf file
1278           despite being setup with gst_plugin_add_dependency.
1279           This also makes it more consistent with other plugins that auto
1280           generate features. For example gst-{ffmeg,libav}, gstreamer-vaapi,
1281           v4l2 video dec.
1282           To clarify the diff, the plugin_init func will return TRUE even if
1283           g_key_file_get_groups returns 0 element and even if
1284           g_key_file_load_from_dirs fails.
1285           https://bugzilla.gnome.org/show_bug.cgi?id=782867
1286
1287 2017-04-26 22:52:17 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
1288
1289         * config/bellagio/gstomx.conf:
1290           config: add OMX.st.audio_decoder.mp3.mad for Bellagio config
1291           MP3 Software decoder (libmad based) but useful for testing
1292           and to compare with other targets.
1293           GST_OMX_CONFIG_DIR=$HOME/gst/master/gst-omx/config/bellagio/ \
1294           gst-launch-1.0 filesrc location=mpthreetest.mp3 ! id3demux ! \
1295           mpegaudioparse ! omxmp3dec ! audioconvert ! pulsesink
1296           Didn't add 'local' in core-name path compared to other components
1297           in that same gstomx.conf file because OMX.st.audio_decoder.mp3.mad
1298           comes with the Ubuntu package 'libomxil-bellagio0-components-mad'.
1299           All other components listed in this gstomx.conf for Bellagio, are
1300           not provided by any Ubuntu packages. It could explain the 'local',
1301           i.e. requiring to build them from source.
1302           dpkg -L libomxil-bellagio0
1303           /usr/lib/libomxil-bellagio.so.0
1304           https://bugzilla.gnome.org/show_bug.cgi?id=781786
1305           Signed-off-by: Gurkirpal Singh <gurkirpal204@gmail.com>
1306           Signed-off-by: Julien Isorce <jisorce@oblong.com>
1307
1308 2017-05-16 14:39:04 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
1309
1310         * configure.ac:
1311           Remove plugin specific static build option
1312           Static and dynamic plugins now have the same interface. The standard
1313           --enable-static/--enable-shared toggle are sufficient.
1314
1315 2017-05-10 12:10:10 +0900  Sejun Park <sejun79.park@samsung.com>
1316
1317         * omx/gstomxvideodec.c:
1318           omxvideodec: Removed unreachable code
1319           https://bugzilla.gnome.org/show_bug.cgi?id=782416
1320
1321 2017-05-09 16:26:44 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1322
1323         * omx/meson.build:
1324           meson: add dep on GModule
1325           libgstomx uses the GModule API and so needs it in its dependencies list.
1326           https://bugzilla.gnome.org/show_bug.cgi?id=782387
1327
1328 2017-05-09 13:27:28 +0000  Tim-Philipp Müller <tim@centricular.com>
1329
1330         * meson.build:
1331           meson: fix config.h generation
1332           "No such input file config.h.meson", but it's not needed anyway.
1333           https://bugzilla.gnome.org/show_bug.cgi?id=782382
1334
1335 2017-05-04 18:59:33 +0300  Sebastian Dröge <sebastian@centricular.com>
1336
1337         * configure.ac:
1338         * meson.build:
1339           Back to development
1340
1341 === release 1.12.0 ===
1342
1343 2017-05-04 15:48:56 +0300  Sebastian Dröge <sebastian@centricular.com>
1344
1345         * ChangeLog:
1346         * NEWS:
1347         * RELEASE:
1348         * configure.ac:
1349         * gst-omx.doap:
1350         * meson.build:
1351           Release 1.12.0
1352
1353 === release 1.11.91 ===
1354
1355 2017-04-27 17:53:50 +0300  Sebastian Dröge <sebastian@centricular.com>
1356
1357         * ChangeLog:
1358         * NEWS:
1359         * RELEASE:
1360         * configure.ac:
1361         * gst-omx.doap:
1362         * meson.build:
1363           Release 1.11.91
1364
1365 2017-04-17 17:02:48 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
1366
1367         * omx/gstomxvideoenc.c:
1368           videoenc: use GST_ROUND_UP_N() macro
1369           Makes the code much easier to read and understand.
1370           https://bugzilla.gnome.org/show_bug.cgi?id=781409
1371
1372 2017-04-24 20:30:21 +0100  Tim-Philipp Müller <tim@centricular.com>
1373
1374         * common:
1375           Automatic update of common submodule
1376           From 60aeef6 to 48a5d85
1377
1378 2017-04-10 23:51:00 +0100  Tim-Philipp Müller <tim@centricular.com>
1379
1380         * autogen.sh:
1381         * common:
1382           Automatic update of common submodule
1383           From 39ac2f5 to 60aeef6
1384
1385 === release 1.11.90 ===
1386
1387 2017-04-07 16:36:45 +0300  Sebastian Dröge <sebastian@centricular.com>
1388
1389         * ChangeLog:
1390         * NEWS:
1391         * RELEASE:
1392         * configure.ac:
1393         * gst-omx.doap:
1394         * meson.build:
1395           Release 1.11.90
1396
1397 2017-04-07 14:27:23 +0300  Sebastian Dröge <sebastian@centricular.com>
1398
1399         * omx/gstomxvideoenc.c:
1400           omxvideoenc: Fix compiler warning
1401           gstomxvideoenc.c: In function ‘gst_omx_video_enc_fill_buffer’:
1402           CC       libgstomx_la-gstomxaacdec.lo
1403           gstomxvideoenc.c:1316:27: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 8 has type ‘OMX_U32 {aka long unsigned int}’ [-Wformat=]
1404           GST_LOG_OBJECT (self, "Matched strides - direct copy %u bytes",
1405           ^
1406           outbuf->omx_buf->nFilledLen);
1407           ~~~~~~~~~~~~~~~~~~
1408
1409 2017-03-22 17:18:09 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
1410
1411         * meson.build:
1412           meson: fix logic to set HAVE_THEORA
1413           https://bugzilla.gnome.org/show_bug.cgi?id=780392
1414
1415 2017-03-14 03:02:06 +1100  Jan Schmidt <thaytan@noraisin.net>
1416
1417         * omx/gstomxvideoenc.c:
1418           omxvideoenc: Add an unimplemented mapping for RGBA formats
1419           Add some pixel formats mappings for 2 RGBA formats. Not yet
1420           implemented in the buffer input code though, so no effect for now.
1421
1422 2017-03-14 03:00:49 +1100  Jan Schmidt <thaytan@noraisin.net>
1423
1424         * omx/gstomx.c:
1425         * omx/gstomx.h:
1426         * omx/gstomxvideoenc.c:
1427           omxvideoenc: Add GST_OMX_HACK_HEIGHT_MULTIPLE_16 for Rpi
1428           The Raspberry Pi encoder produces corrupt output unless
1429           the input height is a multiple of 16. Add a hack that adds
1430           zero padding when needed.
1431
1432 2017-03-14 02:42:15 +1100  Jan Schmidt <thaytan@noraisin.net>
1433
1434         * omx/gstomxvideoenc.c:
1435           omxvideoenc: Add a mapping for OMX_COLOR_FormatYUV420PackedSemiPlanar
1436           The RaspberryPi
1437
1438 2017-03-14 02:40:24 +1100  Jan Schmidt <thaytan@noraisin.net>
1439
1440         * omx/gstomxvideoenc.c:
1441           omxvideoenc: Filter out unimplemented formats
1442           Don't announce pixel formats in the caps if they've not been
1443           implemented.
1444
1445 2017-03-14 02:34:36 +1100  Jan Schmidt <thaytan@noraisin.net>
1446
1447         * omx/gstomxvideodec.c:
1448           omxvideodec: demote ERROR message
1449           There's no need to warn about failing to negotiate EGL output
1450           - that can be perfectly normal.
1451
1452 2017-02-24 16:00:29 +0200  Sebastian Dröge <sebastian@centricular.com>
1453
1454         * meson.build:
1455           meson: Update version
1456
1457 2017-02-24 15:38:17 +0200  Sebastian Dröge <sebastian@centricular.com>
1458
1459         * configure.ac:
1460           Back to development
1461
1462 === release 1.11.2 ===
1463
1464 2017-02-24 15:10:17 +0200  Sebastian Dröge <sebastian@centricular.com>
1465
1466         * ChangeLog:
1467         * NEWS:
1468         * RELEASE:
1469         * configure.ac:
1470         * gst-omx.doap:
1471           Release 1.11.2
1472
1473 2017-02-15 18:22:53 +0000  Tim-Philipp Müller <tim@centricular.com>
1474
1475         * Makefile.am:
1476           meson: dist meson build files
1477           Ship meson build files in tarballs, so people who use tarballs
1478           in their builds can start playing with meson already.
1479
1480 2017-01-13 16:23:12 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
1481
1482         * omx/gstomxaacenc.c:
1483           omxaacenc: let encoder know about incoming rate/channels
1484           https://bugzilla.gnome.org/show_bug.cgi?id=777223
1485
1486 2017-01-18 02:43:44 +1100  Matthew Waters <matthew@centricular.com>
1487
1488         * config/bellagio/meson.build:
1489         * config/meson.build:
1490         * config/rpi/meson.build:
1491         * examples/egl/meson.build:
1492         * examples/meson.build:
1493         * hooks/pre-commit.hook:
1494         * meson.build:
1495         * meson_options.txt:
1496         * omx/meson.build:
1497           build: add meson build definition
1498           Currently only been tested on the RPi within gst-build.
1499
1500 2017-01-18 15:21:35 +1100  Matthew Waters <matthew@centricular.com>
1501
1502         * examples/egl/testegl.c:
1503           examples/testegl: update for libgstgl changes
1504
1505 2017-01-12 16:33:09 +0200  Sebastian Dröge <sebastian@centricular.com>
1506
1507         * configure.ac:
1508           Back to development
1509
1510 === release 1.11.1 ===
1511
1512 2017-01-12 16:26:55 +0200  Sebastian Dröge <sebastian@centricular.com>
1513
1514         * ChangeLog:
1515         * NEWS:
1516         * RELEASE:
1517         * configure.ac:
1518         * gst-omx.doap:
1519           Release 1.11.1
1520
1521 2017-01-10 15:29:08 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
1522
1523         * omx/gstomxaudioenc.c:
1524           omxaudioenc: set base class format instead of just source pad caps
1525
1526 2016-12-18 19:46:55 +0000  Graham Leggett <minfrin@sharp.fm>
1527
1528         * omx/gstomxaudiodec.c:
1529         * omx/gstomxvideodec.c:
1530           omx*dec: Flush before we stop the srcpad loop
1531           Flushing could otherwise hang if output port queue of pending buffers was empty
1532           https://bugzilla.gnome.org/show_bug.cgi?id=774654
1533
1534 2016-12-14 13:29:08 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
1535
1536         * omx/gstomx.c:
1537           Fix broken build due to syntax error
1538           Problem was introduced by 8716c23e2b0553db2982eb84c437f493c974385e
1539
1540 2016-12-12 11:12:48 +0000  Graham Leggett <minfrin@sharp.fm>
1541
1542         * omx/gstomx.c:
1543           Prevent early EOS by resetting eos flag once GST_OMX_ACQUIRE_BUFFER_EOS is triggered
1544           https://bugzilla.gnome.org/show_bug.cgi?id=774600
1545
1546 2016-12-12 11:09:15 +0000  Graham Leggett <minfrin@sharp.fm>
1547
1548         * omx/gstomx.c:
1549           Add clear debug logging on all the paths out of gst_omx_port_acquire_buffer()
1550           https://bugzilla.gnome.org/show_bug.cgi?id=774600
1551
1552 2016-12-01 18:23:50 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
1553
1554         * config/rpi/gstomx.conf:
1555         * omx/gstomx.c:
1556         * omx/gstomx.h:
1557           Add a signals-premature-eos hack for egl_render
1558           egl_render seems to have a bug and signals EOS before it has finished
1559           pushing out all data; this hack simply makes acquire_buffer() wait
1560           a bit more before signalling EOS, in case egl_render decides to spit
1561           out some more data.
1562           https://bugzilla.gnome.org/show_bug.cgi?id=741856
1563
1564 2016-12-11 19:52:37 +0000  Graham Leggett <minfrin@sharp.fm>
1565
1566         * omx/gstomxvideo.c:
1567           Add support for OMX_COLOR_FormatYUV420PackedSemiPlanar and OMX_COLOR_Format24bitBGR888
1568           https://bugzilla.gnome.org/show_bug.cgi?id=775959
1569
1570 2016-12-03 08:20:46 +0100  Edward Hervey <bilboed@bilboed.com>
1571
1572         * common:
1573           Automatic update of common submodule
1574           From ac2f647 to 39ac2f5
1575
1576 2016-11-26 11:27:58 +0000  Tim-Philipp Müller <tim@centricular.com>
1577
1578         * .gitmodules:
1579           common: use https protocol for common submodule
1580           https://bugzilla.gnome.org/show_bug.cgi?id=775110
1581
1582 2016-11-25 23:56:06 +0200  Sebastian Dröge <sebastian@centricular.com>
1583
1584         * omx/gstomx.c:
1585           omx: Fix compiler warning with latest clang
1586           gstomx.c:1376:42: error: implicit conversion from enumeration type 'GstOMXAcquireBufferReturn' to different enumeration type 'OMX_ERRORTYPE'
1587           (aka 'enum OMX_ERRORTYPE') [-Werror,-Wenum-conversion]
1588           g_return_val_if_fail (!port->tunneled, GST_OMX_ACQUIRE_BUFFER_ERROR);
1589           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1590           https://bugzilla.gnome.org/show_bug.cgi?id=775112
1591
1592 2016-11-17 19:56:35 +1100  Matthew Waters <matthew@centricular.com>
1593
1594         * omx/gstomxvideodec.c:
1595           videodecoder: remove use of EGLImage orientation
1596           New code should use GstVideoTransformationMeta
1597           (The defaults do the right thing here though).
1598
1599 === release 1.11.0 ===
1600
1601 2016-11-01 18:53:25 +0200  Sebastian Dröge <sebastian@centricular.com>
1602
1603         * configure.ac:
1604           Back to development
1605
1606 === release 1.10.0 ===
1607
1608 2016-11-01 18:20:48 +0200  Sebastian Dröge <sebastian@centricular.com>
1609
1610         * ChangeLog:
1611         * NEWS:
1612         * RELEASE:
1613         * configure.ac:
1614         * gst-omx.doap:
1615           Release 1.10.0
1616
1617 === release 1.9.90 ===
1618
1619 2016-09-30 13:04:51 +0300  Sebastian Dröge <sebastian@centricular.com>
1620
1621         * ChangeLog:
1622         * NEWS:
1623         * RELEASE:
1624         * common:
1625         * configure.ac:
1626         * gst-omx.doap:
1627           Release 1.9.90
1628
1629 2016-09-14 11:33:13 +0200  Sebastian Dröge <sebastian@centricular.com>
1630
1631         * configure.ac:
1632           configure: Depend on gstreamer 1.9.2.1
1633
1634 2016-09-12 14:09:46 +0200  Sebastian Dröge <sebastian@centricular.com>
1635
1636         * configure.ac:
1637         * omx/gstomx.c:
1638           omx: Also search for gstomx.conf in the autoconf --sysconfdir
1639           https://bugzilla.gnome.org/show_bug.cgi?id=770743
1640
1641 2016-09-10 20:52:10 +1000  Jan Schmidt <jan@centricular.com>
1642
1643         * autogen.sh:
1644         * common:
1645           Automatic update of common submodule
1646           From b18d820 to f980fd9
1647
1648 2016-09-10 09:58:16 +1000  Jan Schmidt <jan@centricular.com>
1649
1650         * autogen.sh:
1651         * common:
1652           Automatic update of common submodule
1653           From ac2f647 to b18d820
1654
1655 2016-09-01 12:36:09 +0300  Sebastian Dröge <sebastian@centricular.com>
1656
1657         * configure.ac:
1658           Back to development
1659
1660 === release 1.9.2 ===
1661
1662 2016-09-01 12:35:58 +0300  Sebastian Dröge <sebastian@centricular.com>
1663
1664         * ChangeLog:
1665         * NEWS:
1666         * RELEASE:
1667         * common:
1668         * configure.ac:
1669         * gst-omx.doap:
1670           Release 1.9.2
1671
1672 2016-07-11 21:15:48 +0200  Stefan Sauer <ensonic@users.sf.net>
1673
1674         * common:
1675           Automatic update of common submodule
1676           From ac2f647 to f49c55e
1677
1678 2016-07-06 13:51:24 +0300  Sebastian Dröge <sebastian@centricular.com>
1679
1680         * configure.ac:
1681           Back to development
1682
1683 === release 1.9.1 ===
1684
1685 2016-07-06 13:48:45 +0300  Sebastian Dröge <sebastian@centricular.com>
1686
1687         * ChangeLog:
1688         * NEWS:
1689         * RELEASE:
1690         * common:
1691         * configure.ac:
1692         * gst-omx.doap:
1693           Release 1.9.1
1694
1695 2016-06-29 16:37:43 +0900  Kazunori Kobayashi <kkobayas@igel.co.jp>
1696
1697         * omx/gstomxvideodec.c:
1698           omxvideodec: Use GST_VIDEO_FRAME_PLANE_STRIDE() to get output buffer's stride
1699           GST_VIDEO_FRAME_PLANE_STRIDE() should be used to get the actual buffer stride,
1700           as reported in the buffers's GstVideoMeta, when copying data to that buffer.
1701           https://bugzilla.gnome.org/show_bug.cgi?id=768173
1702
1703 2016-06-21 11:48:40 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
1704
1705         * common:
1706           Automatic update of common submodule
1707           From ac2f647 to f363b32
1708
1709 2016-06-21 11:43:13 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1710
1711         * omx/gstomxaudioenc.c:
1712           omxaudioenc: implement GstPreset interface
1713           To allow user to use GstPreset to quickly save and load a set of
1714           parameters.
1715           https://bugzilla.gnome.org/show_bug.cgi?id=767907
1716
1717 2016-06-21 11:41:15 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1718
1719         * omx/gstomxvideoenc.c:
1720           omxvideoenc: implement GstPreset interface
1721           To allow user to use GstPreset to quickly save and load a set of
1722           parameters.
1723           https://bugzilla.gnome.org/show_bug.cgi?id=767907
1724
1725 2016-06-17 12:06:48 +0300  Sebastian Dröge <sebastian@centricular.com>
1726
1727         * configure.ac:
1728         * omx/gstomx.h:
1729         * omx/gstomxaudiodec.c:
1730         * omx/gstomxaudioenc.c:
1731         * omx/gstomxvideo.c:
1732         * omx/gstomxvideodec.c:
1733         * omx/gstomxvideoenc.c:
1734           omx: #define OMX_SKIP64BIT on the RPi as required by their API
1735           Also add generic support for OMX_SKIP64BIT to gst-omx, in case other
1736           implementations also #define that for whatever reason.
1737           https://bugzilla.gnome.org/show_bug.cgi?id=766475
1738
1739 2016-06-17 10:59:45 +0300  Sebastian Dröge <sebastian@centricular.com>
1740
1741         * omx/gstomxvideodec.c:
1742           omxvideodec: Implement ::drain() virtual method
1743           https://bugzilla.gnome.org/show_bug.cgi?id=767641
1744
1745 2016-06-04 19:31:45 +0100  Tim-Philipp Müller <tim@centricular.com>
1746
1747         * configure.ac:
1748           configure: remove AG_GST_PARSE_SUBSYSTEM_DISABLES
1749           This would check which subsystems are disabled in core by grepping
1750           gstconfig.h. Only problem is: gstconfig.h has moved into libdir now
1751           so we've been checking a non-existent file for a while now. The
1752           macro would just sets GST_DISABLE_* for use in configure.ac and
1753           Makefile.am, but we don't use that anywhere so just get rid of it
1754           (the one place where we use GST_DISABLE_GST_DEBUG is in a .c file
1755           which gets the define from the gstconfig.h include).
1756           https://bugzilla.gnome.org/show_bug.cgi?id=750056
1757
1758 2016-01-20 03:10:38 +0900  Gwang Yoon Hwang <yoon@igalia.com>
1759
1760         * examples/egl/testegl.c:
1761         * omx/gstomxvideodec.c:
1762           omxvideodec : Use gstglmemoryegl for the RPi
1763           Modified to use gstglmemoryegl to avoid texture creation/copy operations
1764           at the glupload.
1765           [Matthew Waters]: gst-indent the sources and port testegl to GstGLMemoryEGL
1766           https://bugzilla.gnome.org/show_bug.cgi?id=760918
1767
1768 2016-04-14 10:04:32 +0100  Julien Isorce <j.isorce@samsung.com>
1769
1770         * common:
1771           Automatic update of common submodule
1772           From 6f2d209 to ac2f647
1773
1774 2016-02-26 12:42:41 +0200  Sebastian Dröge <sebastian@centricular.com>
1775
1776         * common:
1777           Automatic update of common submodule
1778           From b64f03f to 6f2d209
1779
1780 2016-02-17 20:51:03 +1100  Matthew Waters <matthew@centricular.com>
1781
1782         * examples/egl/testegl.c:
1783           examples: update egl example for gstgl API changes
1784           https://bugzilla.gnome.org/show_bug.cgi?id=762053
1785           https://bugzilla.gnome.org/show_bug.cgi?id=753917
1786
1787 2016-02-05 18:11:06 -0300  Thiago Santos <thiagoss@osg.samsung.com>
1788
1789         * autogen.sh:
1790         * common:
1791           Automatic update of common submodule
1792           From 86e4663 to b64f03f
1793
1794 2015-12-21 00:43:49 +0100  Koop Mast <kwm@rainbow-runner.nl>
1795
1796         * configure.ac:
1797           configure: Make -Bsymbolic check work with clang.
1798           Update the -Bsymbolic check with the version glib has. This version
1799           works with clang.
1800           https://bugzilla.gnome.org/show_bug.cgi?id=759713
1801
1802 2015-12-07 09:11:32 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
1803
1804         * autogen.sh:
1805         * common:
1806           Automatic update of common submodule
1807           From b319909 to 86e4663
1808
1809 2015-11-18 13:00:28 +0000  Enrique Ocaña González <eocanha@igalia.com>
1810
1811         * omx/gstomx.c:
1812           Remember the last_error after a failed set state call to avoid blocking the next get state call
1813           gst_omx_video_dec_flush() blocks forever in
1814           http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomxvideodec.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n2110
1815           when the previous call to gst_omx_component_set_state() fails in
1816           http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n827.
1817           To mitigate that, I set "last_error" to true, so the code in
1818           http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n862
1819           exits early and doesn't block.
1820           https://bugzilla.gnome.org/show_bug.cgi?id=758274
1821
1822 2015-11-18 12:59:59 +0000  Enrique Ocaña González <eocanha@igalia.com>
1823
1824         * omx/gstomxaudiodec.c:
1825         * omx/gstomxaudioenc.c:
1826         * omx/gstomxvideodec.c:
1827         * omx/gstomxvideoenc.c:
1828           Properly handle drain requests while flushing
1829           Without this commit the decoder streaming thread stops without ever attending
1830           the drain request, leaving the decoder input thread waiting forever.
1831           https://bugzilla.gnome.org/show_bug.cgi?id=758274
1832
1833 2015-11-10 10:42:35 +0100  Nicolas Huet <nicolas.huet@parrot.com>
1834
1835         * omx/gstomx.c:
1836           omx: fix hacks leak on class init
1837
1838 2015-10-21 14:37:13 +0100  Tim-Philipp Müller <tim@centricular.com>
1839
1840         * common:
1841           Automatic update of common submodule
1842           From b99800a to b319909
1843
1844 2015-10-21 14:28:41 +0300  Sebastian Dröge <sebastian@centricular.com>
1845
1846         * common:
1847           Automatic update of common submodule
1848           From 9aed1d7 to b99800a
1849
1850 2015-09-01 16:08:11 -0300  Thiago Santos <thiagoss@osg.samsung.com>
1851
1852         * omx/gstomxaacdec.c:
1853           omxaacdec: Do not accept unknown layouts
1854           It was defaulting to RAW when an unknown layout was received but
1855           the caps template would actually forbid that on the caps query
1856           or accept-caps anyway.
1857
1858 2015-09-01 08:59:54 -0300  Thiago Santos <thiagoss@osg.samsung.com>
1859
1860         * omx/gstomxaudiodec.c:
1861           omxaudiodec: use default pad accept-caps handling
1862           Instead of the audiodecoder one. The OMX audioo decoders have their
1863           valid input in the template pad, so just check against that to
1864           avoid doing a query downstream.
1865
1866 2015-08-28 12:57:33 -0300  Thiago Santos <thiagoss@osg.samsung.com>
1867
1868         * omx/gstomxvideodec.c:
1869           omxvideodec: use default pad accept-caps handling
1870           Instead of the videodecoder one. The OMX video decoders have their
1871           valid input in the template pad, so just check against that to
1872           avoid doing a query downstream.
1873
1874 2015-08-22 15:54:55 +0000  Graham Leggett <minfrin@sharp.fm>
1875
1876         * omx/gstomxvideoenc.c:
1877           omxvideoenc: Add keyframe support for the Rpi, using OMX_IndexConfigBrcmVideoRequestIFrame
1878           https://bugzilla.gnome.org/show_bug.cgi?id=753085
1879
1880 2015-08-20 17:20:50 +0900  Vineeth TM <vineeth.tm@samsung.com>
1881
1882         * examples/egl/testegl.c:
1883           gst-omx: Fix memory leaks when context parse fails
1884           When g_option_context_parse fails, context and error variables are not getting free'd
1885           which results in memory leaks. Free'ing the same.
1886           And replacing g_error_free with g_clear_error, which checks if the error being passed
1887           is not NULL and sets the variable to NULL on free'ing.
1888           https://bugzilla.gnome.org/show_bug.cgi?id=753865
1889
1890 2015-08-16 14:53:42 +0200  Philippe Normand <philn@igalia.com>
1891
1892         * omx/gstomxh264dec.c:
1893           omxh264dec: implement is_format_change
1894           The omxvideodecoder class only checks some of the caps parameters but if
1895           other fields change such as h264 profile and/or level it wouldn't trigger a
1896           reconfiguration.
1897           https://bugzilla.gnome.org/show_bug.cgi?id=752376
1898
1899 2015-07-03 00:26:48 +0200  Aurélien Zanelli <aurelien.zanelli@darkosphere.fr>
1900
1901         * omx/gstomxvideodec.c:
1902           omxvideodec: unref allocator after getting it from allocation query
1903           Otherwise a reference will be leaked for each allocator. It only happens
1904           when target platform is Raspberry Pi and when we have GL support.
1905           https://bugzilla.gnome.org/show_bug.cgi?id=751867
1906
1907 2015-07-03 21:59:54 +0200  Stefan Sauer <ensonic@users.sf.net>
1908
1909         * common:
1910           Automatic update of common submodule
1911           From f74b2df to 9aed1d7
1912
1913 2015-06-16 17:50:14 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
1914
1915         * common:
1916           Automatic update of common submodule
1917           From 6015d26 to f74b2df
1918
1919 2015-06-09 11:30:49 +0200  Edward Hervey <bilboed@bilboed.com>
1920
1921         * common:
1922           Automatic update of common submodule
1923           From d9a3353 to 6015d26
1924
1925 2015-06-08 23:08:28 +0200  Stefan Sauer <ensonic@users.sf.net>
1926
1927         * common:
1928           Automatic update of common submodule
1929           From d37af32 to d9a3353
1930
1931 2015-06-07 23:07:22 +0200  Stefan Sauer <ensonic@users.sf.net>
1932
1933         * common:
1934           Automatic update of common submodule
1935           From 21ba2e5 to d37af32
1936
1937 2015-06-07 17:32:25 +0200  Stefan Sauer <ensonic@users.sf.net>
1938
1939         * common:
1940           Automatic update of common submodule
1941           From c408583 to 21ba2e5
1942
1943 2015-06-07 17:16:43 +0200  Stefan Sauer <ensonic@users.sf.net>
1944
1945         * autogen.sh:
1946         * common:
1947           Automatic update of common submodule
1948           From c8fb372 to c408583
1949
1950 2015-05-19 18:21:40 +0300  Sebastian Dröge <sebastian@centricular.com>
1951
1952         * omx/gstomxaudiodec.c:
1953         * omx/gstomxaudiodec.h:
1954           omxaudiodec: Add an output adapter for chunking the output into codec frames
1955           Otherwise the base class will be confused.
1956           See https://bugzilla.gnome.org/show_bug.cgi?id=685730
1957
1958 2015-04-26 18:24:13 +0100  Tim-Philipp Müller <tim@centricular.com>
1959
1960         * Android.mk:
1961         * omx/Makefile.am:
1962           Remove obsolete Android build cruft
1963           This is not needed any longer.
1964
1965 2015-04-22 10:40:22 +0200  Sebastian Dröge <sebastian@centricular.com>
1966
1967         * INSTALL:
1968           Remove INSTALL file
1969           autotools automatically generate this, and when using different versions
1970           for autogen.sh there will always be changes to a file tracked by git.
1971
1972 2015-04-08 15:57:59 +0100  Tim-Philipp Müller <tim@centricular.com>
1973
1974         * .gitignore:
1975         * Makefile.am:
1976         * configure.ac:
1977         * m4/Makefile.am:
1978           Add m4 directory so aclocal doesn't complain in autogen.sh
1979           Might come in handy, and these warnings seem to be
1980           fatal in some environments.
1981           You may need to git clean -x -d -f your tree before
1982           git pulling/merging.
1983
1984 2015-04-07 22:25:57 +0100  Tim-Philipp Müller <tim@centricular.com>
1985
1986         * INSTALL:
1987         * autogen.sh:
1988           Update autogen.sh to latest version
1989
1990 2015-04-03 18:58:17 +0100  Tim-Philipp Müller <tim@centricular.com>
1991
1992         * common:
1993           Automatic update of common submodule
1994           From bc76a8b to c8fb372
1995
1996 2015-03-06 12:12:49 +0000  Luis de Bethencourt <luis.bg@samsung.com>
1997
1998         * omx/gstomxaacdec.c:
1999           omxaudiodec: add comment explaining duplicate code path
2000
2001 2015-03-06 12:09:06 +0000  Luis de Bethencourt <luis.bg@samsung.com>
2002
2003         * omx/gstomxaacdec.c:
2004           Revert "omxaudiodec: remove duplicate code path"
2005           This reverts commit a8d26ff27a8b43f589424a59294f9057641b2a46.
2006
2007 2015-03-06 12:03:56 +0000  Luis de Bethencourt <luis.bg@samsung.com>
2008
2009         * omx/gstomx.c:
2010           omx: handle both errors in the two steps of update_port_definition
2011           Also consider potential errors in the _get_parameter() in the return of the
2012           update_port_definition function.
2013           CID #1287052
2014
2015 2015-03-06 10:57:53 +0000  Luis de Bethencourt <luis.bg@samsung.com>
2016
2017         * omx/gstomxaudioenc.c:
2018           omxaudioenc: impossible if statement
2019           ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
2020           for it to be anything else at the if check. Remove the if check.
2021           CID #1287053
2022
2023 2015-03-06 10:54:43 +0000  Luis de Bethencourt <luis.bg@samsung.com>
2024
2025         * omx/gstomxaudiodec.c:
2026           omxaudiodec: impossible if statement
2027           ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
2028           for it to be anything else at the if check. Remove it.
2029           CID #1287054
2030
2031 2015-03-06 10:50:30 +0000  Luis de Bethencourt <luis.bg@samsung.com>
2032
2033         * omx/gstomxaacdec.c:
2034           omxaudiodec: remove duplicate code path
2035
2036 2014-12-19 11:19:55 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
2037
2038         * omx/gstomx.c:
2039           omx: call handle_messages() only once in acquire_buffer() to avoid potential deadlock
2040           There is one rare case where calling handle_messages() more than once can cause a deadlock
2041           in the video decoder element:
2042           - sink pad thread starts the src pad task (gst_omx_video_dec_loop())
2043           - _video_dec_loop() calls gst_omx_port_acquire_buffer() on dec_out_port
2044           - blocks in gst_omx_component_wait_message() releasing comp->lock and comp->messages_lock
2045           (initially, there are no buffers configured on that port, so it waits for OMX_EventPortSettingsChanged)
2046           - the sink pad thread pushes a buffer to the decoder with gst_omx_port_release_buffer()
2047           - _release_buffer() grabs comp->lock and sends the buffer to OMX, which consumes it immediately
2048           - EmptyBufferDone gets called at this point, which signals _wait_message() to unblock
2049           - the message from EmptyBufferDone is processed in gst_omx_component_handle_messages()
2050           called from gst_omx_port_release_buffer()
2051           - gst_omx_port_release_buffer releases comp->lock
2052           - the src pad thread now gets to run, grabbing comp->lock while it exits from _wait_message()
2053           - _acquire_buffer() calls the _handle_messages() on the next line after _wait_message(),
2054           which does nothing (no pending messages)
2055           - then it goes to "retry:" and calls _handle_messages() again, which also does nothing
2056           (still no pending messages)
2057           - scheduler switches to a videocore thread that calls EventHandler, informing us about the
2058           OMX_EventPortSettingsChanged event that just arrived
2059           - EventHandler graps comp->messages_lock, but not comp->lock, so it can run in parallel at
2060           this point just fine.
2061           - scheduler switches back to the src pad thread (which is in the middle of _acquire_buffer())
2062           - the next _handle_messages() which is right before if (g_queue_is_empty (&port->pending_buffers))
2063           processes the OMX_EventPortSettingsChanged
2064           - the buffer queue is still empty, so that thread blocks again in _wait_message()
2065           - the sink pad thread tries to acquire the next input port buffer
2066           - _acquire_buffer() also blocks this thread in:
2067           if (comp->pending_reconfigure_outports) { ... _wait_message() ... }
2068           - DEADLOCK. gstreamer is waiting for omx to do something, omx waits for gstreamer to do something.
2069           By removing those extra _handle_messages() calls, we can ensure that all the checks of
2070           _acquire_buffer() will re-run. In the above case, after the scheduler switches back to
2071           the middle of _acquire_buffer(), the code will enter _wait_message(), which will see that
2072           there are pending messages and will return immediately, going back to "retry:" and
2073           re-doing all the checks properly.
2074           https://bugzilla.gnome.org/show_bug.cgi?id=741854
2075
2076 2015-02-26 09:27:44 +0900  Wonchul Lee <chul0812@gmail.com>
2077
2078         * omx/gstomx.c:
2079           omx: cleanup code a bit to remove else statement
2080           https://bugzilla.gnome.org/show_bug.cgi?id=745191
2081
2082 2015-01-12 16:13:35 +0100  Stefan Sauer <ensonic@users.sf.net>
2083
2084         * common:
2085           Automatic update of common submodule
2086           From f2c6b95 to bc76a8b
2087
2088 2014-12-18 10:56:15 +0100  Sebastian Dröge <sebastian@centricular.com>
2089
2090         * common:
2091           Automatic update of common submodule
2092           From ef1ffdc to f2c6b95
2093
2094 2014-11-27 17:12:42 +0100  Edward Hervey <bilboed@bilboed.com>
2095
2096         * common:
2097           Automatic update of common submodule
2098           From 7bb2bce to ef1ffdc
2099
2100 2014-11-13 09:55:02 +0900  Jun Ji <jun.ji@lge.com>
2101
2102         * omx/Makefile.am:
2103         * omx/gstomx.c:
2104         * omx/gstomxamrdec.c:
2105         * omx/gstomxamrdec.h:
2106           omx: Add omxamrdec
2107           https://bugzilla.gnome.org/show_bug.cgi?id=739333
2108
2109 2014-10-27 18:00:50 +0100  Sebastian Dröge <sebastian@centricular.com>
2110
2111         * common:
2112           Automatic update of common submodule
2113           From 84d06cd to 7bb2bce
2114
2115 2014-10-21 13:03:44 +0100  Tim-Philipp Müller <tim@centricular.com>
2116
2117         * common:
2118           Automatic update of common submodule
2119           From a8c8939 to 84d06cd
2120
2121 2014-10-21 13:00:10 +0200  Stefan Sauer <ensonic@users.sf.net>
2122
2123         * common:
2124           Automatic update of common submodule
2125           From 1f5d3c3 to a8c8939
2126
2127 2014-09-30 10:47:20 +0300  Sebastian Dröge <sebastian@centricular.com>
2128
2129         * omx/gstomxaudiodec.c:
2130           omxaudiodec: Clean up code a bit to get rid of useless NULL checks
2131
2132 2014-09-30 10:50:07 +0900  junji <jun.ji@lge.com>
2133
2134         * omx/gstomxaudiodec.c:
2135           omxaudiodec: Unmap input buffers after usage
2136           https://bugzilla.gnome.org/show_bug.cgi?id=736314
2137
2138 2014-08-31 20:30:13 +0000  Michal Lazo <michal.lazo@mdragon.org>
2139
2140         * omx/gstomxvideoenc.c:
2141           omxvideoenc: Setup aspect ratio on RPi
2142           Needs firmware from yesterday or newer to work with all possible
2143           aspect ratios. Before that it only supported a fixed list.
2144           https://bugzilla.gnome.org/show_bug.cgi?id=732533
2145
2146 2014-08-28 10:44:31 +0300  Sebastian Dröge <sebastian@centricular.com>
2147
2148         * omx/gstomxaudioenc.c:
2149           omxaudioenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
2150
2151 2014-08-28 10:43:22 +0300  Sebastian Dröge <sebastian@centricular.com>
2152
2153         * omx/gstomxaudioenc.c:
2154           omxaudioenc: Use the base class' open/close vfuncs instead of calling them ourselves
2155
2156 2014-08-26 22:13:53 -0500  Peng Liu <pengliu.mail@gmail.com>
2157
2158         * config/rpi/gstomx.conf:
2159         * omx/gstomxvideoenc.c:
2160           omxvideoenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
2161           Fix a video encoder stall problem on RPi when changing the aspect ratio.
2162           https://bugzilla.gnome.org/show_bug.cgi?id=732533
2163
2164 2014-08-14 17:36:11 +0300  Sebastian Dröge <sebastian@centricular.com>
2165
2166         * omx/gstomxaudiodec.c:
2167         * omx/gstomxaudiodec.h:
2168         * omx/gstomxaudioenc.c:
2169         * omx/gstomxaudioenc.h:
2170         * omx/gstomxvideodec.c:
2171         * omx/gstomxvideodec.h:
2172         * omx/gstomxvideoenc.c:
2173         * omx/gstomxvideoenc.h:
2174           omx: Let base classes handle EOS
2175           https://bugzilla.gnome.org//show_bug.cgi?id=734774
2176
2177 2014-08-14 17:33:07 +0300  Sebastian Dröge <sebastian@centricular.com>
2178
2179         * omx/gstomxaudiodec.c:
2180           omxaudiodec: Fix flushing logic and make it more similar to the video decoder
2181
2182 === release 1.2.0 ===
2183
2184 2014-07-23 11:28:12 +0200  Sebastian Dröge <sebastian@centricular.com>
2185
2186         * ChangeLog:
2187         * NEWS:
2188         * RELEASE:
2189         * configure.ac:
2190         * gst-omx.doap:
2191         * omx/Makefile.am:
2192           Release 1.2.0
2193
2194 2014-07-22 09:23:00 +0200  Sebastian Dröge <sebastian@centricular.com>
2195
2196         * config/bellagio/gstomx.conf:
2197         * config/rpi/gstomx.conf:
2198           config: Update ranks to PRIMARY+1 to have higher preference than avdec_*
2199           See https://bugzilla.gnome.org/show_bug.cgi?id=732161
2200
2201 2014-07-20 17:46:30 +0200  Sebastian Dröge <sebastian@centricular.com>
2202
2203         * omx/gstomxaudiosink.c:
2204           omxaudiosink: Set port to not flushing in prepare() and keep it at flushing in unprepare()
2205           https://bugzilla.gnome.org/show_bug.cgi?id=733168
2206
2207 2014-07-13 22:15:18 +0200  Sebastian Dröge <sebastian@centricular.com>
2208
2209         * omx/gstomxaacdec.c:
2210         * omx/gstomxaudiodec.c:
2211         * omx/gstomxaudiodec.h:
2212         * omx/gstomxmp3dec.c:
2213           omxaudiodec: Implement setting of fallback channel positions
2214
2215 2014-07-13 18:22:39 +0200  Sebastian Dröge <sebastian@centricular.com>
2216
2217         * omx/Makefile.am:
2218         * omx/gstomx.c:
2219         * omx/gstomxaacdec.c:
2220         * omx/gstomxaacdec.h:
2221         * omx/gstomxmp3dec.c:
2222           omx: Add AAC audio decoder
2223
2224 2014-07-02 09:22:28 +0200  Sebastian Dröge <sebastian@centricular.com>
2225
2226         * omx/gstomxaudiodec.c:
2227           omxaudiodec: Get PCM parameters from the out port, not the in port
2228
2229 2014-05-15 13:24:39 +0200  Sebastian Dröge <sebastian@centricular.com>
2230
2231         * omx/gstomxaudiodec.c:
2232           omxaudiodec: Implement hack for not disabling the output port after set_format until the output format is known
2233           Needed on some OMX implementations, e.g. the one from Atmel. It does
2234           not send the settings-changed event on the output port if it is
2235           disabled.
2236
2237 2014-05-10 23:12:54 +0200  Sebastian Dröge <sebastian@centricular.com>
2238
2239         * omx/Makefile.am:
2240         * omx/gstomx.c:
2241         * omx/gstomxaudiodec.c:
2242         * omx/gstomxaudiodec.h:
2243         * omx/gstomxmp3dec.c:
2244         * omx/gstomxmp3dec.h:
2245           omx: Add audio decoder base class and a subclass for MP3
2246
2247 2014-07-01 09:38:01 +0200  Sebastian Dröge <sebastian@centricular.com>
2248
2249         * configure.ac:
2250         * omx/Makefile.am:
2251           omx: Link to gmodule-2.0-no-export for being able to use the g_module_*() API
2252           https://bugzilla.gnome.org/show_bug.cgi?id=732518
2253
2254 2014-06-30 15:00:54 +0200  Sebastian Dröge <sebastian@centricular.com>
2255
2256         * examples/egl/testegl.c:
2257           examples: #define GST_USE_UNSTABLE_API for libgstgl
2258
2259 2014-06-29 19:10:19 +0200  Sebastian Dröge <sebastian@centricular.com>
2260
2261         * omx/gstomxh264enc.c:
2262         * omx/gstomxh264enc.h:
2263           omxh264enc: Properly accumulate headers and push before the next frame
2264           Fixes output of encoding on RPi, where each header buffer (SPS and PPS)
2265           is in a separate OMX buffer.
2266           https://bugzilla.gnome.org/show_bug.cgi?id=726669
2267
2268 2014-06-29 19:04:54 +0200  Sebastian Dröge <sebastian@centricular.com>
2269
2270         * omx/gstomxvideoenc.c:
2271           omxvideoenc: Implement flush() instead of the deprecated reset()
2272
2273 2014-06-25 17:14:18 +0200  Sebastian Dröge <sebastian@centricular.com>
2274
2275         * config/rpi/gstomx.conf:
2276           rpi: It's 44100Hz, not 41400Hz
2277
2278 2014-06-25 11:12:51 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2279
2280         * configure.ac:
2281           configure.ac: require gstgl >= 1.3.3
2282
2283 2014-04-25 13:25:05 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2284
2285         * Makefile.am:
2286         * configure.ac:
2287           example: enable testegl
2288           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
2289
2290 2014-06-25 10:19:54 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2291
2292         * examples/egl/testegl.c:
2293           testegl: do matrix mutlplication in the shader
2294           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
2295
2296 2014-06-25 09:36:38 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2297
2298         * examples/egl/testegl.c:
2299           testegl: add a comment for the parse command
2300           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
2301
2302 2014-04-25 17:32:16 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2303
2304         * examples/egl/Makefile.am:
2305         * examples/egl/cube_texture_and_coords.h:
2306         * examples/egl/testegl.c:
2307           testegl: convert code from GLESv1 to GLESv2
2308           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
2309
2310 2014-04-25 13:21:59 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2311
2312         * examples/egl/Makefile.am:
2313         * examples/egl/testegl.c:
2314           testegl: port to gstgl API
2315           - append a glfilter just before fakesink
2316           So that we get gltexture or eglimages
2317           - propagate our EGLDisplay to the pipeline
2318           see GST_QUERY_CONTEXT
2319           - share our EGLContext with the iternal gl context
2320           of the pipeline, see GST_QUERY_ALLOCATION
2321           - use GstVideoGLTextureUploadMeta to upload
2322           the incoming gltexture or eglimage to our gl texture
2323           TODO: convert from GLESv1 to GLESv2
2324           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
2325
2326 2014-06-24 14:52:58 +0200  Sebastian Dröge <sebastian@centricular.com>
2327
2328         * omx/gstomxbufferpool.c:
2329         * omx/gstomxbufferpool.h:
2330         * omx/gstomxvideodec.c:
2331           omxbufferpool: Copy buffers if the stride does not match and we can't use video meta
2332           https://bugzilla.gnome.org/show_bug.cgi?id=731672
2333
2334 2014-06-24 14:52:43 +0200  Sebastian Dröge <sebastian@centricular.com>
2335
2336         * configure.ac:
2337         * omx/gstomx.h:
2338         * omx/gstomxvp8dec.h:
2339           omx: Only include OMX_VideoExt.h conditionally
2340           It does not exist on the RPi for example.
2341
2342 2014-06-24 13:59:44 +0200  Sebastian Dröge <sebastian@centricular.com>
2343
2344         * configure.ac:
2345           configure.ac: Require GStreamer core/base >= 1.2.2
2346           Needed at least for gst_video_decoder_release_frame().
2347
2348 2014-06-24 13:02:13 +0200  Sebastian Dröge <sebastian@centricular.com>
2349
2350         * omx/gstomxbufferpool.c:
2351           omxbufferpool: Fix format string compiler warning
2352
2353 2014-06-22 21:11:45 +0000  Michal Lazo <xlazom00@gmail.com>
2354
2355         * omx/gstomxbufferpool.c:
2356           omxbufferpool: Initialize debug category
2357
2358 2014-06-24 12:42:22 +0200  Sebastian Dröge <sebastian@centricular.com>
2359
2360         * omx/gstomxbufferpool.c:
2361           omxbufferpool: Properly convert OMX alignment to GStreamer alignment
2362           GStreamer uses a bitmask for the alignment while OMX uses the
2363           alignment itself. Let's convert.
2364           https://bugzilla.gnome.org/show_bug.cgi?id=710564
2365
2366 2014-06-24 11:11:28 +0200  Sebastian Dröge <sebastian@centricular.com>
2367
2368         * omx/gstomxh264enc.c:
2369           omxh264enc: Don't let baseclass finish frames for SPS/PPS buffers
2370           Otherwise we a) send them twice, and b) finish a frame for something
2371           that does not even include a frame.
2372           https://bugzilla.gnome.org/show_bug.cgi?id=726669
2373
2374 2014-06-24 10:22:37 +0200  Sebastian Dröge <sebastian@centricular.com>
2375
2376         * omx/gstomxvideo.h:
2377           omxvideo: Include the separate headers too for compatibility with 1.0.x
2378
2379 2014-03-24 16:09:40 +0800  Zhao, Halley <halley.zhao@intel.com>
2380
2381         * configure.ac:
2382         * omx/gstomxvp8dec.h:
2383           omxvp8dec: use VP8 definition from OMX_VideoExt.h
2384           https://bugzilla.gnome.org/show_bug.cgi?id=726957
2385
2386 2014-03-24 15:33:26 +0800  Zhao, Halley <halley.zhao@intel.com>
2387
2388         * configure.ac:
2389           configure: add --with-omx-header-path option for external omx headers
2390           https://bugzilla.gnome.org/show_bug.cgi?id=726957
2391
2392 2014-06-18 23:04:33 +0200  Aurélien Zanelli <aurelien.zanelli@darkosphere.fr>
2393
2394         * omx/gstomxvideodec.c:
2395           omxvideodec: fix a query leak
2396           Also add a debug message if query fails.
2397           https://bugzilla.gnome.org/show_bug.cgi?id=731898
2398
2399 2014-05-30 15:29:15 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2400
2401         * omx/gstomxvideodec.c:
2402           omxvideodec: release frames with old PTS to avoid memory issue
2403           Interlaced stream could make the decoder use two input frames to produce
2404           one output frame causing the gstvideodecoder frame list to grow.
2405           Assuming the video decoder output frame in display order rather than in
2406           decoding order, this commit add a way to release frames with PTS less
2407           than current output frame.
2408           https://bugzilla.gnome.org/show_bug.cgi?id=730995
2409
2410 2013-06-27 21:59:29 +0900  Kazunori Kobayashi <kkobayas@igel.co.jp>
2411
2412         * omx/gstomx.c:
2413           omx: Fix a missing g_free() in error path
2414           This fixes a memory leak with g_strdup() when an error occurs.
2415           https://bugzilla.gnome.org/show_bug.cgi?id=731141
2416
2417 2014-06-02 15:34:09 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2418
2419         * omx/gstomxvideodec.c:
2420           omxvideodec: add missing stream unlock in error path
2421
2422 2014-05-31 15:12:05 +0200  Sebastian Dröge <sebastian@centricular.com>
2423
2424         * omx/gstomx.c:
2425           omx: Don't handle disabling/enabling ports exactly like flushing
2426           Otherwise we might abort a flush operation in another thread when
2427           enabling/disabling ports, leading to deadlocks sometimes.
2428           https://bugzilla.gnome.org/show_bug.cgi?id=730989
2429
2430 2014-05-26 11:02:10 +0200  Sebastian Dröge <sebastian@centricular.com>
2431
2432         * omx/gstomxvideodec.c:
2433           omxvideodec: Don't leak buffer pool config in error cases
2434           CID 1216158
2435
2436 2014-05-21 10:53:43 +0200  Sebastian Dröge <sebastian@centricular.com>
2437
2438         * common:
2439           Automatic update of common submodule
2440           From 211fa5f to 1f5d3c3
2441
2442 2014-05-19 09:10:07 +0200  Sebastian Dröge <sebastian@centricular.com>
2443
2444         * omx/gstomxvideoenc.c:
2445           omxvideoenc: Don't forget to unref codec state
2446           CID 1214603
2447
2448 2014-05-19 09:08:33 +0200  Sebastian Dröge <sebastian@centricular.com>
2449
2450         * omx/gstomxvideodec.c:
2451           omxvideodec: Make output buffer pointer always initialized
2452           CID 1214605
2453
2454 2014-05-19 09:06:42 +0200  Sebastian Dröge <sebastian@centricular.com>
2455
2456         * omx/gstomxvideodec.c:
2457           omxvideodec: Check return value of gst_buffer_map()
2458           CID 1214599
2459
2460 2014-05-19 09:04:09 +0200  Sebastian Dröge <sebastian@centricular.com>
2461
2462         * omx/gstomxvideodec.c:
2463           omxvideodec: Check return value of gst_omx_port_set_enabled() for errors
2464           CID 1214589
2465
2466 2014-05-19 09:01:46 +0200  Sebastian Dröge <sebastian@centricular.com>
2467
2468         * omx/gstomxvideodec.c:
2469           omxvideodec: Check return values of buffer pool config parsing functions
2470           CID 1214588
2471
2472 2014-05-19 08:48:50 +0200  Sebastian Dröge <sebastian@centricular.com>
2473
2474         * omx/gstomx.c:
2475           omx: Remove dead code, buf can never be NULL here as we just check for that the line above
2476           CID 1214596
2477
2478 2014-05-19 08:47:36 +0200  Sebastian Dröge <sebastian@centricular.com>
2479
2480         * omx/gstomx.c:
2481           omx: Fix comparisons in gst_omx_state_to_string() case to actually make sense
2482           CID 1214593
2483
2484 2014-05-19 08:45:10 +0200  Sebastian Dröge <sebastian@centricular.com>
2485
2486         * omx/gstomx.c:
2487           omx: Make sure to compare the error codes as unsigned integers so that comparisons >2**31 actually work
2488           CID 1214592
2489
2490 2014-05-19 08:40:23 +0200  Sebastian Dröge <sebastian@centricular.com>
2491
2492         * omx/gstomx.c:
2493           omx: Fix comparisons in gst_omx_command_to_string() default cause to actually work
2494           CID 1214591
2495
2496 2014-05-15 13:22:56 +0200  Sebastian Dröge <sebastian@centricular.com>
2497
2498         * omx/gstomxaudioenc.c:
2499           omxaudioenc: Implement hack for not disabling the output port after set_format until the output format is known
2500           Needed on some OMX implementations, e.g. the one from Atmel. It does
2501           not send the settings-changed event on the output port if it is
2502           disabled.
2503
2504 2014-05-15 13:21:07 +0200  Sebastian Dröge <sebastian@centricular.com>
2505
2506         * omx/gstomxvideoenc.c:
2507           omxvideoenc: Implement hack for not disabling the output port after set_format until the output format is known
2508           Needed on some OMX implementations, e.g. the one from Atmel. It does
2509           not send the settings-changed event on the output port if it is
2510           disabled.
2511
2512 2014-05-15 10:58:34 +0200  Sebastian Dröge <sebastian@centricular.com>
2513
2514         * omx/gstomx.c:
2515         * omx/gstomx.h:
2516         * omx/gstomxvideodec.c:
2517           omx: Add a hack for not disabling the output port after set_format until the output format is known
2518           Needed on some OMX implementations, e.g. the one from Atmel. It does
2519           not send the settings-changed event on the output port if it is
2520           disabled.
2521
2522 2014-05-12 12:33:32 +0200  Josep Torra <n770galaxy@gmail.com>
2523
2524         * omx/gstomxaudiosink.c:
2525           omxaudiosink: implement _delay only in the RaspberryPI
2526           Make code implementation conditionally built for RaspberryPI because
2527           OMX_IndexConfigAudioRenderingLatency seems to be a Broadcom extension.
2528           On other targets the query position might not be accurate without
2529           implementing _delay appropriatelly.
2530
2531 2014-05-12 08:56:15 +0200  Sebastian Dröge <sebastian@centricular.com>
2532
2533         * omx/gstomxaudioenc.c:
2534           omxaudioenc: Correctly scale nTickCount by OMX_TICKS_PER_SECOND
2535
2536 2014-05-10 22:48:23 +0200  Sebastian Dröge <sebastian@centricular.com>
2537
2538         * omx/gstomxaudioenc.c:
2539           omxaudioenc: Drain encoder on NULL buffer and don't drain on flushing
2540
2541 2014-05-10 22:47:56 +0200  Sebastian Dröge <sebastian@centricular.com>
2542
2543         * omx/gstomxvideodec.c:
2544           omxvideodec: Set nTickCount based on the buffer's duration instead of something wrong
2545
2546 2014-05-10 22:47:21 +0200  Sebastian Dröge <sebastian@centricular.com>
2547
2548         * omx/gstomxvideoenc.c:
2549           omxvideoenc: Set nTickCount to the whole duration of the buffer instead of a wrong calculation
2550
2551 2014-05-10 22:46:51 +0200  Sebastian Dröge <sebastian@centricular.com>
2552
2553         * omx/gstomxaudiosink.c:
2554           omxaudiosink: Fix format string compiler warnings
2555
2556 2014-04-04 14:11:58 +0200  Josep Torra <n770galaxy@gmail.com>
2557
2558         * config/rpi/gstomx.conf:
2559         * omx/Makefile.am:
2560         * omx/gstomx.c:
2561         * omx/gstomxanalogaudiosink.c:
2562         * omx/gstomxanalogaudiosink.h:
2563         * omx/gstomxaudiosink.c:
2564         * omx/gstomxaudiosink.h:
2565         * omx/gstomxhdmiaudiosink.c:
2566         * omx/gstomxhdmiaudiosink.h:
2567           omxaudiosink: Implements OpenMAX based audio sinks
2568           Provides omxanalogaudiosink and omxhdmiaudiosink elements on
2569           the Raspberry PI.
2570           - omxanalogaudiosink is capable to render raw mono or stereo audio
2571           through the jack output.
2572           - omxhdmiaudiosink is capable to render raw audio up to 8 channels
2573           and transmit ac3/dts(IEC 61937) through the HDMI output.
2574           - sinks provide a clock derived from rendered samples
2575           - sinks support the GstStreamVolume interface by implementing
2576           the volume and mute properties.
2577           https://bugzilla.gnome.org/show_bug.cgi?id=728962
2578
2579 2014-05-03 10:17:35 +0200  Sebastian Dröge <sebastian@centricular.com>
2580
2581         * common:
2582           Automatic update of common submodule
2583           From bcb1518 to 211fa5f
2584
2585 2014-04-29 15:16:16 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2586
2587         * omx/gstomxvideodec.c:
2588           omxvideodec: can negotiate caps with memory:EGLImage feature when using EGLImage allocator
2589           Previously when using gst EGLImage allocator the caps was
2590           video/x-raw, format=RGBA instead of
2591           video/x-raw(memory:EGLImage), format=RGBA
2592           Kepp previous behavior in case negotiation fails with caps feature.
2593           It means it will still have a chance to use EGLImage even if the
2594           feature is not in the caps.
2595           https://bugzilla.gnome.org/show_bug.cgi?id=729196
2596
2597 2014-04-23 09:57:48 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2598
2599         * omx/gstomxvp8dec.h:
2600           omxvp8dec: fix typo in GST_TYPE_OMX_VP8_DEC define
2601           https://bugzilla.gnome.org/show_bug.cgi?id=728774
2602
2603 2014-04-16 11:00:55 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2604
2605         * omx/gstomxvideodec.c:
2606           omxvideodec: don't unref caps before logging field from it
2607           https://bugzilla.gnome.org/show_bug.cgi?id=728322
2608
2609 2014-04-15 17:30:13 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2610
2611         * Makefile.am:
2612         * configure.ac:
2613           example: disable testegl since libgstegl has been removed
2614           As decided in bug #703343
2615           Not compatible with the new libgstgl API.
2616           A portage has been started, attachment 272800.
2617           https://bugzilla.gnome.org/show_bug.cgi?id=703343
2618
2619 2014-04-15 17:11:08 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2620
2621         * omx/gstomxvideodec.c:
2622           omxvideodec: use new libgstgl API since libgstegl has been removed
2623           There is no point to retrieve a ref/unref type
2624           instead of an EGLDisplay directly. It's like for EGLImage.
2625           https://bugzilla.gnome.org/show_bug.cgi?id=703343
2626
2627 2014-04-15 17:06:38 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
2628
2629         * configure.ac:
2630         * examples/Makefile.am:
2631         * omx/Makefile.am:
2632         * omx/gstomxvideodec.c:
2633           configure.ac: check for libgstgl since libgstegl has been removed
2634           https://bugzilla.gnome.org/show_bug.cgi?id=703343
2635
2636 2014-04-09 18:52:16 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2637
2638         * omx/gstomxbufferpool.c:
2639         * omx/gstomxvideodec.c:
2640           omxvideodec: add support of more color format
2641           Add support for ABGR, ARGB, RGB16, BGR16, YUY2, UYVY, YVYU, GRAY8 and
2642           NV16 color format.
2643
2644 2014-04-09 18:51:57 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2645
2646         * omx/gstomxvideodec.c:
2647           omxvideodec: simplify color format conversion in fill_buffer function
2648
2649 2014-04-09 18:51:41 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2650
2651         * omx/gstomxbufferpool.c:
2652           omxbufferpool: make video stride and offset calculation easier
2653           It will be easier to support more color format.
2654
2655 2014-04-09 18:51:12 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
2656
2657         * omx/gstomxvideo.c:
2658         * omx/gstomxvideo.h:
2659         * omx/gstomxvideodec.c:
2660           omx: add an helper to convert OMX color format to GStreamer color format
2661
2662 2014-03-10 17:43:50 +0100  Josep Torra <n770galaxy@gmail.com>
2663
2664         * examples/egl/testegl.c:
2665         * omx/gstomxvideodec.c:
2666           omxvideodec: Implement pipeline draining to support adaptive scenarios
2667           When draining due a format change also drain
2668           the pipeline to reclaim back all buffers.
2669           https://bugzilla.gnome.org/show_bug.cgi?id=726107
2670
2671 2014-03-27 13:57:32 +0100  Josep Torra <n770galaxy@gmail.com>
2672
2673         * examples/egl/testegl.c:
2674           examples: fix several memory leaks in the testegl example
2675           Ensure to call to image_data_free in order to release GPU resources.
2676           Also ensure to destroy EGLImage and GLTexture from proper
2677           thread/context.
2678           https://bugzilla.gnome.org/show_bug.cgi?id=726107
2679
2680 2014-03-25 17:16:31 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
2681
2682         * examples/egl/testegl.c:
2683           examples: keep a ref on the buffer instead of the memory
2684           Like in eglglessink
2685           https://bugzilla.gnome.org/show_bug.cgi?id=726107
2686
2687 2014-03-07 20:08:05 +0100  Josep Torra <n770galaxy@gmail.com>
2688
2689         * omx/gstomxvideodec.c:
2690           omxvideodec: fixes race condition during seeks
2691           Acording 6.1.3 Seek Event Sequence in the OpenMAX IL 1.1.2 spec
2692           document in order to flush the component it needs to be in
2693           paused state.
2694           https://bugzilla.gnome.org/show_bug.cgi?id=726038
2695
2696 2014-01-29 18:31:26 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
2697
2698         * omx/gstomxvideodec.c:
2699           omxvideodec: use flush because reset is deprecated
2700           https://bugzilla.gnome.org/show_bug.cgi?id=726038
2701
2702 2014-01-27 17:03:50 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
2703
2704         * omx/gstomxvideodec.c:
2705           omxvideodec: populate the most downstream output port on reset
2706           Make seeking work when using egl_render component
2707           https://bugzilla.gnome.org/show_bug.cgi?id=726038
2708
2709 2014-03-24 17:49:59 +0100  Josep Torra <n770galaxy@gmail.com>
2710
2711         * omx/gstomxbufferpool.c:
2712           omxbufferpool: return buffers to the pool instead of freeing them
2713           We have to return the buffers back to the pool in when stopping to
2714           not mess with the GstBufferPool accounting.
2715           The OMX buffers will be freed when those won't be in charge of the
2716           pool in the chained up call to 'stop'.
2717           Fixes segfaults on finalize and pool not being properly deactivated.
2718           https://bugzilla.gnome.org/show_bug.cgi?id=726337
2719
2720 2014-03-19 12:12:49 +0100  Christian König <christian.koenig@amd.com>
2721
2722         * omx/gstomxvideodec.c:
2723           omxvideodec: add missing unlock in the error path
2724           Signed-off-by: Christian König <christian.koenig@amd.com>
2725           https://bugzilla.gnome.org/show_bug.cgi?id=726958
2726
2727 2014-03-18 23:36:59 +0100  Michal Lazo <xlazom00@gmail.com>
2728
2729         * omx/gstomxh264enc.c:
2730         * omx/gstomxh264enc.h:
2731           fix filemode
2732
2733 2014-03-17 09:57:11 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
2734
2735         * omx/gstomxbufferpool.c:
2736           omxbufferpool: fix memory leak if used on output port
2737           When using GstOMXBufferPool on an output port, it internally uses
2738           a GPtrArray to manage the GstBuffers instead of the default queue
2739           from the GstBufferPool base class.
2740           In this case GstBufferPool::default_free_buffer is not called when
2741           the pool is stopped. Because the queue is empty. So explicitely
2742           call gst_omx_buffer_pool_free_buffer on each buffer contained in
2743           the GPtrArray.
2744           https://bugzilla.gnome.org/show_bug.cgi?id=726337
2745
2746 2014-03-16 17:32:05 +0100  Sebastian Dröge <sebastian@centricular.com>
2747
2748         * omx/gstomxh264enc.c:
2749           omxh264enc: Fix compiler warnings
2750
2751 2014-03-16 17:19:08 +0100  Michal Lazo <xlazom00@gmail.com>
2752
2753         * omx/gstomxh264enc.c:
2754         * omx/gstomxh264enc.h:
2755           omxh264enc: IDR interval, SPS and PPS headers for rpi
2756           https://bugzilla.gnome.org/show_bug.cgi?id=720031
2757
2758 2014-03-13 14:26:58 +0100  Christian König <christian.koenig@amd.com>
2759
2760         * omx/gstomx.c:
2761         * omx/gstomx.h:
2762         * omx/gstomxvideo.c:
2763           omxvideo: fix debug category initialisation
2764           https://bugzilla.gnome.org/show_bug.cgi?id=726024
2765
2766 2014-03-13 19:04:47 +0100  Christian König <christian.koenig@amd.com>
2767
2768         * omx/gstomxbufferpool.h:
2769           omxbufferpool: add proper type definitions
2770           https://bugzilla.gnome.org/show_bug.cgi?id=726325
2771
2772 2014-03-02 10:30:04 +0100  Christian König <christian.koenig@amd.com>
2773
2774         * omx/gstomx.c:
2775           omx: consolidate message waiting code
2776           Add a wait_message helper function and remove all those duplicated code.
2777           https://bugzilla.gnome.org/show_bug.cgi?id=725493
2778
2779 2014-03-12 12:48:12 +0100  Sebastian Dröge <sebastian@centricular.com>
2780
2781         * omx/gstomxvideo.c:
2782           omx: Copy old copyright notice into the new file
2783
2784 2014-03-12 12:47:34 +0100  Sebastian Dröge <sebastian@centricular.com>
2785
2786         * omx/gstomxvideo.c:
2787         * omx/gstomxvideo.h:
2788         * omx/gstomxvideodec.c:
2789         * omx/gstomxvideoenc.c:
2790           omx: Rename function from _4_ to _for_ for clarity
2791
2792 2014-03-03 16:15:24 +0100  Christian König <christian.koenig@amd.com>
2793
2794         * omx/Makefile.am:
2795         * omx/gstomxvideo.c:
2796         * omx/gstomxvideo.h:
2797         * omx/gstomxvideodec.c:
2798         * omx/gstomxvideoenc.c:
2799           omxvideo: start sharing more code between video decoder and encoder
2800           Identical functionality spread of two different components.
2801           We can't use a common base class because of different inheritance,
2802           but let's try to share the code anyway.
2803           https://bugzilla.gnome.org/show_bug.cgi?id=726024
2804
2805 2014-03-12 12:43:49 +0100  Sebastian Dröge <sebastian@centricular.com>
2806
2807         * examples/egl/Makefile.am:
2808           examples: Only build RPi EGL example if RPi was chosen as target
2809
2810 2014-03-12 12:42:23 +0100  Sebastian Dröge <sebastian@centricular.com>
2811
2812         * omx/gstomxbufferpool.h:
2813           omxbufferpool: Fix header include guard
2814
2815 2014-03-05 11:41:02 +0100  Christian König <christian.koenig@amd.com>
2816
2817         * omx/Makefile.am:
2818         * omx/gstomxbufferpool.c:
2819         * omx/gstomxbufferpool.h:
2820         * omx/gstomxvideodec.c:
2821           omxvideodec: separate the buffer pool from the decoder
2822           https://bugzilla.gnome.org/show_bug.cgi?id=726025
2823
2824 2014-03-04 17:41:20 +0100  Christian König <christian.koenig@amd.com>
2825
2826         * omx/gstomx.c:
2827         * omx/gstomx.h:
2828         * omx/gstomxvideodec.c:
2829           omx: simplify tunnel functions
2830           Specifying the component is error prone and unnecessary.
2831           https://bugzilla.gnome.org/show_bug.cgi?id=726021
2832
2833 2014-03-07 17:12:24 +0100  Christian König <christian.koenig@amd.com>
2834
2835         * omx/gstomxvideodec.c:
2836           omxvideodec: fix memory leak in gst_omx_video_dec_allocate_output_buffers
2837           https://bugzilla.gnome.org/show_bug.cgi?id=725907
2838
2839 2014-03-07 13:18:49 +0100  Christian König <christian.koenig@amd.com>
2840
2841         * omx/gstomxvideodec.c:
2842           omxvideodec: fix memory leak gst_omx_video_dec_negotiate
2843           https://bugzilla.gnome.org/show_bug.cgi?id=725907
2844
2845 2014-03-05 18:54:05 +0100  Christian König <christian.koenig@amd.com>
2846
2847         * omx/gstomxvideoenc.c:
2848           omxvideoenc: fix a memory leak in gst_omx_video_enc_getcaps
2849           https://bugzilla.gnome.org/show_bug.cgi?id=725826
2850
2851 2014-03-05 17:43:33 +0100  Josep Torra <n770galaxy@gmail.com>
2852
2853         * Makefile.am:
2854           Makefile.am: build examples
2855           There's no reason to not build the examples now that are ported to 1.x.
2856
2857 2014-03-05 17:25:09 +0100  Josep Torra <n770galaxy@gmail.com>
2858
2859         * examples/egl/testegl.c:
2860           examples: avoid a clashing name with the recently added GstEGLImagePool
2861           Fixes build with current master.
2862
2863 2013-09-05 03:41:10 -0600  Christian König <christian.koenig@amd.com>
2864
2865         * omx/gstomxvideoenc.c:
2866           omxvideoenc: simplify _find_nearest_frame
2867           Just the same as we did with the decoder. Also give the
2868           function a gst_omx_video_enc prefix to distinct it from
2869           the decoder function.
2870           https://bugzilla.gnome.org/show_bug.cgi?id=724236
2871
2872 2013-09-05 02:23:39 -0600  Christian König <christian.koenig@amd.com>
2873
2874         * omx/gstomxvideodec.c:
2875           omxvideodec: simplify _find_nearest_frame
2876           No need to make it more complicated and error prone than
2877           necessary. Also give the function a gst_omx_video_dec prefix
2878           to distinct it from the encoder function.
2879           https://bugzilla.gnome.org/show_bug.cgi?id=724236
2880
2881 2013-09-05 02:05:52 -0600  Christian König <christian.koenig@amd.com>
2882
2883         * omx/gstomxvideodec.c:
2884           omxvideodec: remove dead code
2885           This code doesn't seems to be used for quite a while,
2886           remove it before it starts to rot.
2887           https://bugzilla.gnome.org/show_bug.cgi?id=724236
2888
2889 2014-03-01 22:28:24 +0100  Christian König <christian.koenig@amd.com>
2890
2891         * omx/gstomx.c:
2892           omx: fix two serious message handling bugs
2893           Waiting for the next message if we already got one
2894           is nonsense and can lead to lockups.
2895           https://bugzilla.gnome.org/show_bug.cgi?id=725468
2896
2897 2014-03-01 18:49:41 +0100  Christian König <christian.koenig@amd.com>
2898
2899         * omx/gstomxvideoenc.c:
2900           omxvideoenc: fix startup race condition
2901           The reset function shouldn't start the src pad
2902           loop if it wasn't started before.
2903           Signed-off-by: Christian König <christian.koenig@amd.com>
2904
2905 2014-03-01 18:48:17 +0100  Christian König <christian.koenig@amd.com>
2906
2907         * omx/gstomxvideodec.c:
2908           omxvideodec: fix startup race condition
2909           The reset function shouldn't start the src pad
2910           loop if it wasn't started before.
2911           Signed-off-by: Christian König <christian.koenig@amd.com>
2912
2913 2014-02-28 09:36:13 +0100  Sebastian Dröge <sebastian@centricular.com>
2914
2915         * common:
2916           Automatic update of common submodule
2917           From fe1672e to bcb1518
2918
2919 2014-02-26 22:15:00 +0100  Stefan Sauer <ensonic@users.sf.net>
2920
2921         * common:
2922           Automatic update of common submodule
2923           From 1a07da9 to fe1672e
2924
2925 2014-01-30 10:45:18 +0100  Edward Hervey <bilboed@bilboed.com>
2926
2927         * common:
2928           Automatic update of common submodule
2929           From d48bed3 to 1a07da9
2930
2931 2014-01-25 17:44:14 +0100  Sebastian Dröge <sebastian@centricular.com>
2932
2933         * omx/gstomxaudioenc.c:
2934         * omx/gstomxvideodec.c:
2935         * omx/gstomxvideoenc.c:
2936           omx: Don't handle FLUSHING and NOT_LINKED as errors
2937           Also don't stop the task on NOT_LINKED. We're not a demuxer.
2938
2939 2013-12-22 22:35:31 +0000  Tim-Philipp Müller <tim@centricular.com>
2940
2941         * common:
2942           Automatic update of common submodule
2943           From dbedaa0 to d48bed3
2944
2945 2013-11-05 11:22:02 +0000  Tim-Philipp Müller <tim@centricular.com>
2946
2947         * common:
2948           Automatic update of common submodule
2949           From 865aa20 to dbedaa0
2950
2951 2013-09-28 13:32:37 +0200  Josep Torra <n770galaxy@gmail.com>
2952
2953         * examples/egl/testegl.c:
2954           examples: simplify the thread synchronization code
2955           Make everithing more simple and fix the races conditions remaining in
2956           the previous approaches.
2957
2958 2013-09-25 19:17:17 +0200  Sebastian Dröge <slomo@circular-chaos.org>
2959
2960         * config/rpi/gstomx.conf:
2961           rpi: The WMV/VC1 decoder can only do WMV9 and VC1, no older versions
2962
2963 2013-09-24 18:34:42 +0100  Tim-Philipp Müller <tim@centricular.net>
2964
2965         * common:
2966           Automatic update of common submodule
2967           From 6b03ba7 to 865aa20
2968
2969 2013-09-24 18:48:24 +0200  Josep Torra <n770galaxy@gmail.com>
2970
2971         * examples/egl/testegl.c:
2972           examples: fix another race condition
2973           Fix a race condition that caused randome deadlocks on EOS.
2974
2975 2013-09-20 17:19:53 +0200  Josep Torra <n770galaxy@gmail.com>
2976
2977         * config/rpi/gstomx.conf:
2978           rpi: fix a copy paste error in the config file
2979
2980 2013-09-20 17:09:52 +0200  Josep Torra <n770galaxy@gmail.com>
2981
2982         * examples/egl/testegl.c:
2983           examples: fix a race condition when seeking
2984           Fixes a race condition that caused pipeline deadlock during seeks.
2985
2986 2013-09-20 10:38:12 +0200  Josep Torra <n770galaxy@gmail.com>
2987
2988         * examples/egl/testegl.c:
2989           examples: display QoS statistics
2990
2991 2013-09-20 09:34:37 +0200  Josep Torra <n770galaxy@gmail.com>
2992
2993         * examples/egl/testegl.c:
2994           examples: use dedicated thread for rendering the scene
2995           Produces smother animation and prevents dropping frames due busy
2996           mainloop.
2997
2998 2013-09-20 08:25:21 +0200  Josep Torra <n770galaxy@gmail.com>
2999
3000         * examples/egl/testegl.c:
3001           examples: don't force an specific audio sink
3002           Let playbin2 choose the audiosink available in the system.
3003
3004 2013-09-20 08:19:48 +0200  Josep Torra <n770galaxy@gmail.com>
3005
3006         * examples/egl/Makefile.am:
3007           examples: drop remnants of initial appsink attempt
3008
3009 2013-09-20 16:18:18 +0200  Edward Hervey <edward@collabora.com>
3010
3011         * common:
3012           Automatic update of common submodule
3013           From b613661 to 6b03ba7
3014
3015 2013-09-19 18:45:36 +0100  Tim-Philipp Müller <tim@centricular.net>
3016
3017         * common:
3018           Automatic update of common submodule
3019           From 74a6857 to b613661
3020
3021 2013-09-19 17:38:30 +0100  Tim-Philipp Müller <tim@centricular.net>
3022
3023         * common:
3024           Automatic update of common submodule
3025           From 01a7a46 to 74a6857
3026
3027 2013-08-20 16:00:07 +0100  Tim-Philipp Müller <tim@centricular.net>
3028
3029         * omx/gstomx.c:
3030         * omx/gstomxvideodec.c:
3031           omx: don't use the 'z' modifier to print size_t
3032           gcc will warn in some cases even if the size of the type
3033           is exactly that of size_t on the platform.
3034           https://bugzilla.gnome.org/show_bug.cgi?id=699008
3035
3036 2013-07-01 15:48:47 +0200  Roman Arutyunyan <arutyunyan.roman@gmail.com>
3037
3038         * omx/gstomxvideoenc.c:
3039           gstomxvideoenc: Set bitrate in setcaps
3040           Otherwise it gets lost whenever we configure new caps
3041           https://bugzilla.gnome.org/show_bug.cgi?id=698049
3042
3043 2013-06-30 18:17:05 +0700  Ilya Smelykh <ilya@videoexpertsgroup.com>
3044
3045         * examples/egl/testegl.c:
3046           examples: enable audio in testegl example
3047
3048 2013-06-12 09:38:22 +0200  Sebastian Dröge <slomo@circular-chaos.org>
3049
3050         * configure.ac:
3051           configure: Allow build without gstreamer-egl
3052
3053 2013-06-07 12:39:18 +0700  Ilya Smelykh <ilya@videoexpertsgroup.com>
3054
3055         * examples/egl/Makefile.am:
3056         * examples/egl/testegl.c:
3057           examples: testegl example port to 1.x
3058           https://bugzilla.gnome.org/show_bug.cgi?id=701706
3059
3060 2013-06-05 15:17:16 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3061
3062         * common:
3063           Automatic update of common submodule
3064           From 098c0d7 to 01a7a46
3065
3066 2013-05-20 12:06:34 +0200  Josep Torra <n770galaxy@gmail.com>
3067
3068         * omx/gstomxaudioenc.c:
3069         * omx/gstomxvideodec.c:
3070         * omx/gstomxvideoenc.c:
3071           omx: Take lock on EOS to update the flow return value
3072           Fixes "GThread-ERROR **: file gthread-posix.c: line 171
3073           (g_mutex_free_posix_impl): error 'Device or resource busy' during
3074           'pthread_mutex_destroy ((pthread_mutex_t *) mutex)'" in _finalize.
3075
3076 2013-05-15 10:54:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3077
3078         * common:
3079           Automatic update of common submodule
3080           From 5edcd85 to 098c0d7
3081
3082 2013-04-11 17:35:19 +0200  Josep Torra <n770galaxy@gmail.com>
3083
3084         * Makefile.am:
3085         * configure.ac:
3086         * examples/Makefile.am:
3087         * examples/egl/Makefile.am:
3088         * examples/egl/cube_texture_and_coords.h:
3089         * examples/egl/testegl.c:
3090           examples: add an example aplication based OpenGL ES + EGL
3091           Application that shows how to integrate playbin with an OpenGL ES
3092           scene through EGL. Renders a video on the surfaces of an animated cube.
3093           The code is not ported to 1.x so it's not built by default.
3094
3095 2013-05-10 12:25:07 +0200  Josep Torra <n770galaxy@gmail.com>
3096
3097         * omx/gstomxvideodec.c:
3098           omxvideodec: Redesign video size change reconfiguration code
3099           Ensure stop the decoder before clossing the tunnel.
3100
3101 2013-05-06 16:25:27 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3102
3103         * Makefile.am:
3104           Makefile.am: Add -I common/m4
3105           This allows autoreconf to work correctly and automatic regeneration
3106           of autotools files if something changed.
3107
3108 2013-05-06 19:03:59 +0530  jitendra <jvarshney20@gmail.com>
3109
3110         * omx/gstomx.c:
3111         * omx/gstomx.h:
3112         * omx/gstomxaudioenc.c:
3113         * omx/gstomxvideodec.c:
3114         * omx/gstomxvideoenc.c:
3115           omx: Add pads based on element type
3116           This allows to later add sources and sink that only have a srcpad
3117           or sinkpad.
3118           https://bugzilla.gnome.org/show_bug.cgi?id=699754
3119
3120 2013-04-27 02:50:25 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
3121
3122         * omx/gstomx.c:
3123           omx: fixed type error in printf call
3124           %zu expects size_t
3125           https://bugzilla.gnome.org/show_bug.cgi?id=699008
3126
3127 2013-04-08 17:26:16 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3128
3129         * configure.ac:
3130         * omx/Makefile.am:
3131         * omx/gstomxvideodec.c:
3132           Check for gstreamer-egl
3133           And don't use if not available.
3134           https://bugzilla.gnome.org/show_bug.cgi?id=697574
3135
3136 2013-04-23 09:53:18 +0100  Tim-Philipp Müller <tim@centricular.net>
3137
3138         * configure.ac:
3139           configure: error out if no OMX target has been set explicitly with --with-omx-target=x
3140           Avoids people building for e.g. the Raspberry Pi and then wondering
3141           why things don't work as expected (since structs are packed differently
3142           there).
3143
3144 2013-04-22 23:55:03 +0100  Tim-Philipp Müller <tim@centricular.net>
3145
3146         * common:
3147           Automatic update of common submodule
3148           From 3cb3d3c to 5edcd85
3149
3150 2013-04-18 22:07:28 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3151
3152         * omx/gstomx.c:
3153         * omx/gstomxaudioenc.c:
3154         * omx/gstomxh263enc.c:
3155         * omx/gstomxh264enc.c:
3156         * omx/gstomxmpeg4videoenc.c:
3157         * omx/gstomxvideodec.c:
3158         * omx/gstomxvideoenc.c:
3159           omx: more printf format fixes
3160           Fix printf formats again, so that gst-omx compiles warning-
3161           free on the Raspberry Pi as well. Unfortunately OMX_UINT32
3162           maybe be typedefed to uint32_t or unsigned long, which
3163           doesn't work well with our debugging printf format strings,
3164           so just use %u for those and cast to guint.
3165
3166 2013-04-18 16:40:06 +0200  Josep Torra <n770galaxy@gmail.com>
3167
3168         * omx/gstomx.c:
3169           omx: fixes unused variable 'comp' when GStreamer is built without debug
3170
3171 2013-04-18 16:03:56 +0200  Josep Torra <n770galaxy@gmail.com>
3172
3173         * omx/gstomxvideodec.c:
3174           omxvideodec: don't use 'self->dec_out_port' anymore and use just 'port'
3175           Fixes some criticals.
3176
3177 2013-04-18 15:21:32 +0200  Josep Torra <n770galaxy@gmail.com>
3178
3179         * omx/gstomxvideodec.c:
3180           omxvideodec: fixes 'port' may be used uninitialized in this function
3181
3182 2013-04-18 12:03:31 +0200  Josep Torra <n770galaxy@gmail.com>
3183
3184         * omx/gstomxvideodec.c:
3185           omxvideodec: silence warnings building for RPI related to 'vcos_*'
3186
3187 2013-04-18 11:19:52 +0200  Josep Torra <n770galaxy@gmail.com>
3188
3189         * omx/gstomxvideodec.c:
3190           omxvideodec: Use new type from libgstvideo
3191
3192 2013-04-16 14:50:49 +0530  jitendra <jvarshney20@gmail.com>
3193
3194         * omx/gstomxaudioenc.c:
3195         * omx/gstomxvideodec.c:
3196         * omx/gstomxvideoenc.c:
3197           omx: Disable output port before transition to idle state
3198           https://bugzilla.gnome.org/show_bug.cgi?id=698109
3199
3200 2012-10-24 12:19:41 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3201
3202         * configure.ac:
3203           gst: Add better support for static plugins
3204
3205 2013-04-14 17:57:34 +0100  Tim-Philipp Müller <tim@centricular.net>
3206
3207         * common:
3208           Automatic update of common submodule
3209           From aed87ae to 3cb3d3c
3210
3211 2013-04-12 17:58:30 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3212
3213         * configure.ac:
3214           configure: add --disable-fatal-warnings for disabling -Werror
3215
3216 2013-04-09 21:02:09 +0200  Stefan Sauer <ensonic@users.sf.net>
3217
3218         * common:
3219           Automatic update of common submodule
3220           From 04c7a1e to aed87ae
3221
3222 2013-04-08 17:02:32 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3223
3224         * omx/gstomx.c:
3225         * omx/gstomxaudioenc.c:
3226         * omx/gstomxh263enc.c:
3227         * omx/gstomxh264enc.c:
3228         * omx/gstomxmpeg4videoenc.c:
3229         * omx/gstomxvideodec.c:
3230         * omx/gstomxvideoenc.c:
3231           omx: fix printf formats in debug messages
3232           OMX_U32 is typedefed to an unsigned long,
3233           OMX_TICKS to a 64-bit integer.
3234
3235 2013-04-08 16:52:19 +0200  Josep Torra <n770galaxy@gmail.com>
3236
3237         * omx/gstomxvideodec.c:
3238           omxvideodec: use the correct printf format in a debug message
3239
3240 2013-04-08 16:31:33 +0200  Josep Torra <n770galaxy@gmail.com>
3241
3242         * omx/gstomxvideodec.c:
3243           omxvideodec: use the correct OMX_IndexParam value
3244           Fixes playback is not smooth in the EGL path.
3245
3246 2013-04-05 13:45:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3247
3248         * omx/gstomxvideodec.c:
3249           omxvideodec: Don't use API that is not in master yet
3250           It's not really needed here yet, will be needed in future versions
3251
3252 2013-02-25 11:55:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3253
3254         * configure.ac:
3255         * omx/Makefile.am:
3256         * omx/gstomx.c:
3257         * omx/gstomx.h:
3258         * omx/gstomxvideodec.c:
3259         * omx/gstomxvideodec.h:
3260           omxvideodec: Add support for egl_render on RPi
3261
3262 2013-03-22 19:26:54 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3263
3264         * configure.ac:
3265           Back to development
3266
3267 2013-03-22 19:23:14 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3268
3269         * omx/gstomxh263enc.c:
3270         * omx/gstomxh264enc.c:
3271         * omx/gstomxmpeg4videoenc.c:
3272           omx: fix compiler warnings when compiling with -DG_DISABLE_ASSERT
3273           As we do for releases. Fixes 'variable may be used uninitialized'
3274           warnings.
3275
3276 === release 1.0.0 ===
3277
3278 2013-03-22 17:16:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3279
3280         * AUTHORS:
3281         * ChangeLog:
3282         * Makefile.am:
3283         * NEWS:
3284         * RELEASE:
3285         * configure.ac:
3286         * gst-omx.doap:
3287           Release 1.0.0
3288
3289 2013-03-19 16:40:09 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3290
3291         * omx/gstomxtheoradec.h:
3292         * omx/gstomxvp8dec.h:
3293           omx: fix typo in copyright headers
3294
3295 2013-03-19 13:46:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3296
3297         * config/rpi/gstomx.conf:
3298           rpi: Fix commit that added the VC1 decoder
3299
3300 2013-03-19 13:27:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3301
3302         * config/rpi/gstomx.conf:
3303         * omx/gstomxh263dec.c:
3304         * omx/gstomxh264dec.c:
3305         * omx/gstomxmjpegdec.c:
3306         * omx/gstomxmpeg2videodec.c:
3307         * omx/gstomxmpeg4videodec.c:
3308         * omx/gstomxtheoradec.c:
3309         * omx/gstomxvideodec.c:
3310         * omx/gstomxvp8dec.c:
3311         * omx/gstomxwmvdec.c:
3312           omx: Add more constraints to the default sink template caps
3313
3314 2013-03-19 13:10:39 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3315
3316         * config/rpi/gstomx.conf:
3317           rpi: Add VC1/WMV3 decoder
3318           WMV2 and WMV1 (aka WMV 1-8) are not supported by RPi.
3319
3320 2013-03-19 12:59:20 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3321
3322         * config/rpi/gstomx.conf:
3323           rpi: Add MJPEG decoder
3324
3325 2013-03-19 12:56:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3326
3327         * config/rpi/gstomx.conf:
3328           rpi: Add VP8 decoder
3329
3330 2013-03-19 12:55:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3331
3332         * omx/gstomxvideodec.c:
3333           omxvideodec: Set ENDOFFRAME flag for the end of frames
3334
3335 2013-03-19 12:28:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3336
3337         * config/rpi/gstomx.conf:
3338           rpi: Add Theora decoder to the config
3339
3340 2013-03-19 09:36:18 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3341
3342         * configure.ac:
3343         * omx/Makefile.am:
3344         * omx/gstomx.c:
3345         * omx/gstomxtheoradec.c:
3346         * omx/gstomxtheoradec.h:
3347           omx: Add Theora decoder
3348
3349 2013-03-18 16:43:24 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3350
3351         * omx/gstomx.c:
3352           omx: Remove additional comma
3353
3354 2013-03-18 16:34:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3355
3356         * config/rpi/gstomx.conf:
3357         * omx/Makefile.am:
3358         * omx/gstomx.c:
3359         * omx/gstomxmpeg2dec.h:
3360         * omx/gstomxmpeg2videodec.c:
3361         * omx/gstomxmpeg2videodec.h:
3362           omx: Rename MPEG2 decoder for consistency everywhere
3363
3364 2013-03-18 16:30:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3365
3366         * omx/Makefile.am:
3367         * omx/gstomx.c:
3368         * omx/gstomxmjpegdec.c:
3369         * omx/gstomxmjpegdec.h:
3370           omx: Add MJPEG decoder support
3371
3372 2013-03-18 16:06:54 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3373
3374         * configure.ac:
3375         * omx/Makefile.am:
3376         * omx/gstomx.c:
3377         * omx/gstomxvp8dec.c:
3378         * omx/gstomxvp8dec.h:
3379           omx: Add VP8 decoder support
3380
3381 2013-03-18 15:44:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3382
3383         * config/rpi/gstomx.conf:
3384           rpi: Add h263 decoder and rename MPEG2 decoder for consistency
3385
3386 2013-03-16 13:20:27 +0000  Tim-Philipp Müller <tim@centricular.net>
3387
3388         * omx/gstomxmpeg2dec.c:
3389           omxmpeg2dec: mpeg-2 decoder should be able to handle mpeg-1 too
3390           https://bugzilla.gnome.org/show_bug.cgi?id=695879
3391
3392 2013-03-16 10:13:06 +0100  Josep Torra <n770galaxy@gmail.com>
3393
3394         * omx/gstomx.c:
3395           omx: minor stylistic change for consistency with other similar code
3396
3397 2013-03-16 10:00:24 +0100  Josep Torra <n770galaxy@gmail.com>
3398
3399         * omx/gstomxaudioenc.c:
3400         * omx/gstomxvideodec.c:
3401         * omx/gstomxvideoenc.c:
3402           omx: Clarify that loop task is also paused in EOS
3403
3404 2013-03-16 09:59:01 +0100  Josep Torra <n770galaxy@gmail.com>
3405
3406         * omx/gstomxvideoenc.c:
3407           omxvideoenec: Don't forget propagate flow return value upstream
3408
3409 2013-03-15 13:16:39 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3410
3411         * omx/gstomx.c:
3412           omx: improve debug logging some more
3413
3414 2013-03-15 14:09:45 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3415
3416         * omx/gstomxvideodec.c:
3417           omxvideodec: Make sure that the first frame we pass to OpenMAX is a sync frame
3418
3419 2013-03-15 11:46:34 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3420
3421         * omx/gstomxaudioenc.c:
3422         * omx/gstomxvideodec.c:
3423         * omx/gstomxvideoenc.c:
3424           omx: Stop output port task after draining
3425
3426 2013-03-15 10:58:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3427
3428         * omx/gstomx.c:
3429           omx: Reset EOS flag in more places
3430
3431 2013-03-15 10:38:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3432
3433         * omx/gstomxvideodec.c:
3434           omxvideodec: Deallocate output buffers with the right function
3435
3436 2013-03-15 01:06:05 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3437
3438         * omx/gstomx.c:
3439         * omx/gstomx.h:
3440           omx: log commands as strings
3441           Makes logs easier to read.
3442
3443 2013-03-15 00:47:47 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3444
3445         * omx/gstomx.c:
3446         * omx/gstomx.h:
3447           omx: log states as strings
3448
3449 2013-03-15 00:28:02 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3450
3451         * omx/gstomx.c:
3452         * omx/gstomx.h:
3453           omx: log component name in debug messages
3454           Useful when we have more different components
3455           active at the same time.
3456
3457 2013-03-15 09:51:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3458
3459         * omx/gstomxvideodec.c:
3460           omxvideodec: Don't interpolate timestamps
3461           We will get exactly one frame per input buffer and assigning
3462           timestamps between frames if more than one OMX buffer is required
3463           per frame easily confuses timestamp tracking in OMX.
3464
3465 2013-03-15 09:32:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3466
3467         * omx/gstomxvideodec.c:
3468           omxvideodec: Give the codec_data the timestamp of the first frame and no duration
3469
3470 2013-03-14 17:31:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3471
3472         * config/rpi/gstomx.conf:
3473           omx: The MPEG4 encoder is not available on RPi and probably never will
3474
3475 2013-03-14 17:26:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3476
3477         * omx/gstomx.c:
3478           omx: Reset some more buffer fields as required
3479
3480 2013-03-14 17:01:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3481
3482         * config/rpi/gstomx.conf:
3483         * omx/gstomx.c:
3484           omx: The hack to disable usage of EOS buffers is not necessary anymore on RPi
3485
3486 2013-03-14 17:00:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3487
3488         * omx/gstomx.c:
3489           omx: Reset the flags for output ports when releasing a buffer, not for input ports
3490
3491 2013-03-14 15:03:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3492
3493         * omx/gstomxh263enc.c:
3494         * omx/gstomxh264enc.c:
3495         * omx/gstomxmpeg4videoenc.c:
3496           omx: Only unref caps after usage of its fields
3497
3498 2013-03-14 14:51:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3499
3500         * omx/gstomxvideodec.c:
3501           omxvideodec: Simplify bufferpool implementation
3502
3503 2013-03-13 13:23:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3504
3505         * omx/gstomxvideodec.c:
3506           omxvideodec: Improve min/max buffer counts handling
3507
3508 2013-03-14 12:49:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3509
3510         * omx/gstomx.c:
3511         * omx/gstomx.h:
3512         * omx/gstomxaudioenc.c:
3513         * omx/gstomxvideodec.c:
3514         * omx/gstomxvideoenc.c:
3515           omx: Handle the OMX_EventBufferFlag to detect EOS too
3516
3517 2013-03-13 10:29:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3518
3519         * omx/gstomx.c:
3520         * omx/gstomx.h:
3521           omx: Mark OpenMAX buffers as EGLImage if they contain one
3522           Needs special handling in some places, e.g. because nFilledLen
3523           will always be 0.
3524
3525 2013-03-13 10:21:49 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3526
3527         * omx/gstomxvideoenc.c:
3528           omxvideoenc: Properly check the nVersion field
3529
3530 2013-03-13 09:34:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3531
3532         * omx/gstomxvideoenc.c:
3533           omxvideoenc: RPi returns garbage for OMX_IndexParamVideoBitrate, work around that
3534
3535 2013-03-12 20:02:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3536
3537         * omx/gstomxvideodec.c:
3538           omxvideodec: Make sure to always get the right buffer
3539
3540 2013-03-12 19:35:39 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3541
3542         * omx/gstomxvideodec.c:
3543           omxvideodec: Make sure the buffer is released to the pool if it's not the one we wanted
3544
3545 2013-03-12 19:17:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3546
3547         * omx/gstomxvideodec.c:
3548           omxvideodec: Drop too late frames instead of finishing them
3549
3550 2013-03-12 19:16:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3551
3552         * omx/gstomxvideodec.c:
3553           omx: Release buffers to the correct port
3554
3555 2013-03-13 09:37:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3556
3557         * omx/gstomx.c:
3558           omx: Always load the OpenMAX IL cores with G_MODULE_BIND_LOCAL
3559
3560 2013-03-12 18:20:22 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3561
3562         * omx/gstomx.c:
3563           omx: Lazy-load symbols of libbcm_host.so
3564           It exports eglIntOpenMAXILDoneMarker(), which is also
3565           exported by libopenmaxil.so... but we need the version
3566           from libopenmaxil.so as the other one is just a stub.
3567
3568 2013-03-11 13:59:15 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3569
3570         * omx/gstomxaacenc.c:
3571         * omx/gstomxh263enc.c:
3572         * omx/gstomxmpeg4videoenc.c:
3573           omx: Don't set profile/level in other encoders if downstream caps don't specify any
3574
3575 2013-03-11 13:49:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3576
3577         * omx/gstomxh264enc.c:
3578           omxh264enc: If caps specify no profile/level use the component's defaults
3579
3580 2013-03-11 13:45:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3581
3582         * omx/gstomxvideoenc.c:
3583           omxvideoenc: Always allocate output buffers from the loop function
3584
3585 2013-03-11 13:12:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3586
3587         * omx/gstomxh264enc.c:
3588           omxh264enc: The h264 encoders are supposed to output byte-stream/au
3589
3590 2013-03-11 11:47:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3591
3592         * omx/gstomxvideoenc.c:
3593           omxvideoenc: Wait until the Executing state is reached before passing buffers to the component
3594
3595 2013-03-11 10:39:25 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3596
3597         * omx/gstomxvideodec.c:
3598           omxvideodec: Don't provide buffers to downstream
3599           This only works reliable if we have a way to tell downstream to
3600           release all our buffers for reconfiguration.
3601
3602 2013-03-11 10:29:44 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3603
3604         * omx/gstomxaudioenc.c:
3605           omxaudioenc: Disable output port when setting a new format
3606
3607 2013-03-11 10:29:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3608
3609         * omx/gstomxvideoenc.c:
3610           omxvideoenc: Disable output port when setting a new format
3611
3612 2013-03-11 10:22:07 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3613
3614         * omx/gstomxvideodec.c:
3615           omxvideodec: Disable output port when setting a new format
3616           Based on a patch by Josep Torra <n770galaxy@gmail.com>
3617
3618 2013-03-11 10:04:10 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3619
3620         * omx/gstomxaudioenc.c:
3621         * omx/gstomxvideodec.c:
3622         * omx/gstomxvideoenc.c:
3623           omx: Catch errors when releasing buffers to a port and handle them
3624
3625 2013-03-10 12:09:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3626
3627         * omx/gstomxvideoenc.c:
3628           omxvideoenc: Use the correct video codec state when filling an input buffer
3629
3630 2013-03-10 12:05:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3631
3632         * omx/gstomxvideoenc.c:
3633           omxvideoenc: Store correct input state
3634
3635 2013-03-10 11:27:34 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3636
3637         * omx/gstomxvideoenc.c:
3638           omxvideoenc: Allocate output buffers as early as possible
3639
3640 2013-03-10 11:01:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3641
3642         * omx/gstomx.c:
3643           omx: Log unknown events
3644
3645 2013-03-09 14:14:40 +0100  Josep Torra <n770galaxy@gmail.com>
3646
3647         * omx/gstomxaudioenc.c:
3648         * omx/gstomxvideodec.c:
3649         * omx/gstomxvideoenc.c:
3650           omx: Fix deadlock in encoders and add explainatory comments.
3651
3652 2013-03-09 13:27:08 +0100  Josep Torra <n770galaxy@gmail.com>
3653
3654         * omx/gstomxvideodec.c:
3655           omxvideodec: fix printf format identifier
3656
3657 2013-03-09 13:07:59 +0100  Josep Torra <n770galaxy@gmail.com>
3658
3659         * omx/gstomxvideodec.c:
3660           omx: Minor changes on debuging info
3661
3662 2013-03-09 13:00:33 +0100  Josep Torra <n770galaxy@gmail.com>
3663
3664         * omx/gstomxvideodec.c:
3665           omxvideodec: avoid a deadlock
3666
3667 2013-03-08 15:56:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3668
3669         * omx/gstomxvideodec.c:
3670           omxvideodec: Don't forget to populate output port
3671
3672 2013-03-08 15:11:27 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3673
3674         * omx/gstomxaudioenc.c:
3675         * omx/gstomxvideodec.c:
3676         * omx/gstomxvideoenc.c:
3677           omx: Flush and stop srcpad when configuring new caps
3678
3679 2013-03-07 17:40:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3680
3681         * config/rpi/gstomx.conf:
3682         * omx/gstomx.c:
3683           Revert "omx: use no-component-reconfigure hack on the Raspberry PI"
3684           This reverts commit e123b2089f69a413241f30a2428ea6edd8f231e7.
3685           It's not required anymore after the fix from the last commit.
3686
3687 2013-03-07 17:38:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3688
3689         * omx/gstomxvideodec.c:
3690           omxvideodec: Only negotiate a color format with downstream on the initial caps
3691
3692 2013-03-07 17:29:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3693
3694         * omx/gstomxvideodec.c:
3695           omxvideodec: Make sure the output port is disabled while we allocate buffers
3696
3697 2013-03-07 17:27:05 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3698
3699         * omx/gstomx.c:
3700           omx: Also wait for disabled output ports to be reconfigured
3701
3702 2013-03-07 14:10:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3703
3704         * omx/gstomxvideodec.c:
3705         * omx/gstomxvideodec.h:
3706           omxvideodec: Add buffer pool for sharing OpenMAX memory with downstream
3707
3708 2013-03-07 11:11:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3709
3710         * omx/gstomx.c:
3711         * omx/gstomx.h:
3712         * omx/gstomxaudioenc.c:
3713         * omx/gstomxvideodec.c:
3714         * omx/gstomxvideoenc.c:
3715           omx: Add timeout to the flush operation and move buffer populating to a separate function
3716
3717 2013-03-06 17:33:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3718
3719         * config/rpi/gstomx.conf:
3720         * omx/gstomx.c:
3721         * omx/gstomx.h:
3722           omx: Remove min buffer count hack for RPi again
3723           It's not necessary anymore
3724
3725 2013-03-06 17:05:51 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3726
3727         * omx/gstomx.c:
3728         * omx/gstomx.h:
3729         * omx/gstomxaudioenc.c:
3730         * omx/gstomxvideodec.c:
3731         * omx/gstomxvideoenc.c:
3732           omx: Do number of buffers configuration explicitely
3733
3734 2013-03-07 11:24:54 +0100  Josep Torra <n770galaxy@gmail.com>
3735
3736         * omx/gstomxvideodec.c:
3737           omxvideodec: fixes reconfiguration
3738           Avoid having fixed fields from previous caps on reconfiguration.
3739
3740 2013-03-07 11:02:39 +0100  Josep Torra <n770galaxy@gmail.com>
3741
3742         * config/rpi/gstomx.conf:
3743         * omx/gstomx.c:
3744           omx: use no-component-reconfigure hack on the Raspberry PI
3745
3746 2013-03-07 00:03:28 +0000  Tim-Philipp Müller <tim@centricular.net>
3747
3748         * common:
3749           Automatic update of common submodule
3750           From 2de221c to 04c7a1e
3751
3752 2013-03-01 15:32:47 +0100  Josep Torra <n770galaxy@gmail.com>
3753
3754         * omx/gstomxvideoenc.h:
3755           omxvideoenc: drop unused data member
3756
3757 2013-03-01 12:23:54 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3758
3759         * omx/gstomxh263enc.c:
3760         * omx/gstomxh264enc.c:
3761         * omx/gstomxmpeg4videoenc.c:
3762           omxvideoenc: And set it actually on the right port
3763
3764 2013-03-01 12:18:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3765
3766         * omx/gstomxh263enc.c:
3767         * omx/gstomxh264enc.c:
3768         * omx/gstomxmpeg4videoenc.c:
3769           omxvideoenc: Set the coding type in the subclasses to the specific codec
3770
3771 2013-03-01 11:49:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3772
3773         * omx/gstomxvideoenc.c:
3774           omxvideoenc: gst_omx_port_update_port_definition() returns a OMX_ERRORTYPE, not a gboolean
3775
3776 2013-03-01 11:44:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3777
3778         * omx/gstomxvideodec.c:
3779         * omx/gstomxvideoenc.c:
3780           omxvideo{dec,enc}: Don't use the input state if it wasn't set yet
3781
3782 2013-03-01 11:25:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3783
3784         * omx/gstomxaudioenc.c:
3785           omxaudioenc: Only enable the output port after we know the output format
3786
3787 2013-03-01 11:24:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3788
3789         * omx/gstomxvideoenc.c:
3790           omxvideoenc: Only enable the output port after we know the output format
3791
3792 2013-02-28 17:02:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3793
3794         * omx/gstomxvideodec.c:
3795           omxvideodec: Only enable the output port after we know the output format
3796
3797 2013-03-01 11:18:18 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3798
3799         * omx/gstomx.c:
3800         * omx/gstomx.h:
3801           omx: Handle errors more gracefully
3802
3803 2013-02-28 15:48:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3804
3805         * omx/gstomx.c:
3806         * omx/gstomx.h:
3807         * omx/gstomxaudioenc.c:
3808         * omx/gstomxh263dec.c:
3809         * omx/gstomxh264dec.c:
3810         * omx/gstomxmpeg2dec.c:
3811         * omx/gstomxmpeg4videodec.c:
3812         * omx/gstomxvideodec.c:
3813         * omx/gstomxwmvdec.c:
3814           omx: Return the OMX_ERRORTYPE from gst_omx_port_update_port_definition
3815
3816 2013-02-28 15:37:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3817
3818         * omx/gstomx.c:
3819           omx: Return port definition update errors
3820
3821 2013-02-28 13:57:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3822
3823         * config/rpi/gstomx.conf:
3824         * omx/gstomx.c:
3825         * omx/gstomx.h:
3826           omx: Add hack for RPi for the minimum number of buffers required for a port
3827           The value in the port definition is invalid and the initial actual
3828           buffer count should be used.
3829
3830 2013-02-28 13:26:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3831
3832         * omx/gstomx.c:
3833           omx: Always tell the component about the right number of buffers that we're going to allocate
3834
3835 2013-02-28 13:07:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3836
3837         * omx/gstomx.c:
3838           omx: Invert assertion to let it express what was intended
3839
3840 2013-02-28 11:19:07 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3841
3842         * omx/gstomx.c:
3843         * omx/gstomx.h:
3844         * omx/gstomxaudioenc.c:
3845         * omx/gstomxvideodec.c:
3846         * omx/gstomxvideoenc.c:
3847           omx: Add API for allocating a specific number of buffers and using EGLImages or buffers allocated elsewhere
3848
3849 2013-02-27 16:55:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3850
3851         * omx/gstomxaudioenc.c:
3852         * omx/gstomxvideodec.c:
3853         * omx/gstomxvideoenc.c:
3854           omx: Refactor code flow a bit if output port settings have changed
3855
3856 2013-02-27 15:49:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3857
3858         * omx/gstomx.c:
3859         * omx/gstomx.h:
3860         * omx/gstomxaudioenc.c:
3861         * omx/gstomxvideodec.c:
3862         * omx/gstomxvideoenc.c:
3863           omx: Clean up port settings change handling
3864
3865 2013-02-27 11:30:14 +0100  Josep Torra <n770galaxy@gmail.com>
3866
3867         * omx/gstomxvideodec.c:
3868           omxvideodec: initialize param structure before using it
3869
3870 2013-02-27 10:21:39 +0100  Josep Torra <n770galaxy@gmail.com>
3871
3872         * omx/gstomxvideoenc.c:
3873           omxvideoenc: prevent a NULL pointer access
3874
3875 2013-02-26 17:25:49 +0100  Josep Torra <n770galaxy@gmail.com>
3876
3877         * omx/gstomxvideodec.c:
3878           omxvideodec: prevent a NULL pointer access
3879
3880 2013-02-25 13:11:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3881
3882         * omx/gstomx.c:
3883           omx: Fix deadlock during reconfiguration
3884
3885 2013-02-25 12:38:27 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3886
3887         * omx/gstomx.c:
3888         * omx/gstomxaudioenc.c:
3889         * omx/gstomxvideodec.c:
3890         * omx/gstomxvideoenc.c:
3891           omx: Auto-detect the port indizes if possible
3892
3893 2013-02-25 11:42:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3894
3895         * omx/gstomxvideodec.c:
3896         * omx/gstomxvideoenc.c:
3897           omx: Refactor querying of component supported caps into its own function
3898
3899 2013-02-25 10:41:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3900
3901         * omx/gstomx.c:
3902         * omx/gstomx.h:
3903         * omx/gstomxaudioenc.c:
3904         * omx/gstomxvideodec.c:
3905         * omx/gstomxvideoenc.c:
3906           omx: Refactor waiting for buffers to be released by the component to a separate function
3907
3908 2013-01-11 17:44:13 +0000  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3909
3910         * omx/gstomx.c:
3911         * omx/gstomx.h:
3912           omx: Add methods to set up and close a tunnel between components
3913
3914 2013-02-25 09:15:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3915
3916         * omx/gstomxaacenc.c:
3917         * omx/gstomxaudioenc.c:
3918         * omx/gstomxaudioenc.h:
3919           omxaudioenc: Rename component variable
3920
3921 2013-02-25 09:15:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3922
3923         * omx/gstomxh263enc.c:
3924         * omx/gstomxh264enc.c:
3925         * omx/gstomxmpeg4videoenc.c:
3926         * omx/gstomxvideoenc.c:
3927         * omx/gstomxvideoenc.h:
3928           omxvideoenc: Rename component variable
3929
3930 2013-02-25 09:12:22 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3931
3932         * omx/gstomxvideodec.c:
3933         * omx/gstomxvideodec.h:
3934           omxvideodec: Rename component variable
3935
3936 2013-02-22 16:27:33 +0100  Josep Torra <n770galaxy@gmail.com>
3937
3938         * omx/gstomxvideoenc.c:
3939           omxvideoenc: remove duplicated line
3940
3941 2013-02-22 10:42:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3942
3943         * omx/gstomx.c:
3944           Retry loading libbcm_host.so without an absolute path if that failed
3945
3946 2013-02-21 20:32:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3947
3948         * config/bellagio/Makefile.am:
3949           Add missing file from last commit
3950
3951 2013-02-21 11:01:28 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3952
3953         * config/Makefile.am:
3954         * config/bellagio/gstomx.conf:
3955         * configure.ac:
3956         * omx/Makefile.am:
3957           Add OpenMAX IL target for Bellagio
3958           Not tested since a very long time though.
3959
3960 2013-02-21 10:59:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3961
3962         * configure.ac:
3963         * omx/Makefile.am:
3964           Allow using external OpenMAX IL headers
3965
3966 2013-02-21 10:14:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3967
3968         * .gitignore:
3969           Update .gitignore
3970
3971 2013-02-21 10:13:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3972
3973         * config/Makefile.am:
3974         * config/rpi/Makefile.am:
3975         * config/rpi/gstomx.conf:
3976         * configure.ac:
3977           Install the RPI config when the RPI target is selected
3978
3979 2013-02-21 10:08:07 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3980
3981         * omx/gstomx.c:
3982           Set default hacks for the RPI target and always initialize bcm_host
3983
3984 2013-02-21 10:05:37 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3985
3986         * configure.ac:
3987           Add configure parameter for setting the OpenMAX IL target
3988
3989 2013-02-12 11:55:39 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3990
3991         * omx/gstomx.c:
3992           omx: Add FIXME for the future
3993
3994 2013-02-12 11:49:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3995
3996         * omx/gstomx.c:
3997         * omx/gstomx.h:
3998         * omx/gstomxaudioenc.c:
3999         * omx/gstomxaudioenc.h:
4000         * omx/gstomxvideodec.c:
4001         * omx/gstomxvideodec.h:
4002         * omx/gstomxvideoenc.c:
4003         * omx/gstomxvideoenc.h:
4004           omx: Some minor refactoring and cleanup
4005
4006 2013-02-12 11:45:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4007
4008         * omx/gstomx.c:
4009           omx: Don't access the port's buffers array if it wasn't allocated yet
4010
4011 2013-02-12 11:44:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4012
4013         * omx/gstomx.c:
4014           omx: Mark an array as const
4015
4016 2013-02-12 11:41:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4017
4018         * omx/gstomx.c:
4019         * omx/gstomx.h:
4020         * omx/gstomxaudioenc.c:
4021         * omx/gstomxvideodec.c:
4022         * omx/gstomxvideoenc.c:
4023           omx: Split enabling/disabling of port into sending the command and waiting for it
4024           This allows to do anything necessary after sending the command to actually let it finish
4025
4026 2013-02-12 11:37:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4027
4028         * omx/gstomx.c:
4029           omx: Flushing is also allowed in Paused state
4030
4031 2013-02-12 11:28:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4032
4033         * omx/gstomxvideoenc.c:
4034           omxvideoenc: Set stride, slice height and buffer size
4035
4036 2013-02-12 11:09:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4037
4038         * config/raspberry-pi.conf:
4039           config: Add h264 and mpeg2 encoders to the raspberry pi config
4040           Not completely working yet though.
4041
4042 2013-02-12 11:03:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4043
4044         * omx/gstomxvideoenc.c:
4045           omxvideoenc: Properly negotiate OMX color format with the component
4046
4047 2013-02-12 10:53:24 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4048
4049         * omx/gstomxvideoenc.c:
4050           omxvideoenc: Implement getcaps() vfunc
4051
4052 2013-01-29 21:32:53 +0000  Tim-Philipp Müller <tim@centricular.net>
4053
4054         * configure.ac:
4055           configure: use 1.0 gstconfig.h to detect disabled subsystems
4056           Update unused configure check for GStreamer core subsystem
4057           features from 0.10 to 1.0.
4058
4059 2013-01-28 20:44:41 +0100  Stefan Sauer <ensonic@users.sf.net>
4060
4061         * common:
4062           Automatic update of common submodule
4063           From a942293 to 2de221c
4064
4065 2013-01-24 14:02:36 +0100  Julian Scheel <julian@jusst.de>
4066
4067         * config/raspberry-pi.conf:
4068         * omx/Makefile.am:
4069         * omx/gstomx.c:
4070         * omx/gstomxmpeg2dec.c:
4071         * omx/gstomxmpeg2dec.h:
4072           omx: add mpeg2 video decoder
4073           This adds a decoder class for mpeg2, as well as an extended
4074           configuration for raspberry pi.
4075           https://bugzilla.gnome.org/show_bug.cgi?id=692446
4076           Signed-off-by: Julian Scheel <julian@jusst.de>
4077
4078 2013-01-18 16:47:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4079
4080         * omx/gstomx.c:
4081           omx: Minimize the time when the messages lock is held
4082           Fixes a deadlock if any OMX functions are called when the
4083           messages are handled.
4084           Thanks to Nicolas Dufresne for noticing.
4085
4086 2013-01-18 15:28:20 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4087
4088         * omx/gstomx.c:
4089           omx: improve debug message when we can't find the config file
4090           Mention where we looked for the config file.
4091
4092 2013-01-18 12:34:38 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4093
4094         * configure.ac:
4095           build: fix autogen.sh with automake 1.13
4096           AM_CONFIG_HEADER -> AC_CONFIG_HEADERS
4097
4098 2013-01-17 18:07:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4099
4100         * omx/gstomx.h:
4101         * omx/gstomxaudioenc.h:
4102         * omx/gstomxvideodec.h:
4103         * omx/gstomxvideoenc.h:
4104           omx: Fix includes to properly work with the 1.0 releases
4105
4106 2013-01-15 15:08:28 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4107
4108         * common:
4109           Automatic update of common submodule
4110           From a72faea to a942293
4111
4112 2013-01-15 14:34:45 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4113
4114         * omx/gstomx.c:
4115           omx: Update port definition when changing some port setting
4116
4117 2013-01-14 11:41:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4118
4119         * omx/Makefile.am:
4120         * omx/gstomx.c:
4121           omx: Rename from libgstopenmax.so to ligstomx.so for consistency
4122
4123 2013-01-11 15:32:22 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
4124
4125         * omx/gstomx.c:
4126           omx: Add a method to send message
4127
4128 2013-01-11 15:44:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4129
4130         * omx/gstomx.c:
4131         * omx/gstomx.h:
4132           omx: Atomic ops are not required anymore for the reconfiguration
4133
4134 2013-01-11 12:52:10 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4135
4136         * omx/gstomxaudioenc.c:
4137         * omx/gstomxvideodec.c:
4138         * omx/gstomxvideoenc.c:
4139           omx: Fix some memory leaks and suboptimal locking
4140
4141 2013-01-11 12:34:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4142
4143         * omx/gstomxvideoenc.c:
4144           omxvideoenc: Don't forget to unmap frame in error cases
4145
4146 2013-01-11 12:29:20 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4147
4148         * omx/gstomxvideoenc.c:
4149           omxvideoenc: Fix copying of the video frames to the OMX buffers
4150
4151 2013-01-11 12:24:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4152
4153         * omx/gstomxvideodec.c:
4154           omxvideodec: Fix copying of the video frames from the OMX buffers
4155
4156 2013-01-10 14:44:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4157
4158         * omx/Makefile.am:
4159         * omx/gstomx.c:
4160         * omx/gstomx.h:
4161         * omx/gstomxaudioenc.c:
4162         * omx/gstomxrecmutex.c:
4163         * omx/gstomxrecmutex.h:
4164           omx: Implement new approach for locking that should solve all deadlocks on RPi
4165           No mutex is locked while calling any OpenMAX functions anymore
4166           and everything from the OpenMAX callbacks is inserted into a message
4167           queue and handled from outside the callbacks.
4168           Also there's only a single mutex and condition variable per component
4169           now for handling anything from OpenMAX callbacks and a single mutex
4170           for keeping our component/port state sane.
4171
4172 2012-12-20 19:30:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4173
4174         * omx/gstomxvideodec.c:
4175           omxvideodec: Set the OMX buffer nFilledLength field properly
4176
4177 2012-12-20 18:48:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4178
4179         * omx/gstomxrecmutex.c:
4180         * omx/gstomxrecmutex.h:
4181           omxrecmutex: Fix another race condition when two threads are trying to lock for recursion at the same time
4182
4183 2012-12-20 18:16:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4184
4185         * omx/gstomxrecmutex.c:
4186         * omx/gstomxrecmutex.h:
4187           omxrecmutex: Fix yet another race condition that resulted in deadlocks
4188
4189 2012-12-20 17:46:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4190
4191         * omx/gstomx.c:
4192         * omx/gstomxrecmutex.c:
4193         * omx/gstomxrecmutex.h:
4194           omx: Fix another race condition in the recursive mutex
4195           Between lock() and begin_recursion() it was possible for another thread to
4196           try to do a recursive_lock(). This would block because the mutex was already
4197           locked(), but not ready for recursive locking yet. unlock() would never
4198           happen in the original thread because it was waiting for the other thread
4199           to finish first.
4200           Happened on the Raspberry Pi.
4201
4202 2012-12-20 14:45:18 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4203
4204         * omx/gstomxrecmutex.c:
4205         * omx/gstomxrecmutex.h:
4206           omxrecmutex: Fix a small race condition when unlocking a non-recursive lock
4207
4208 2012-12-20 12:30:05 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4209
4210         * omx/gstomxaudioenc.c:
4211         * omx/gstomxvideodec.c:
4212         * omx/gstomxvideoenc.c:
4213           omx: Fix ununsed variable compiler warning
4214
4215 2012-12-20 12:27:47 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4216
4217         * omx/gstomxaudioenc.c:
4218         * omx/gstomxvideodec.c:
4219         * omx/gstomxvideoenc.c:
4220           omx: No need to start the srcpad task in ::start() already
4221           It will be started properly after the caps are set.
4222
4223 2012-12-20 12:23:49 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4224
4225         * omx/gstomxvideodec.c:
4226           omxvideodec: OMX_ErrorNoMore is no error and just means we ended iteration
4227
4228 2012-12-20 12:20:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4229
4230         * omx/gstomxaudioenc.c:
4231         * omx/gstomxvideodec.c:
4232         * omx/gstomxvideoenc.c:
4233           omx: Improve debug output
4234
4235 2012-12-20 12:02:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4236
4237         * omx/gstomxvideodec.c:
4238           omxvideodec: Don't forget to free a GList
4239
4240 2012-12-20 11:56:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4241
4242         * omx/gstomxvideodec.c:
4243           omxvideodec: Map OMX_COLOR_FormatYUV420PackedPlanar to I420 too
4244           This is used on the Raspberry Pi.
4245
4246 2012-12-20 11:55:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4247
4248         * omx/gstomxvideodec.c:
4249           omxvideodec: During negotiation of the output format make sure we use the correct OpenMAX format
4250
4251 2012-12-20 11:42:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4252
4253         * omx/gstomxvideodec.c:
4254           omxvideodec: If negotiation fails this could also mean that the component can't do it at this point yet
4255
4256 2012-12-20 11:40:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4257
4258         * omx/gstomxvideodec.c:
4259           omxvideodec: Improve format negotiation a bit
4260           Don't leak caps and make sure to fixate caps.
4261
4262 2012-12-19 13:05:28 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4263
4264         * omx/gstomx.h:
4265           omx: Also initialize nStep field of the OMX structures
4266
4267 2012-12-19 13:03:37 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4268
4269         * omx/gstomx.h:
4270           omx: Initialize struct version with the OMX version we compiled with
4271
4272 2012-12-19 12:44:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4273
4274         * omx/gstomxvideodec.c:
4275           omxvideodec: Extract data from the input buffer, not the codec data
4276
4277 2012-12-19 12:19:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4278
4279         * omx/gstomx.c:
4280         * tools/listcomponents.c:
4281           omx: Use has_suffix() instead of has_prefix() for the Broadcom hack
4282
4283 2012-12-19 12:08:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4284
4285         * Makefile.am:
4286         * configure.ac:
4287         * tools/Makefile.am:
4288         * tools/listcomponents.c:
4289           tools: Add tool to list all components and their roles
4290
4291 2012-12-19 11:31:51 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4292
4293         * omx/gstomx.c:
4294           omx: Add hack to load and initialize libbcm_host.so
4295           Needed on the Raspberry Pi. Patch based on a patch by
4296           George Kiagiadakis <george.kiagiadakis@collabora.com>
4297
4298 2012-12-19 11:22:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4299
4300         * configure.ac:
4301         * omx/gstomx.h:
4302           configure: Add configure option to pack OpenMAX structures
4303           This is required to set to 4 for the Raspberry Pi for example.
4304
4305 2012-12-19 11:07:44 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4306
4307         * configure.ac:
4308           configure: Require GStreamer 1.0.0
4309
4310 2012-04-20 17:13:52 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
4311
4312         * omx/gstomx.h:
4313           omx: Initialize structures to version 1.1.2
4314
4315 2012-12-19 09:51:22 +0000  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4316
4317         * Makefile.am:
4318         * config/Makefile.am:
4319         * config/raspberry-pi.conf:
4320         * configure.ac:
4321           config: Add raspberry-pi configuration in a different directory
4322
4323 2012-05-20 20:11:59 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
4324
4325         * omx/gstomx-raspberry.conf:
4326           raspberry: Add a gstomx.conf for the Raspberry Pi
4327
4328 2012-12-12 17:45:39 +0000  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4329
4330         * omx/gstomx.h:
4331         * omx/gstomxvideoenc.h:
4332           omx: Fix some compilation errors caused by circular includes
4333
4334 2012-11-19 11:29:44 +0000  Tim-Philipp Müller <tim@centricular.net>
4335
4336         * common:
4337           Automatic update of common submodule
4338           From 6bb6951 to a72faea
4339
4340 2012-11-12 15:14:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4341
4342         * omx/gstomxvideodec.c:
4343         * omx/gstomxvideoenc.c:
4344           omx: Fix refcount problem with frames being dropped because of decoder bugs
4345
4346 2012-11-12 11:29:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4347
4348         * omx/gstomx.c:
4349         * omx/gstomx.h:
4350         * omx/gstomxaudioenc.c:
4351         * omx/gstomxaudioenc.h:
4352         * omx/gstomxrecmutex.c:
4353         * omx/gstomxrecmutex.h:
4354         * omx/gstomxvideodec.c:
4355         * omx/gstomxvideodec.h:
4356         * omx/gstomxvideoenc.c:
4357         * omx/gstomxvideoenc.h:
4358           omx: Update to new GLib thread API
4359
4360 2012-10-22 14:34:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4361
4362         * omx/gstomxvideodec.c:
4363         * omx/gstomxvideoenc.c:
4364           omx: Use open/close vfuncs
4365
4366 2012-10-22 14:28:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4367
4368         * omx/gstomxvideodec.c:
4369         * omx/gstomxvideoenc.c:
4370           omx: Handle video meta correctly
4371
4372 2012-06-20 13:11:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4373
4374         * omx/Makefile.am:
4375         * omx/gstbasevideocodec.c:
4376         * omx/gstbasevideocodec.h:
4377         * omx/gstbasevideodecoder.c:
4378         * omx/gstbasevideodecoder.h:
4379         * omx/gstbasevideoencoder.c:
4380         * omx/gstbasevideoencoder.h:
4381         * omx/gstbasevideoutils.c:
4382         * omx/gstbasevideoutils.h:
4383         * omx/gstomxh263dec.c:
4384         * omx/gstomxh263enc.c:
4385         * omx/gstomxh264dec.c:
4386         * omx/gstomxh264enc.c:
4387         * omx/gstomxmpeg4videodec.c:
4388         * omx/gstomxmpeg4videoenc.c:
4389         * omx/gstomxvideodec.c:
4390         * omx/gstomxvideodec.h:
4391         * omx/gstomxvideoenc.c:
4392         * omx/gstomxvideoenc.h:
4393         * omx/gstomxwmvdec.c:
4394           omx: Port to video base classes from -base
4395
4396 2012-10-17 17:57:43 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4397
4398         * omx/gstomxaacenc.c:
4399         * omx/gstomxh263dec.c:
4400         * omx/gstomxh263enc.c:
4401         * omx/gstomxh264dec.c:
4402         * omx/gstomxh264enc.c:
4403         * omx/gstomxmpeg4videodec.c:
4404         * omx/gstomxmpeg4videoenc.c:
4405         * omx/gstomxwmvdec.c:
4406           omx: gst_element_class_set_details_simple() -> set_static_metadata()
4407
4408 2012-10-06 15:01:11 +0100  Tim-Philipp Müller <tim@centricular.net>
4409
4410         * common:
4411           Automatic update of common submodule
4412           From 6c0b52c to 6bb6951
4413
4414 2012-09-22 16:10:38 +0100  Tim-Philipp Müller <tim@centricular.net>
4415
4416         * common:
4417           Automatic update of common submodule
4418           From 4f962f7 to 6c0b52c
4419
4420 2012-06-21 20:22:13 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
4421
4422         * omx/gstomx.c:
4423           omx: fix debug statement
4424
4425 2012-06-21 20:21:03 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
4426
4427         * omx/gstomx.c:
4428           omx: use recursive_lock inside set_last_error(), since this function may be called from an event handler
4429
4430 2012-08-22 13:31:59 +0200  Stefan Sauer <ensonic@users.sf.net>
4431
4432         * common:
4433           Automatic update of common submodule
4434           From 668acee to 4f962f7
4435
4436 2012-08-05 16:42:43 +0100  Tim-Philipp Müller <tim@centricular.net>
4437
4438         * common:
4439           Automatic update of common submodule
4440           From 94ccf4c to 668acee
4441
4442 2012-08-03 19:32:13 +0100  Tim-Philipp Müller <tim@centricular.net>
4443
4444         * omx/gstomx.c:
4445           omx: fix plugin name for new GST_PLUGIN_DEFINE API
4446
4447 2012-07-23 08:47:32 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4448
4449         * common:
4450           Automatic update of common submodule
4451           From 98e386f to 94ccf4c
4452
4453 2012-07-10 09:57:09 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4454
4455         * omx/gstbasevideodecoder.c:
4456           omx: Update for allocation query API changes
4457
4458 2012-06-20 11:09:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4459
4460         * omx/gstomxaudioenc.c:
4461         * omx/gstomxvideodec.c:
4462         * omx/gstomxvideoenc.c:
4463           omx: Fix compilation after gst_pad_start_task() API changes
4464
4465 2012-06-08 15:06:35 +0200  Edward Hervey <edward.hervey@collabora.co.uk>
4466
4467         * common:
4468           Automatic update of common submodule
4469           From 03a0e57 to 98e386f
4470
4471 2012-06-06 18:20:18 +0200  Edward Hervey <edward.hervey@collabora.co.uk>
4472
4473         * common:
4474           Automatic update of common submodule
4475           From 1fab359 to 03a0e57
4476
4477 2012-06-01 10:30:27 +0200  Edward Hervey <edward.hervey@collabora.co.uk>
4478
4479         * common:
4480           Automatic update of common submodule
4481           From f1b5a96 to 1fab359
4482
4483 2012-05-31 13:10:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4484
4485         * common:
4486           Automatic update of common submodule
4487           From 92b7266 to f1b5a96
4488
4489 2012-05-30 12:47:59 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4490
4491         * common:
4492           Automatic update of common submodule
4493           From ec1c4a8 to 92b7266
4494
4495 2012-05-30 11:26:30 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4496
4497         * common:
4498           Automatic update of common submodule
4499           From 3429ba6 to ec1c4a8
4500
4501 2012-05-13 15:58:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4502
4503         * common:
4504           Automatic update of common submodule
4505           From dc70203 to 3429ba6
4506
4507 2012-05-08 16:13:32 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
4508
4509         * omx/gstomx.c:
4510           omx: Fix spelling mistake found by lintian: s/Seperate/Separate/
4511
4512 2012-04-30 23:58:43 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
4513
4514         * omx/Makefile.am:
4515         * omx/gstomx.c:
4516         * omx/gstomx.h:
4517         * omx/gstomxaudioenc.c:
4518         * omx/gstomxrecmutex.c:
4519         * omx/gstomxrecmutex.h:
4520         * omx/gstomxvideodec.c:
4521         * omx/gstomxvideoenc.c:
4522           Implement a new custom recursive mutex type and fix locking in callbacks so that in-context calls are allowed.
4523           According to the OMX specification, implementations are allowed to call
4524           callbacks in the context of their function calls. However, our callbacks
4525           take locks and this causes deadlocks if the unerlying OMX implementation
4526           uses this kind of in-context calls.
4527           A solution to the problem would be a recursive mutex. However, a normal
4528           recursive mutex does not fix the problem because it is not guaranteed
4529           that the callbacks are called from the same thread. What we see in Broadcom's
4530           implementation for example is:
4531           - OMX_Foo is called
4532           - OMX_Foo waits on a condition
4533           - A callback is executed in a different thread
4534           - When the callback returns, its calling function
4535           signals the condition that OMX_Foo waits on
4536           - OMX_Foo wakes up and returns
4537           The solution I came up with here is to take a second lock inside the callback,
4538           but only if recursion is expected to happen. Therefore, all calls to OMX
4539           functions are guarded by calls to gst_omx_rec_mutex_begin_recursion() / _end_recursion(),
4540           which effectively tells the mutex that at this point we want to allow calls
4541           to _recursive_lock() to succeed, although we are still holding the master lock.
4542
4543 2012-04-20 14:51:34 +0000  George Kiagiadakis <george.kiagiadakis@collabora.com>
4544
4545         * omx/gstomx.c:
4546         * omx/gstomx.h:
4547           omx: Add hack to disable setting roles to components.
4548           Conflicts:
4549           omx/gstomx.c
4550
4551 2012-04-30 23:20:24 +0000  George Kiagiadakis <george.kiagiadakis@collabora.com>
4552
4553         * omx/gstomx.h:
4554         * omx/gstomxvideodec.c:
4555           omxvideodec: Implement no-empty-eos-buffer hack, as in omxvideoenc.
4556           Conflicts:
4557           omx/gstomxvideodec.c
4558
4559 2012-04-30 23:19:55 +0000  George Kiagiadakis <george.kiagiadakis@collabora.com>
4560
4561         * omx/gstomxvideodec.c:
4562           omxvideodec: Fix coding style in the drain-may-not-return hack code
4563
4564 2012-04-25 19:03:48 +0530  Arun Raghavan <arun.raghavan@collabora.co.uk>
4565
4566         * omx/gstomx.c:
4567           omx: Fix trivial debug print bug
4568
4569 2012-04-25 19:01:32 +0530  Arun Raghavan <arun.raghavan@collabora.co.uk>
4570
4571         * omx/gstomx.c:
4572         * omx/gstomx.h:
4573         * omx/gstomxvideodec.c:
4574           omxvideodec: Add hack for Ducati components not returning from drain
4575           This happens on the Galaxy Nexus, and causes the pipeline to hang waiting
4576           endlessly for a drain. The hack replaces the wait with a wait + 500ms timeout.
4577
4578 2012-04-25 16:35:40 +0530  Arun Raghavan <arun.raghavan@collabora.co.uk>
4579
4580         * omx/gstomx.c:
4581           omx: Fix deadlock between ending a flush and the event handler
4582           gst_omx_port_set_flushing() calls OMX_FillThisBuffer at the end of a flush
4583           without releasing the port lock, and this can cause a deadlock with the
4584           EventHandler. This patches fixes this by dropping the lock for the duration of
4585           the fill buffer call.
4586
4587 2012-04-24 15:41:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4588
4589         * omx/gstbasevideodecoder.c:
4590         * omx/gstbasevideoencoder.c:
4591           omx: Update video encoder/decoder base classes from gst-plugins-bad
4592
4593 2012-04-16 09:16:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4594
4595         * configure.ac:
4596           configure: Modernize autotools setup a bit
4597           Also we now only create tar.bz2 and tar.xz tarballs.
4598
4599 2012-04-16 09:12:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4600
4601         * common:
4602           Automatic update of common submodule
4603
4604 2012-04-16 08:34:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4605
4606         * omx/gstomxaudioenc.c:
4607           omxaudioenc: Use gst_buffer_extract() to copy the input buffer data to the OpenMAX buffer
4608
4609 2012-04-13 17:16:42 -0400  Alessandro Decina <alessandro.decina@collabora.com>
4610
4611         * omx/Makefile.am:
4612           Fix relative/absolute path glitch
4613           Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
4614
4615 2012-04-12 15:57:32 -0400  Olivier Crête <olivier.crete@collabora.com>
4616
4617         * common:
4618         * configure.ac:
4619         * omx/Makefile.am:
4620         * omx/gstbasevideocodec.c:
4621         * omx/gstbasevideocodec.h:
4622         * omx/gstbasevideodecoder.c:
4623         * omx/gstbasevideodecoder.h:
4624         * omx/gstbasevideoencoder.c:
4625         * omx/gstbasevideoencoder.h:
4626         * omx/gstomx.c:
4627         * omx/gstomx.h:
4628         * omx/gstomxaacenc.c:
4629         * omx/gstomxaudioenc.c:
4630         * omx/gstomxaudioenc.h:
4631         * omx/gstomxh263dec.c:
4632         * omx/gstomxh263enc.c:
4633         * omx/gstomxh264dec.c:
4634         * omx/gstomxh264enc.c:
4635         * omx/gstomxmpeg4videodec.c:
4636         * omx/gstomxmpeg4videoenc.c:
4637         * omx/gstomxvideodec.c:
4638         * omx/gstomxvideodec.h:
4639         * omx/gstomxvideoenc.c:
4640         * omx/gstomxvideoenc.h:
4641         * omx/gstomxwmvdec.c:
4642           Port to Gst 0.11
4643
4644 2012-01-18 16:53:16 -0300  Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
4645
4646         * Android.mk:
4647         * omx/Makefile.am:
4648           Enable building with Android's buildsystem
4649           This change adds prelimary buildsystem hooks to
4650           build gst-omx with the Android buildsystem. Like
4651           the rest of GStreamer's Android hooks, the process
4652           relies on the availability of androgenizer. A tool
4653           developed by Collabora to automatically generate
4654           Android.mk files from within the auto* setup.
4655           Androgenizer is currently available at:
4656           http://cgit.collabora.com/git/user/derek/androgenizer.git/
4657
4658 2011-12-13 10:17:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4659
4660         * omx/gstbasevideocodec.c:
4661           basevideocodec: Don't use G_TYPE_REGISTER_BOXED() yet
4662           This would require GLib 2.26.
4663
4664 2011-12-14 10:09:34 +0100  Jonas Larsson <Jonas.Larsson@palm.com>
4665
4666         * omx/gstomxaudioenc.c:
4667           omxaudioenc: Add hack for encoder components that don't allow empty EOS buffers
4668
4669 2011-12-14 10:07:29 +0100  Jonas Larsson <Jonas.Larsson@palm.com>
4670
4671         * omx/gstomxvideoenc.c:
4672           omxvideoenc: Fix deadlock when using the EOS hack
4673
4674 2011-12-12 14:26:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4675
4676         * omx/gstomxvideoenc.c:
4677           omxvideoenc: Remove workaround for basevideocodec bug
4678
4679 2011-12-12 14:26:34 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4680
4681         * omx/gstomxvideodec.c:
4682           omxvideodec: Remove workaround for basevideocodec bug
4683
4684 2011-12-05 17:57:01 +0000  Matej Knopp <matej.knopp@gmail.com>
4685
4686         * omx/gstbasevideocodec.c:
4687         * omx/gstbasevideocodec.h:
4688         * omx/gstbasevideodecoder.c:
4689         * omx/gstbasevideoencoder.c:
4690           basevideo: Make GstVideoFrame a reference counted boxed object
4691           ...and also clear all existing frames when resetting the decoder or encoder.
4692
4693 2011-12-09 12:17:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4694
4695         * omx/gstomx.c:
4696         * omx/gstomx.h:
4697         * omx/gstomxvideoenc.c:
4698           omx: Add hack for encoder components that don't allow empty EOS buffers
4699
4700 2011-12-09 10:21:47 +0100  Dake Gu <Dake.Gu@palm.com>
4701
4702         * omx/gstomxaacenc.c:
4703           omxaacenc: Generate and set codec_data on the caps for raw AAC
4704
4705 2011-10-31 11:36:06 +0100  Alessandro Decina <alessandro.decina@collabora.co.uk>
4706
4707         * omx/gstbasevideoencoder.c:
4708           basevideoencoder: handle failures in start() and stop()
4709
4710 2011-08-26 10:50:38 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
4711
4712         * omx/gstbasevideoencoder.c:
4713           basevideoenc: do not try to calculate latency from an unknown framerate
4714           It'll divide by zero, and latency is unknown for an unknown framerate.
4715           Fixes an assert in the schroenc test.
4716           https://bugzilla.gnome.org/show_bug.cgi?id=657419
4717
4718 2011-12-08 11:50:49 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4719
4720         * omx/gstbasevideoencoder.c:
4721           basevideoencoder: Only make the header buffer metadata writable, not the buffer
4722
4723 2011-12-08 10:18:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4724
4725         * omx/gstbasevideoencoder.c:
4726           basevideoencoder: Fix handling of force-keyunit events
4727
4728 2011-12-06 13:28:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4729
4730         * omx/gstomxaudioenc.c:
4731           omxaudioenc: Don't forward EOS events immediately but let all other events be handled by the base class
4732           Previously this logic was inversed, which did not make any sense at all.
4733
4734 2011-12-06 12:47:25 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4735
4736         * omx/gstomxaudioenc.c:
4737         * omx/gstomxaudioenc.h:
4738           omxaudioenc: Use correct timestamp, duration and filled length for the EOS buffers
4739
4740 2011-12-06 12:47:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4741
4742         * omx/gstomxvideodec.c:
4743         * omx/gstomxvideodec.h:
4744           omxvideodec: Use correct timestamp, duration and filled length for the EOS buffers
4745
4746 2011-12-06 12:46:51 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4747
4748         * omx/gstomxvideoenc.c:
4749         * omx/gstomxvideoenc.h:
4750           omxvideoenc: Use correct timestamp, duration and filled length for the EOS buffers
4751
4752 2011-12-05 13:18:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4753
4754         * omx/gstomx.c:
4755           omx: Improve debugging of buffer handling
4756
4757 2011-12-05 08:12:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4758
4759         * omx/gstomxvideoenc.c:
4760           omxvideoenc: Drop EOS events in ::finish()
4761           The event will be forwarded downstream from the srcpad
4762           loop function after the last buffer was generated by the
4763           component. Forwarding it after ::finish() will use the
4764           sinkpad streaming thread and does not guarantee that
4765           the encoder is completely drained.
4766
4767 2011-12-01 16:20:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4768
4769         * omx/gstomxvideodec.c:
4770           omxvideodec: Properly drop frames due to QoS
4771           Instead of finishing them they should be passed to drop(), which
4772           will then send QoS messages.
4773
4774 2011-11-29 12:21:32 +0100  Jonas Larsson <jonas@hallerud.se>
4775
4776         * omx/gstomxh264enc.c:
4777           omxh264enc: Add support for resending headers after a forced-keyframe
4778
4779 2011-11-29 12:12:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4780
4781         * omx/gstbasevideocodec.h:
4782         * omx/gstbasevideoencoder.c:
4783           basevideoencoder: Pass the all-headers field of the force-key-unit event to the subclass
4784
4785 2011-11-29 12:12:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4786
4787         * omx/gstbasevideoencoder.c:
4788         * omx/gstbasevideoencoder.h:
4789           basevideoencoder: Implement full support for the new force-key-unit event
4790           Including support for the running-time and count fields.
4791
4792 2011-11-29 09:31:11 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4793
4794         * omx/gstbasevideoencoder.c:
4795           basevideoencoder: Use new force-keyunit event API from gst-plugins-base
4796
4797 2011-11-29 09:18:19 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4798
4799         * omx/gstbasevideoencoder.c:
4800         * omx/gstbasevideoencoder.h:
4801           basevideoencoder: Adjusting padding is not required for -bad libraries
4802
4803 2011-11-28 19:48:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4804
4805         * omx/gstbasevideoencoder.h:
4806           basevideoencoder: Move some fields to the private part of the instance struct
4807
4808 2011-11-28 19:36:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4809
4810         * omx/gstbasevideoencoder.c:
4811           basevideoencoder: Make headers metadata writable before pushing downstream
4812           The timestamp, duration, etc of the headers has to be changed.
4813
4814 2011-11-28 19:35:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4815
4816         * omx/gstbasevideoencoder.c:
4817         * omx/gstbasevideoencoder.h:
4818           basevideoencoder: Push the downstream force-keyframe event after the next keyframe
4819           Even if the corresponding GstVideoFrame doesn't have the is_sync_point
4820           flag set.
4821
4822 2011-11-28 19:29:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4823
4824         * omx/gstbasevideoencoder.c:
4825         * omx/gstbasevideoencoder.h:
4826           basevideoencoder: Don't push an upstream force-keyunit event downstream
4827
4828 2011-11-25 11:48:08 +0100  Jonas Larsson <jonas@hallerud.se>
4829
4830         * omx/gstbasevideoencoder.c:
4831         * omx/gstbasevideoencoder.h:
4832           basevideoencoder: Add initial support for the all-headers field of the force-keyframe event
4833           See bug #607742.
4834
4835 2011-11-25 11:37:39 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4836
4837         * omx/gstbasevideodecoder.c:
4838           basevideodecoder: some more debug logging
4839
4840 2011-11-23 20:03:32 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4841
4842         * omx/gstbasevideodecoder.c:
4843         * omx/gstbasevideodecoder.h:
4844           basevideodecoder: add API to drop a frame and post a QoS message on the bus
4845           https://bugzilla.gnome.org/show_bug.cgi?id=640017
4846           API: gst_base_video_decoder_drop_frame()
4847
4848 2011-11-22 23:04:49 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4849
4850         * omx/gstbasevideodecoder.c:
4851           docs: fix comment in gst_base_video_decoder_get_max_decode_time() docs
4852
4853 2011-11-22 19:57:07 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
4854
4855         * omx/gstbasevideodecoder.c:
4856           basevideodecoder: fix weird event list handling
4857           Get rid of weird code that copies a list manually, taking
4858           ownership of the elements and then frees the old list. Instead,
4859           just take over the old list entirely. (If the intent was to
4860           reverse the list, one could use g_list_reverse() instead).
4861           Then, push events in the list out from last to first (since they
4862           were prepended as they came in) instead of just pushing out the
4863           last in the list and leaking the others.
4864
4865 2011-11-25 11:31:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4866
4867         * configure.ac:
4868         * omx/Makefile.am:
4869         * omx/gstbaseaudiodecoder.c:
4870         * omx/gstbaseaudiodecoder.h:
4871         * omx/gstbaseaudioencoder.c:
4872         * omx/gstbaseaudioencoder.h:
4873         * omx/gstbaseaudioutils.c:
4874         * omx/gstbaseaudioutils.h:
4875         * omx/gstomxaacenc.c:
4876         * omx/gstomxaudioenc.c:
4877         * omx/gstomxaudioenc.h:
4878           omxaudioenc: Use audio base classes from gst-plugins-base instead of having our own copies
4879
4880 2011-11-18 10:00:31 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4881
4882         * omx/gstomxaudioenc.c:
4883           omxaudioenc: First set ports to flushing before waiting for the srcpad streaming thread to finish
4884
4885 2011-11-18 09:59:43 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4886
4887         * omx/gstomxvideoenc.c:
4888           omxvideoenc: First set ports to flushing before waiting for the srcpad streaming thread to finish
4889
4890 2011-11-18 09:58:58 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4891
4892         * omx/gstomxvideodec.c:
4893           omxvideodec: First set ports to flushing before waiting for the srcpad streaming thread to finish
4894
4895 2011-11-17 14:38:54 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4896
4897         * omx/gstomx.c:
4898           omx: Only disabling of a port is like flushing, enabling is like unflushing
4899
4900 2011-11-17 13:33:35 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4901
4902         * omx/gstomx.c:
4903           omx: Enabling/disabling a port is also like flushing
4904           The component returns all buffers to us and shouldn't get any
4905           new buffers passed anymore.
4906
4907 2011-11-17 11:26:33 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4908
4909         * omx/gstomxaudioenc.c:
4910           omxaudioenc: Signal the drain GCond even if downstream returned an error
4911
4912 2011-11-17 11:26:20 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4913
4914         * omx/gstomxvideoenc.c:
4915           omxvideoenc: Signal the drain GCond even if downstream returned an error
4916
4917 2011-11-17 11:25:52 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4918
4919         * omx/gstomxvideodec.c:
4920           omxvideodec: Signal the drain GCond even if downstream returned an error
4921
4922 2011-11-17 10:34:19 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4923
4924         * omx/gstbasevideoencoder.c:
4925           basevideoencoder: Only call ::reset once in READY->PAUSED
4926
4927 2011-11-17 10:19:35 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4928
4929         * omx/gstomxaudioenc.c:
4930           omxaudioenc: Shutdown component in PAUSED->READY and deallocate buffers
4931
4932 2011-11-17 10:19:30 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4933
4934         * omx/gstomxvideoenc.c:
4935           omxvideoenc: Shutdown component in PAUSED->READY and deallocate buffers
4936
4937 2011-11-17 10:19:10 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4938
4939         * omx/gstomxvideodec.c:
4940           omxvideodec: Shutdown component in PAUSED->READY and deallocate buffers
4941
4942 2011-11-16 12:02:08 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4943
4944         * omx/gstomxvideoenc.c:
4945           omxvideoenc: Set force_keyframe to FALSE after handling it
4946           There's no reason why the base class should forward the event
4947           further downstream if we already handled it and will insert a
4948           keyframe.
4949
4950 2011-11-16 11:21:25 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4951
4952         * omx/gstomxvideodec.c:
4953           omxvideodec: Always push buffers downstream, even if we didn't find a corresponding GstVideoFrame
4954
4955 2011-11-15 09:47:55 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4956
4957         * omx/gstomx.c:
4958           omx: Fix debug level for flushing in wrong state from ERROR to DEBUG
4959           It's not really an error and doesn't matter at all if flush is called
4960           when the component is not running.
4961
4962 2011-11-15 08:40:07 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4963
4964         * omx/gstomxh264enc.c:
4965           omxh264enc: Detect bytestream stream format and don't put SPS/PPS into the caps for this format
4966
4967 2011-11-15 08:28:32 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4968
4969         * omx/gstomxvideoenc.c:
4970         * omx/gstomxvideoenc.h:
4971           omxvideoenc: Add vfunc for handling the output frames
4972           This can be used by subclasses to override the buffer flags
4973           or to handle some frames differently than the default behaviour.
4974
4975 2011-11-14 12:50:26 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4976
4977         * omx/gstomxvideodec.c:
4978           omxvideodec: Don't release buffers twice if dropping because of QoS
4979
4980 2011-11-14 09:13:06 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4981
4982         * omx/gstomx.c:
4983           omx: Add XXX to the nOffset reset hack comment for QCOM
4984
4985 2011-11-10 15:18:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4986
4987         * omx/gstomxaudioenc.c:
4988           omxaudioenc: Make srcpad caps setting threadsafe
4989
4990 2011-11-10 15:17:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4991
4992         * omx/gstomxvideoenc.c:
4993           omxvideoenc: Make srcpad caps setting threadsafe
4994
4995 2011-11-10 15:17:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4996
4997         * omx/gstomxvideodec.c:
4998           omxvideodec: Make srcpad caps setting threadsafe
4999
5000 2011-11-10 15:10:14 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5001
5002         * omx/gstomxaudioenc.c:
5003           omxaudioenc: Make the srcpad task and the sinkpad streaming thread handling threadsafe
5004
5005 2011-11-10 15:03:05 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5006
5007         * omx/gstomxaudioenc.c:
5008           omxaudioenc: Always flush the ports and make sure no processing is happening in ::flush
5009           This fixes a race condition that happened when seeking
5010           very often in a short period of time.
5011
5012 2011-11-10 15:02:22 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5013
5014         * omx/gstomxvideoenc.c:
5015           omxvideoenc: Always flush the ports and make sure no processing is happening in ::reset
5016           This fixes a race condition that happened when seeking
5017           very often in a short period of time.
5018
5019 2011-11-10 15:01:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5020
5021         * omx/gstomxvideoenc.c:
5022           omxvideoenc: Fix minor race condition when draining after upstream signalled EOS
5023
5024 2011-11-10 14:56:19 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5025
5026         * omx/gstomxaudioenc.c:
5027           omxaudioenc: Improve EOS handling
5028           If downstream return UNEXPECTED we should still signal the
5029           drain cond because nothing will trigger this again later.
5030
5031 2011-11-10 14:56:11 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5032
5033         * omx/gstomxvideoenc.c:
5034           omxvideoenc: Improve EOS handling
5035           If downstream return UNEXPECTED we should still signal the
5036           drain cond because nothing will trigger this again later.
5037
5038 2011-11-10 14:54:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5039
5040         * omx/gstomxaudioenc.c:
5041           omxaudioenc: Improve debugging of EOS and draining
5042
5043 2011-11-10 14:54:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5044
5045         * omx/gstomxvideoenc.c:
5046           omxvideoenc: Improve debugging of EOS and draining
5047
5048 2011-11-10 14:51:06 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5049
5050         * omx/gstomxvideodec.c:
5051           omxvideodec: Log if acquiring buffer for EOS failed
5052
5053 2011-11-10 14:42:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5054
5055         * omx/gstomxvideodec.c:
5056           omxvideodec: The component is not started in READY
5057
5058 2011-11-10 14:39:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5059
5060         * omx/gstomxaudioenc.c:
5061           omxaudioenc: No need to signal the drain cond when going from READY to PAUSED
5062           Also the component is not started in READY
5063
5064 2011-11-10 14:40:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5065
5066         * omx/gstomxvideoenc.c:
5067           omxvideoenc: No need to signal the drain cond when going from READY to PAUSED
5068           Also the component is not started in READY.
5069
5070 2011-11-09 15:46:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5071
5072         * omx/gstomxvideodec.c:
5073           omxvideodec: Always flush the ports and make sure no processing is happening in ::reset
5074           This fixes a race condition that happened when seeking
5075           very often in a short period of time.
5076
5077 2011-11-09 15:45:20 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5078
5079         * omx/gstomxvideodec.c:
5080           omxvideodec: Fix minor race condition when draining after upstream signalled EOS
5081
5082 2011-11-09 15:44:11 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5083
5084         * omx/gstomxvideodec.c:
5085           omxvideodec: Improve EOS handling
5086           If downstream return UNEXPECTED we should still signal the
5087           drain cond because nothing will trigger this again later.
5088
5089 2011-11-09 15:43:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5090
5091         * omx/gstomxvideodec.c:
5092           omxvideodec: Improve debugging of EOS and draining
5093
5094 2011-11-09 15:42:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5095
5096         * omx/gstomxvideodec.c:
5097           omxvideodec: The component is not started already when going from READY to PAUSED
5098
5099 2011-11-09 15:42:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5100
5101         * omx/gstomxvideodec.c:
5102           omxvideodec: No need to signal the drain cond when going from READY to PAUSED
5103
5104 2011-11-09 15:41:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5105
5106         * omx/gstomx.c:
5107           omx: Always reset buffer flags for output ports, even in flushing/error state
5108
5109 2011-11-09 09:00:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5110
5111         * omx/gstomxvideodec.c:
5112           omxvideodec: Improve debugging in case of QoS-related frame drops
5113
5114 2011-11-08 12:46:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5115
5116         * omx/gstomxvideoenc.c:
5117           omxvideoenc: Release the video codec stream lock before acquiring an input buffer
5118           Otherwise the srcpad task might block on this lock and
5119           no buffers ever become available again.
5120
5121 2011-11-08 12:45:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5122
5123         * omx/gstomxaudioenc.c:
5124           omxaudioenc: Release the audio encoder stream lock before acquiring an input buffer
5125           Otherwise the srcpad task might block on this lock and
5126           no buffers ever become available again.
5127
5128 2011-11-08 12:42:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5129
5130         * omx/gstomxvideodec.c:
5131           omxvideodec: Release the video codec stream lock before acquiring an input buffer
5132           Otherwise the srcpad task might block on this lock and
5133           no buffers ever become available again.
5134
5135 2011-11-08 11:07:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5136
5137         * omx/gstomxaudioenc.c:
5138         * omx/gstomxaudioenc.h:
5139           omxaudioenc: Don't try to drain the component after EOS
5140           And don't send EOS twice in any case. This most likely
5141           will cause the component to not output it again and
5142           is not necessary anyway.
5143
5144 2011-11-08 11:03:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5145
5146         * omx/gstomxvideoenc.c:
5147         * omx/gstomxvideoenc.h:
5148           omxvideoenc: Don't try to drain the component after EOS
5149           And don't send EOS twice in any case. This most likely
5150           will cause the component to not output it again and
5151           is not necessary anyway.
5152
5153 2011-11-08 10:46:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5154
5155         * omx/gstomxvideodec.c:
5156         * omx/gstomxvideodec.h:
5157           omxvideodec: Don't try to drain the component after EOS
5158           And don't send EOS twice in any case. This most likely
5159           will cause the component to not output it again and
5160           is not necessary anyway.
5161
5162 2011-11-08 09:09:28 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5163
5164         * omx/gstomxvideodec.c:
5165           omxvideodec: Implement dropping of too late frames via QoS
5166
5167 2011-11-08 08:31:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5168
5169         * omx/gstomxaudioenc.c:
5170           omxaudioenc: Minor code refactoring
5171
5172 2011-11-08 08:31:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5173
5174         * omx/gstomxvideoenc.c:
5175           omxvideoenc: Minor code refactoring
5176
5177 2011-11-08 08:31:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5178
5179         * omx/gstomxvideodec.c:
5180           omxvideodec: Make sure to always release buffers back to OMX
5181
5182 2011-11-08 08:24:19 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5183
5184         * omx/gstomx.c:
5185           omx: Also properly release buffers when in error state
5186
5187 2011-11-08 08:22:08 +0100  Jonas Larsson <Jonas.Larsson@palm.com>
5188
5189         * omx/gstomx.c:
5190           omx: Properly release buffers during flushing
5191           We can't pass them back to OMX_FillThisBuffer() or OMX_EmptyThisBuffer()
5192           but instead of doing nothing we have to put them back into our queue.
5193           Otherwise the buffer is leaked and we will have too few buffers in
5194           the future.
5195
5196 2011-11-07 14:00:47 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5197
5198         * omx/gstomxvideodec.c:
5199           omxvideodec: Free pending frames after draining component
5200
5201 2011-11-07 14:00:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5202
5203         * omx/gstomxvideoenc.c:
5204           omxvideoenc: Free pending frames after draining the component
5205
5206 2011-11-07 11:07:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5207
5208         * omx/gstomxvideoenc.c:
5209           omxvideoenc: Make handling and usage of the base video codec frames threadsafe
5210
5211 2011-11-07 11:05:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5212
5213         * omx/gstomxvideoenc.c:
5214           omxvideoenc: Fix deadlock between srcpad stream lock and ::reset()
5215
5216 2011-11-07 11:04:27 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5217
5218         * omx/gstomxvideodec.c:
5219           omxvideoenc: Make handling and usage of the base video codec frames threadsafe
5220
5221 2011-11-07 10:58:44 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5222
5223         * omx/gstomxvideoenc.c:
5224           omxvideoenc: Free all pending frames after draining the component
5225
5226 2011-11-07 10:58:24 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5227
5228         * omx/gstomxvideodec.c:
5229           omxvideodec: Always free all pending frames when caps changes require reconfiguration
5230
5231 2011-11-04 09:43:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5232
5233         * omx/gstomxaudioenc.c:
5234           omxaudioenc: Only drain the component a single time and only after processing started
5235
5236 2011-11-04 09:43:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5237
5238         * omx/gstomxvideodec.c:
5239           omxvideodec: Only drain the component a single time and only after processing started
5240
5241 2011-11-04 09:43:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5242
5243         * omx/gstomxvideoenc.c:
5244           omxvideoenc: Only drain the component a single time and only after processing started
5245
5246 2011-11-04 09:04:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5247
5248         * omx/gstomx.c:
5249           omx: Reset buffer flags to 0 after it was consumed by the component or the element
5250           Some implementations don't reset the flags and the standard is not
5251           really clear on the expected behaviour. Let's just always reset the
5252           flags as they're not valid at this point anymore.
5253
5254 2011-11-02 13:50:14 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5255
5256         * omx/gstomxvideoenc.c:
5257         * omx/gstomxvideoenc.h:
5258           omxvideoenc: Better handling of encoder parameters
5259           Only set them if necessary and allow to use the component
5260           defaults.
5261
5262 2011-11-02 13:22:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5263
5264         * omx/gstomxvideoenc.c:
5265           omxvideoenc: Make unsupported bitrate/quantizer settings less fatal
5266
5267 2011-11-02 10:39:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5268
5269         * omx/gstomxvideodec.c:
5270           omxvideodec: If no stride was set for the OMX output port assume GStreamer stride
5271           This is not really correct but there's nothing else we could do.
5272
5273 2011-11-02 10:39:10 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5274
5275         * omx/gstomxvideoenc.c:
5276           omxvideoenc: If no stride was set for the OMX input port assume GStreamer stride
5277           This is not really correct but there's nothing else we could do.
5278
5279 2011-11-01 16:46:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5280
5281         * omx/gstomxaudioenc.c:
5282         * omx/gstomxaudioenc.h:
5283           omxaudioenc: Implement draining of the component and use it
5284           This makes sure that all buffers are encoded and pushed downstream
5285           before flushing the ports and losing some buffers.
5286
5287 2011-11-01 16:41:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5288
5289         * omx/gstomxvideoenc.c:
5290         * omx/gstomxvideoenc.h:
5291           omxvideoenc: Implement draining of the component and use it
5292           This makes sure that all buffers are encoded and pushed downstream
5293           before flushing the ports and losing some buffers.
5294
5295 2011-11-01 16:08:59 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5296
5297         * omx/gstomxvideodec.c:
5298         * omx/gstomxvideodec.h:
5299           omxvideodec: Implement draining of the component and use it
5300           This makes sure that all buffers are decoded and pushed downstream
5301           before flushing the ports and losing some buffers.
5302
5303 2011-10-20 14:32:40 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5304
5305         * omx/gstomxvideodec.c:
5306           omxvideodec: Fix deadlock if ::reset is called before finding the corresponding frame of a decoded buffer
5307
5308 2011-11-01 15:10:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5309
5310         * omx/gstomxaudioenc.c:
5311         * omx/gstomxaudioenc.h:
5312         * omx/gstomxvideoenc.h:
5313           omxaudioenc: Forward downstream flow returns to upstream
5314
5315 2011-11-01 15:10:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5316
5317         * omx/gstomxvideoenc.c:
5318           omxvideoenc: Forward downstream flow returns to upstream
5319
5320 2011-11-01 13:58:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5321
5322         * omx/gstomxvideodec.c:
5323         * omx/gstomxvideodec.h:
5324           omxvideodec: Forward downstream flow returns to upstream
5325
5326 2011-10-25 14:23:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5327
5328         * README:
5329           omx: Add minimal README file
5330
5331 2011-10-20 15:21:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5332
5333         * omx/gstomxvideodec.c:
5334           omxvideodec: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock
5335
5336 2011-10-20 15:20:47 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5337
5338         * omx/gstomxvideoenc.c:
5339           omxvideoenc: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock
5340
5341 2011-10-20 14:30:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5342
5343         * omx/gstomxvideodec.c:
5344           omxvideodec: Move locking at the correct place
5345
5346 2011-10-14 10:27:47 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5347
5348         * omx/gstomx.c:
5349         * omx/gstomx.h:
5350           omx: Remove QCOM hack to reset nOffset in EmptyBufferDone
5351           This is now done in a generic way that does not require any
5352           hacks because it will work without any side effects on any
5353           OMX implementation.
5354
5355 2011-10-14 10:26:00 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5356
5357         * omx/gstomx.c:
5358           omx: Reset nOffset to 0 in EmptyBufferDone if nFilledLen is 0
5359           Some OMX implementations don't reset nOffset when the complete
5360           buffer is emptied but instead only reset nFilledLen. We reset
5361           nOffset to 0 if nFilledLen == 0, which is safe to do because
5362           the offset *must* be 0 if the buffer is not filled at all.
5363           Seen in QCOM's OMX implementation.
5364
5365 2011-10-04 10:56:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5366
5367         * omx/gstomxvideoenc.c:
5368           omxvideoenc: If one parameter/configuration is not supported don't skip the next
5369
5370 2011-10-03 09:12:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5371
5372         * omx/gstomxh264dec.c:
5373           omxh264dec: Require stream-format=byte-stream
5374           Other stream-formats are unlikely to be supported by OMX components.
5375
5376 2011-09-29 10:37:32 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5377
5378         * omx/gstomxvideodec.c:
5379         * omx/gstomxvideodec.h:
5380           omxvideodec: Add API for subclasses to prepare/convert frames
5381
5382 2011-09-27 15:08:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5383
5384         * omx/gstomxaudioenc.c:
5385           omxaudioenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers
5386           Allocating buffers before the Idle state is reached can lead to crashes.
5387
5388 2011-09-27 15:08:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5389
5390         * omx/gstomxvideoenc.c:
5391           omxvideoenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers
5392           Allocating buffers before the Idle state is reached can lead to crashes.
5393
5394 2011-09-27 15:05:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5395
5396         * omx/gstomxvideodec.c:
5397           omxvideodec: Switch to Idle first and wait before switching to Loaded and deallocating buffers
5398           Allocating buffers before the Idle state is reached can lead to crashes.
5399
5400 2011-09-27 14:15:06 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5401
5402         * omx/gstomx.c:
5403         * omx/gstomx.h:
5404         * omx/gstomxvideodec.c:
5405           omxvideodec: New hack for QCOM to recreate the component instead of reconfiguring it on caps changes
5406
5407 2011-09-27 12:13:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5408
5409         * omx/gstomx.c:
5410           omx: Change a g_assert() into a GST_WARNING_OBJECT()
5411
5412 2011-09-26 13:04:18 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5413
5414         * omx/gstomx.c:
5415         * omx/gstomx.h:
5416           omx: Add hack for Qualcomm's OMX implementation to manually reset nOffset in EmptyBufferDone
5417
5418 2011-09-23 17:02:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5419
5420         * omx/gstomxaudioenc.c:
5421           omxaudioenc: Add a check to prevent a zero-sized OMX buffer
5422
5423 2011-09-23 17:02:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5424
5425         * omx/gstomxvideoenc.c:
5426           omxvideoenc: Add some more checks for correct OMX buffer sizes
5427
5428 2011-09-23 15:53:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5429
5430         * omx/gstomxvideodec.c:
5431           omxvideodec: Add some more checks for OMX buffer sizes
5432
5433 2011-09-14 10:15:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5434
5435         * omx/gstomx.c:
5436         * omx/gstomx.h:
5437         * omx/gstomxaudioenc.c:
5438         * omx/gstomxvideodec.c:
5439         * omx/gstomxvideoenc.c:
5440           omx: Wait until the Executing state is reached before calling OMX_FillThisBuffer()
5441           This correctly works around the QCOM race condition that happens when calling
5442           FTB after setting the new state and before reaching it.
5443
5444 2011-09-02 14:43:43 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5445
5446         * omx/gstomxvideodec.c:
5447           omxvideodec: Negotiate video format with downstream and what the component claims to support
5448
5449 2011-08-25 19:56:58 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
5450
5451         * omx/gstbasevideoencoder.c:
5452           basevideoencoder: fix element leak
5453           and this concludes an hour of yelling at the bloody test failing,
5454           only to track down the problem not being in the test.
5455           https://bugzilla.gnome.org/show_bug.cgi?id=657368
5456
5457 2011-08-19 09:20:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5458
5459         * omx/gstomxvideoenc.c:
5460           omxvideoenc: Release basevideocodec stream lock while waiting for a buffer
5461           This prevents deadlocks if no empty input buffers are available and
5462           releasing input buffers requires the loop function to handle some
5463           output buffers first.
5464
5465 2011-08-19 09:19:22 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5466
5467         * omx/gstomxvideodec.c:
5468           omxvideodec: Release basevideocodec stream lock while waiting for a buffer
5469           This prevents deadlocks if no empty input buffers are available and
5470           releasing input buffers requires the loop function to handle some
5471           output buffers first.
5472
5473 2011-08-18 10:24:26 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5474
5475         * omx/gstbasevideodecoder.c:
5476           basevideodecoder: Fix deadlock
5477
5478 2011-08-18 10:03:20 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5479
5480         * omx/gstbaseaudiodecoder.c:
5481           baseaudiodecoder: Don't take the stream lock in the seek handler
5482           This will lead to deadlocks
5483
5484 2011-08-18 10:02:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5485
5486         * omx/gstbasevideocodec.c:
5487         * omx/gstbasevideocodec.h:
5488         * omx/gstbasevideodecoder.c:
5489         * omx/gstbasevideoencoder.c:
5490           basevideo: Fix locking, especially if both pads have different streaming threads
5491
5492 2011-08-18 09:42:02 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5493
5494         * omx/gstbasevideodecoder.c:
5495         * omx/gstbasevideoencoder.c:
5496           basevideo: Don't call g_type_class_peek_parent() in class_init
5497           This is already done by the GObject boilerplate macro
5498
5499 2011-08-18 09:40:46 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5500
5501         * omx/gstbaseaudiodecoder.c:
5502           baseaudiodecoder: Don't call g_type_class_peek_parent() in class_init
5503           This is already done by the boilerplate macro
5504
5505 2011-08-18 09:34:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5506
5507         * omx/gstbaseaudiodecoder.c:
5508         * omx/gstbaseaudiodecoder.h:
5509           baseaudiodecoder: Fix thread safety issues if both pads have different streaming threads
5510
5511 2011-08-18 09:17:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5512
5513         * omx/gstbaseaudiodecoder.c:
5514           baseaudiodecoder: Delay sending of serialized events to finish_frame()
5515
5516 2011-08-17 14:33:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5517
5518         * omx/gstomxaudioenc.c:
5519           omxaudioenc: Always require at least OMX_MIN_PCMPAYLOAD_MSEC per input buffer
5520
5521 2011-08-17 14:28:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5522
5523         * omx/gstbaseaudioencoder.c:
5524         * omx/gstbaseaudioencoder.h:
5525           baseaudioencoder: Add support for requesting a minimum and maximum number of samples per frame
5526           This extends the special case of a fixed number of samples per frame
5527           that was supported before already.
5528
5529 2011-08-17 14:17:18 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5530
5531         * omx/gstomxaudioenc.c:
5532           omxaudioenc: Handle inbuf==NULL properly in ::handle_frame()
5533
5534 2011-08-17 13:04:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5535
5536         * omx/gstomxaacenc.c:
5537           omxaacenc: Implement ::get_num_samples() vfunc
5538
5539 2011-08-17 13:03:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5540
5541         * omx/gstomxaudioenc.c:
5542         * omx/gstomxaudioenc.h:
5543           omxaudioenc: Add vfunc to get the number of samples inside a buffer
5544
5545 2011-08-17 11:34:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5546
5547         * omx/gstomxaudioenc.c:
5548           omxaudioenc: Release baseaudioencoder stream lock while waiting for a buffer in ::handle_frame()
5549           This prevents deadlocks if no empty input buffers are available and
5550           releasing input buffers requires the loop function to handle some
5551           output buffers first.
5552
5553 2011-08-17 11:34:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5554
5555         * omx/gstbaseaudioencoder.c:
5556         * omx/gstbaseaudioencoder.h:
5557           baseaudioencoder: Fix thread safety issues if both pads have different streaming threads
5558
5559 2011-08-17 09:58:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5560
5561         * omx/gstbaseaudioencoder.c:
5562           baseaudioencoder: Taking the OBJECT lock in reset() is not needed
5563
5564 2011-08-16 11:03:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5565
5566         * omx/gstomxaudioenc.c:
5567           omxaudioenc: Remove hack that only applies to the video encoder class
5568
5569 2011-08-16 10:49:21 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5570
5571         * omx/Makefile.am:
5572         * omx/gstomx.c:
5573         * omx/gstomx.conf:
5574         * omx/gstomxaacenc.c:
5575         * omx/gstomxaacenc.h:
5576           omxaacenc: Add initial version of OpenMAX AAC encoder element
5577
5578 2011-08-15 15:10:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5579
5580         * omx/Makefile.am:
5581         * omx/gstomxaudioenc.c:
5582         * omx/gstomxaudioenc.h:
5583           omxaudioenc: Add initial version of audio encoder base class
5584
5585 2011-08-15 14:14:11 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5586
5587         * omx/gstbaseaudioencoder.c:
5588           baseaudioencoder: Delay sending of serialized events to finish_frame()
5589
5590 2011-08-15 13:06:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5591
5592         * omx/Makefile.am:
5593         * omx/gstbaseaudiodecoder.c:
5594         * omx/gstbaseaudiodecoder.h:
5595         * omx/gstbaseaudioencoder.c:
5596         * omx/gstbaseaudioencoder.h:
5597           audio: Integrate audio base classes into the build system and fixup
5598
5599 2011-08-15 12:56:00 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5600
5601         * omx/gstbaseaudiodecoder.c:
5602         * omx/gstbaseaudiodecoder.h:
5603         * omx/gstbaseaudioencoder.c:
5604         * omx/gstbaseaudioencoder.h:
5605         * omx/gstbaseaudioutils.c:
5606         * omx/gstbaseaudioutils.h:
5607           audio: Add audio decoder/encoder base classes
5608           Taken from http://cgit.collabora.com/git/user/manauw/gst-plugins-bad.git/log/?h=baseaudio
5609
5610 2011-08-12 12:25:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5611
5612         * omx/gstbasevideoencoder.c:
5613           basevideoencoder: Proxy the width/height/framerate/PAR constraints of downstream caps to upstream
5614           This allows to specify constraints on the compressed downstream caps
5615           by muxers or capsfilters, which will then be forwarded to upstream
5616           and allows video converters to fulfill the constraints.
5617           Code based on Mark Nauwelaerts audio encoder base class.
5618
5619 2011-08-12 12:13:45 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5620
5621         * omx/gstbasevideoencoder.h:
5622           basevideoencoder: Remove old ::getcaps() comment
5623
5624 2011-08-12 12:06:23 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5625
5626         * omx/gstbasevideoencoder.c:
5627         * omx/gstbasevideoencoder.h:
5628           basevideoencoder: Remove ::get_caps() vfunc
5629           Subclasses can set the caps more efficiently and this only
5630           caused additional indirections.
5631
5632 2011-08-10 10:24:21 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5633
5634         * omx/gstomxh263enc.c:
5635         * omx/gstomxh264enc.c:
5636         * omx/gstomxmpeg4videoenc.c:
5637         * omx/gstomxvideoenc.c:
5638           omxvideoenc: Use "video/x-raw-yuv" as sink template caps instead of strict I420 caps
5639
5640 2011-08-10 10:23:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5641
5642         * omx/gstomxmpeg4videodec.c:
5643           omxmpeg4videodec: Don't require width/height on sink pad caps
5644
5645 2011-08-10 10:11:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5646
5647         * omx/gstomxh263dec.c:
5648         * omx/gstomxh264dec.c:
5649         * omx/gstomxmpeg4videodec.c:
5650         * omx/gstomxvideodec.c:
5651         * omx/gstomxwmvdec.c:
5652           omxvideodec: Use "video/x-raw-yuv" as src template caps instead of strict I420 caps
5653
5654 2011-08-10 09:56:30 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5655
5656         * omx/gstomxvideoenc.c:
5657           omxvideoenc: Set the state back to StateLoaded even if an error happened
5658
5659 2011-08-10 09:49:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5660
5661         * omx/gstomx.c:
5662           omx: Don't hold any locks while calling OMX_SendCommand()
5663           It might call into one of the callbacks and lead to deadlocks, e.g.
5664           with the Qualcomm OMX implementation.
5665
5666 2011-08-10 09:32:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5667
5668         * omx/gstomx.c:
5669           omx: Move some code
5670
5671 2011-08-10 09:23:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5672
5673         * omx/gstomx.c:
5674           omx: Reset pending reconfigure output ports when changing the state from Executing to any lower state
5675
5676 2011-08-10 09:08:00 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5677
5678         * omx/gstomx.c:
5679           omx: Fix crash when setting last error after the ports were freed
5680
5681 2011-08-10 09:03:52 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5682
5683         * omx/gstomx.c:
5684           omx: Free component structure
5685
5686 2011-08-10 09:02:52 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5687
5688         * omx/gstomx.c:
5689           omx: Make component destruction safer
5690
5691 2011-08-10 08:53:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5692
5693         * omx/gstomx.c:
5694           omx: Set pAppPrivate of buffers to NULL when deallocating buffers
5695           This prevents usage of freed memory later if the OMX component
5696           has weird behaviour.
5697
5698 2011-08-10 08:52:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5699
5700         * omx/gstomxvideodec.c:
5701           omxvideodec: Set the state back to StateLoaded even if an error happened
5702
5703 2011-08-10 08:51:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5704
5705         * omx/gstomx.c:
5706           omx: Add some assertions to check if the buffer pAppPrivate is still correct
5707
5708 2011-08-08 13:04:30 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5709
5710         * omx/gstomx.h:
5711           omx: Add parenthesis at correct places in the struct init macro
5712
5713 2011-08-08 12:12:58 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5714
5715         * omx/gstomx.c:
5716           omx: Only prevent setting a higher state if the component is in an error state
5717
5718 2011-08-03 16:02:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5719
5720         * omx/gstbasevideodecoder.c:
5721           basevideodecoder: Use the cached video frame size instead of recalculating it
5722
5723 2011-08-03 15:35:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5724
5725         * omx/gstomx.c:
5726           omx: Improve debugging in param/config getter/setter wrappers
5727
5728 2011-08-03 13:10:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5729
5730         * omx/gstomxvideodec.c:
5731           omxvideodec: Don't abort if the color format is not supported but give a useful error message
5732
5733 2011-08-02 15:14:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5734
5735         * omx/gstomxh263enc.c:
5736         * omx/gstomxh264enc.c:
5737         * omx/gstomxmpeg4videoenc.c:
5738         * omx/gstomxvideoenc.c:
5739           omxvideoenc: Don't fail if setting the bitrate or profile is not supported by the component
5740           Also always set/get the profile, even if there are no peer caps.
5741
5742 2011-08-02 15:14:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5743
5744         * omx/gstbasevideoencoder.c:
5745           basevideoencoder: Make access to the list of frames threadsafe
5746
5747 2011-08-01 13:22:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5748
5749         * omx/gstomx.c:
5750         * omx/gstomx.h:
5751           omx: Add a hacks flag for the Qualcomm 7x30 OMX_FillThisBuffer() race and make it optional
5752
5753 2011-07-29 13:56:59 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5754
5755         * omx/gstomx.c:
5756           omx: Add workaround for QCOM 7x30 race condition
5757
5758 2011-07-29 12:06:21 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5759
5760         * omx/Makefile.am:
5761         * omx/gstomx.c:
5762         * omx/gstomxh263enc.c:
5763         * omx/gstomxh263enc.h:
5764           omxh263enc: Add H.263 encoder element
5765
5766 2011-07-29 11:26:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5767
5768         * omx/gstomxmpeg4videoenc.c:
5769           omxmpeg4videoenc: Add support for setting profile/level via caps
5770
5771 2011-07-28 14:14:45 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5772
5773         * omx/gstomxh264enc.c:
5774           omxh264enc: Add support for setting profile/level via caps
5775
5776 2011-07-28 12:58:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5777
5778         * omx/gstomxvideoenc.c:
5779           omxvideoenc: Add support for forcing the next frame to be a keyframe
5780
5781 2011-07-28 11:54:16 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5782
5783         * omx/gstomxvideoenc.c:
5784         * omx/gstomxvideoenc.h:
5785           omxvideoenc: Add support for setting bitrate/quantization related parameters
5786
5787 2011-07-28 10:23:08 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5788
5789         * omx/gstomx.c:
5790         * omx/gstomx.h:
5791           omx: Add wrapper functions for OMX_[GS]et{Config,Parameter}
5792
5793 2011-07-28 09:54:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5794
5795         * omx/gstomx.c:
5796         * omx/gstomx.h:
5797           omx: Add macro to initialize OpenMAX structures
5798
5799 2011-07-28 09:08:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5800
5801         * omx/gstomxvideoenc.c:
5802           omxvideoenc: Don't output 0-byte buffers
5803
5804 2011-07-25 15:05:08 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5805
5806         * omx/gstomx.c:
5807           omx: Ensure that the pAppPrivate pointer in OMX buffers is set correctly
5808
5809 2011-07-25 13:19:06 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5810
5811         * omx/gstomxvideodec.c:
5812         * omx/gstomxvideoenc.c:
5813           omxvideo{enc,dec}: Only set/unset flushing state on ports if they were created already
5814
5815 2011-07-25 12:01:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5816
5817         * omx/Makefile.am:
5818         * omx/gstomx.c:
5819         * omx/gstomxwmvdec.c:
5820         * omx/gstomxwmvdec.h:
5821           omxwmvdec: Add WMV video decoder element
5822
5823 2011-07-25 11:44:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5824
5825         * omx/Makefile.am:
5826         * omx/gstomx.c:
5827         * omx/gstomxh263dec.c:
5828         * omx/gstomxh263dec.h:
5829           omxh263dec: Add H.263 decoder element
5830
5831 2011-07-25 11:32:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5832
5833         * omx/Makefile.am:
5834         * omx/gstomx.c:
5835         * omx/gstomxh264enc.c:
5836         * omx/gstomxh264enc.h:
5837           omxh264enc: Add H.264 encoder element
5838
5839 2011-07-25 10:48:58 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5840
5841         * omx/gstomxvideodec.c:
5842           omxvideodec: Try harder to deallocate the buffers after errors happened
5843
5844 2011-07-25 10:47:28 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5845
5846         * omx/gstomxvideoenc.c:
5847           omxvideoenc: Try harder to deallocate the buffers after errors happened
5848
5849 2011-07-25 10:46:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5850
5851         * omx/gstomx.c:
5852           omx: Deallocate port buffers before freeing the component
5853           They should be deallocated by the caller before reaching the
5854           Loaded state but to be on the safe side we will make sure
5855           they're really deallocated here.
5856
5857 2011-07-21 11:15:14 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5858
5859         * omx/gstomxvideoenc.c:
5860           omxvideoenc: Add initial support for stride conversion
5861
5862 2011-07-21 10:38:26 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5863
5864         * omx/gstomxh264dec.c:
5865         * omx/gstomxmpeg4videodec.c:
5866         * omx/gstomxmpeg4videoenc.c:
5867           omx: Set default roles for the components if none were set from the config file
5868
5869 2011-07-21 10:36:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5870
5871         * omx/gstomx.c:
5872           omx: Failure to set the component role is fatal
5873
5874 2011-07-21 07:53:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5875
5876         * omx/gstomxvideoenc.c:
5877           omxvideoenc: Add support for setting codec_data on the srcpad caps
5878
5879 2011-07-21 07:44:34 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5880
5881         * omx/gstomxvideoenc.c:
5882           omxvideoenc: Free/drop GstVideoFrames that resulted in an empty buffer
5883
5884 2011-07-21 07:44:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5885
5886         * omx/gstbasevideoencoder.c:
5887           basevideoencoder: Allow finishing of frames with no src_buffer to drop/free the GstVideoFrame
5888
5889 2011-07-21 07:31:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5890
5891         * omx/gstomxvideoenc.c:
5892           omxvideoenc: Remove obsolete TODO comment
5893
5894 2011-07-20 11:09:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5895
5896         * omx/Makefile.am:
5897         * omx/gstomx.c:
5898           omx: Use libgstopenmax.so for the plugin filename and openmax for the plugin name
5899           Resolves conflicts with gst-openmax.
5900
5901 2011-07-20 08:34:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5902
5903         * omx/Makefile.am:
5904         * omx/gstomx.c:
5905         * omx/gstomx.conf:
5906         * omx/gstomx.h:
5907         * omx/gstomxmpeg4videoenc.c:
5908         * omx/gstomxmpeg4videoenc.h:
5909         * omx/gstomxvideoenc.c:
5910         * omx/gstomxvideoenc.h:
5911           omxvideoenc: Add video encoder base class and MPEG4 video encoder
5912           Unfortunately requires lots of hacks again to work properly with
5913           Bellagio.
5914
5915 2011-07-20 10:39:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5916
5917         * omx/gstbasevideoencoder.c:
5918           basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass
5919
5920 2011-07-20 09:25:28 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5921
5922         * omx/gstbasevideoencoder.c:
5923         * omx/gstbasevideoencoder.h:
5924           basevideoencoder: Delay sending of serialized sink events until finish_frame()
5925
5926 2011-07-20 09:09:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5927
5928         * omx/gstbasevideoencoder.c:
5929         * omx/gstbasevideoencoder.h:
5930           basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder
5931
5932 2011-07-19 12:50:43 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5933
5934         * omx/gstbasevideoencoder.c:
5935           basevideoencoder: Use a temporary GstVideoState until the subclass accepted the caps
5936           Also store the caps in the GstVideoState and assume a PAR of 1/1 instead
5937           of 0/1 if no PAR is specified in the caps.
5938
5939 2011-07-19 12:29:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5940
5941         * omx/gstomx.c:
5942         * omx/gstomxvideodec.c:
5943           omx: Improve debug output a bit
5944
5945 2011-07-19 10:33:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5946
5947         * omx/gstomx.c:
5948         * omx/gstomx.h:
5949         * omx/gstomxvideodec.c:
5950           omx: Rework port reconfiguration again and only use the Bellagio specific hacks with Bellagio
5951           We only reconfigure ports that need to be reconfigured now instead of
5952           always all ports.
5953
5954 2011-07-19 10:33:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5955
5956         * omx/gstomx.c:
5957         * omx/gstomx.conf:
5958         * omx/gstomx.h:
5959         * omx/gstomxvideodec.c:
5960         * omx/gstomxvideodec.h:
5961           omx: Add infrastructure to enable special hacks for broken OpenMAX implementations
5962
5963 2011-07-18 13:10:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5964
5965         * omx/gstomx.c:
5966           omx: When acquiring a buffer from an input port always wait until all output ports are reconfigured
5967
5968 2011-07-18 08:41:20 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5969
5970         * omx/gstomxvideodec.c:
5971           omxvideodec: Add support for converting between omx and gst rowstrides
5972
5973 2011-07-14 10:34:09 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5974
5975         * omx/gstomx.c:
5976           omx: Provide all buffers to output ports after enabling them
5977
5978 2011-07-14 08:29:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5979
5980         * omx/gstomxvideodec.c:
5981           omxvideodec: Add support for NV12 / OMX_COLOR_FormatYUV420SemiPlanar
5982
5983 2011-07-14 07:58:41 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5984
5985         * omx/gstomxvideodec.c:
5986         * omx/gstomxvideodec.h:
5987           omxvideodec: Only flush the component ports after we passed input to them
5988
5989 2011-07-13 21:19:34 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5990
5991         * omx/gstomxvideodec.c:
5992           omxvideodec: Only change states downwards if an upper state was reached
5993
5994 2011-07-13 20:37:02 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5995
5996         * omx/gstomx.c:
5997         * omx/gstomx.h:
5998         * omx/gstomxvideodec.c:
5999         * omx/gstomxvideodec.h:
6000           omx: Add support for setting the component-role
6001
6002 2011-07-13 20:22:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6003
6004         * omx/gstomx.c:
6005         * omx/gstomx.h:
6006         * omx/gstomxvideodec.c:
6007           omx: Improve error reporting by formatting the error codes better and also providing their string representation
6008
6009 2011-07-13 14:36:14 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6010
6011         * Makefile.am:
6012           build: Dist autogen.sh
6013
6014 2011-07-13 14:35:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6015
6016         * configure.ac:
6017         * omx/gstomx.c:
6018           build: Only require GStreamer >= 0.10.29 and GLib >= 2.16
6019
6020 2011-07-13 14:04:47 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6021
6022         * omx/Makefile.am:
6023           build: Dist gstomx.conf
6024
6025 2011-07-13 14:04:20 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6026
6027         * Makefile.am:
6028           build: Clean _stdint.h on "make distclean"
6029
6030 2011-07-13 14:02:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6031
6032         * omx/gstomxvideodec.c:
6033           omxvideodec: Fix typo
6034
6035 2011-07-13 13:59:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6036
6037         * omx/Makefile.am:
6038           omx: Dist gstomx.h
6039
6040 2011-07-13 12:46:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6041
6042         * omx/gstomxvideodec.c:
6043           omxvideodec: Set SYNCFRAME flag on the OMX buffers for non-delta units
6044
6045 2011-07-13 12:37:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6046
6047         * omx/gstomxvideodec.c:
6048           omxvideodec: Free all pending frames when resetting the decoder
6049           Workaround for https://bugzilla.gnome.org/show_bug.cgi?id=654529
6050
6051 2011-07-13 09:59:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6052
6053         * omx/gstomxvideodec.c:
6054           omxvideodec: Handle output buffers without a corresponding GstVideoFrame more gracefully
6055           This can happen on EOS in some cases and when the input is not
6056           properly framed.
6057
6058 2011-07-13 09:31:22 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6059
6060         * omx/gstomxvideodec.c:
6061           omxvideodec: Fix deadlock when finishing old frames that are left over by the decoder
6062
6063 2011-07-12 11:37:28 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6064
6065         * omx/gstomxh264dec.c:
6066           omxh264dec: It's called H.264, not H264
6067
6068 2011-07-12 11:36:42 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6069
6070         * omx/gstomxh264dec.c:
6071         * omx/gstomxmpeg4videodec.c:
6072         * omx/gstomxvideodec.c:
6073         * omx/gstomxvideodec.h:
6074           omxvideodec: Make sink/src pad template caps configurable
6075
6076 2011-07-12 11:13:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6077
6078         * omx/gstomx.c:
6079           omx: Allow to set a preferred configuration directory with the GST_OMX_CONFIG_DIR environment variable
6080
6081 2011-07-12 10:55:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6082
6083         * omx/gstomxh264dec.c:
6084         * omx/gstomxmpeg4videodec.c:
6085         * omx/gstomxvideodec.c:
6086           omxvideodec: Make core/component-name and in/outport index configurable
6087
6088 2011-07-12 10:05:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6089
6090         * omx/gstomx.c:
6091         * omx/gstomx.conf:
6092         * omx/gstomx.h:
6093           omx: Add initial version of configuration system
6094           This now only registers elements that are specified in the
6095           configuration file.
6096           The configuration file is a keyfile in the first XDG configuration
6097           directory with the name gstomx.conf.
6098
6099 2011-07-12 08:53:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6100
6101         * omx/Makefile.am:
6102         * omx/gstomx.c:
6103         * omx/gstomxh264dec.c:
6104         * omx/gstomxh264dec.h:
6105         * omx/gstomxh264videodec.h:
6106           omxh264dec: Rename from omxh264videodec to omxh264dec
6107
6108 2011-07-12 08:40:48 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6109
6110         * omx/gstomxh264videodec.c:
6111           omxh264videodec: Require alignment=au and stream-format={avc,bytestream}
6112
6113 2011-07-11 12:59:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6114
6115         * omx/gstbasevideodecoder.c:
6116           basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state
6117           The subclass might want to access the old state.
6118
6119 2011-07-11 12:36:42 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6120
6121         * omx/gstbasevideodecoder.c:
6122           basevideodecoder: Track present position on discont before resetting it
6123
6124 2011-07-11 11:52:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6125
6126         * omx/gstbasevideodecoder.c:
6127           basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events
6128
6129 2011-07-11 11:28:40 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6130
6131         * omx/gstbasevideocodec.c:
6132         * omx/gstbasevideocodec.h:
6133         * omx/gstbasevideodecoder.c:
6134           basevideocodec: Protect access to the list of pending frames with the object lock
6135           This is required if ::finish_frame() and all buffer output happens
6136           on a different thread than the sinkpad streaming thread.
6137
6138 2011-07-11 09:35:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6139
6140         * omx/gstbasevideodecoder.c:
6141           basevideodecoder: Set the correct lists to NULL after freeing
6142
6143 2011-07-11 08:54:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6144
6145         * omx/gstbasevideodecoder.c:
6146           basevideodecoder: Work with a copy of the GstVideoState in setcaps until the caps are accepted
6147           Also fix a refcount problem with the codec_data.
6148
6149 2011-07-12 08:34:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6150
6151         * omx/Makefile.am:
6152         * omx/gstomx.c:
6153         * omx/gstomxh264videodec.c:
6154         * omx/gstomxh264videodec.h:
6155           omxh264videodec: Add h.264 video decoder
6156
6157 2011-07-12 08:29:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6158
6159         * omx/gstomxmpeg4videodec.c:
6160           omxmpeg4videodec: Fix debug category name
6161
6162 2011-07-09 11:41:42 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6163
6164         * omx/Makefile.am:
6165         * omx/gstbasevideocodec.h:
6166         * omx/gstbasevideodecoder.c:
6167         * omx/gstbasevideoencoder.c:
6168         * omx/gstbasevideoutils.c:
6169         * omx/gstbasevideoutils.h:
6170           basevideo: Move the utils from the codec header to its own header
6171
6172 2011-07-09 11:32:06 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6173
6174         * omx/gstbasevideocodec.c:
6175         * omx/gstbasevideodecoder.c:
6176           basevideo: Use GSlice for allocating GstVideoFrame and don't duplicate code in the decoder base class
6177
6178 2011-07-09 11:05:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6179
6180         * omx/gstomxvideodec.c:
6181           omxvideodec: Use the destroy notify to free the coder_hook
6182
6183 2011-07-09 10:57:52 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6184
6185         * omx/gstbasevideocodec.c:
6186         * omx/gstbasevideocodec.h:
6187         * omx/gstbasevideodecoder.c:
6188           basevideo: Add destroy notify for the coder_hook to prevent memory leaks
6189           Fixes bug #654293.
6190
6191 2011-07-09 10:44:16 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6192
6193         * omx/Makefile.am:
6194           basevideo: Fix GType names to not conflict with the public video base classes
6195           It's still not possible to include headers of both in the same file
6196           or compile/link both into the same plugin but that shouldn't be
6197           necessary anyway.
6198
6199 2011-07-08 15:42:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6200
6201         * omx/gstomxvideodec.c:
6202           omxvideodec: Fix some minor memory leaks
6203
6204 2011-07-08 15:25:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6205
6206         * omx/gstomx.c:
6207         * omx/gstomx.h:
6208         * omx/gstomxvideodec.c:
6209           omx: Rework port reconfiguration
6210           We always reconfigure all ports now if the settings of one
6211           port changes to prevent lots of race conditions, dropped
6212           frames and similar issues.
6213
6214 2011-07-08 13:16:45 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6215
6216         * omx/gstomxvideodec.c:
6217         * omx/gstomxvideodec.h:
6218           omxvideodec: Use the frames storage of the base class instead of implementing our own
6219           They could get out of sync and we could store already destroyed frames.
6220
6221 2011-07-07 12:51:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6222
6223         * omx/gstomx.h:
6224           omx: Clarify GQueue/GPtrArray element types
6225
6226 2011-07-07 12:23:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6227
6228         * omx/gstomx.c:
6229         * omx/gstomx.h:
6230         * omx/gstomxvideodec.c:
6231           omx: Add more checks to acquire_buffer() and return the current state additional to the buffer
6232           Also refactor the code flow in the video decoder for this. This makes
6233           the usage of acquire_buffer() easier and more atomic.
6234
6235 2011-07-07 12:22:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6236
6237         * omx/gstomxvideodec.c:
6238           omxvideodec: Also flush/unflush the input port when changing the state PAUSED<->READY
6239
6240 2011-07-07 12:21:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6241
6242         * omx/gstomx.c:
6243           omx: Don't broadcast port->port_cond after allocating buffers successfully
6244           Allocating buffers must happen while no thread is waiting for the
6245           cond and especially must happen from the thread that would acquire
6246           buffers from the port.
6247
6248 2011-07-07 11:27:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6249
6250         * omx/gstomxvideodec.c:
6251           omxvideodec: Don't leak the codec_data after sending it
6252
6253 2011-07-07 10:27:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6254
6255         * omx/gstomx.c:
6256           omx: Always check if the component is in an error state before waiting for a condition variable to be signalled
6257           Otherwise we might wait forever because nothing is going to signal
6258           the condition variable anymore.
6259
6260 2011-07-07 10:22:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6261
6262         * omx/gstomx.c:
6263           omx: Always hold port->port_lock before signalling port->port_cond when notifying about errors
6264           Otherwise a port might be in the critical section, has checked the error state
6265           already but waits after port->port_cond is signalled, which will lead
6266           to a deadlock.
6267
6268 2011-07-07 10:07:43 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6269
6270         * omx/gstomxvideodec.c:
6271           omxvideodec: Remove reconfiguration test hack
6272
6273 2011-07-06 13:27:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6274
6275         * omx/gstomx.c:
6276           omx: Improve debug output a bit
6277
6278 2011-07-06 13:26:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6279
6280         * omx/gstomx.c:
6281           omx: Always try to deallocate buffers, even if there's a component error
6282
6283 2011-07-06 13:26:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6284
6285         * omx/gstomx.c:
6286           omx: Use G_USEC_PER_SEC for clarity instead of 1000000
6287
6288 2011-07-06 13:19:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6289
6290         * omx/gstomxvideodec.c:
6291           omxvideodec: Error out if the GStreamer allocated buffer is smaller than the OpenMAX output buffer
6292           Usually this must never happen but currently it happens during reconfigurations
6293           because of a race condition. Still it's better than crashing.
6294
6295 2011-07-06 10:40:13 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6296
6297         * omx/gstomx.c:
6298         * omx/gstomx.h:
6299           omx: Don't use port_def.bEnabled to check if the Enable/Disable command is finished
6300           bEnabled should be set immediately after sending the command, it's only
6301           Bellagio that waits until the command is finished before setting it.
6302
6303 2011-07-06 10:30:11 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6304
6305         * omx/gstomxvideodec.c:
6306           omxvideodec: Remove obsolete FIXME comment
6307
6308 2011-07-06 10:29:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6309
6310         * omx/gstomx.c:
6311         * omx/gstomx.h:
6312           omx: Improve error handling and reporting
6313
6314 2011-07-06 08:48:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6315
6316         * omx/gstomxmpeg4videodec.c:
6317         * omx/gstomxvideodec.c:
6318         * omx/gstomxvideodec.h:
6319           omxvideodec: Make the inport and outport index configurable by the subclass
6320
6321 2011-06-28 08:51:23 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6322
6323         * omx/Makefile.am:
6324         * omx/gstomx.c:
6325         * omx/gstomx.h:
6326         * omx/gstomxmpeg4videodec.c:
6327         * omx/gstomxmpeg4videodec.h:
6328         * omx/gstomxvideodec.c:
6329         * omx/gstomxvideodec.h:
6330           omx: Add initial version of OpenMAX framework, video decoder base class and MPEG4 video decoder
6331           This currently hardcodes a lot of stuff but works at least.
6332           Also adds a generic framework for handling OpenMAX cores, components
6333           and ports.
6334
6335 2011-06-28 11:47:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6336
6337         * omx/gstbasevideocodec.c:
6338         * omx/gstbasevideocodec.h:
6339         * omx/gstbasevideodecoder.c:
6340         * omx/gstbasevideodecoder.h:
6341           basevideodecoder: Don't reorder serialized src events
6342           And allow to drop EOS by the subclass if ::finish returns
6343           DROPPED.
6344           Fixes bug #653544.
6345
6346 2011-06-27 09:41:40 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6347
6348         * omx/gstbasevideocodec.c:
6349         * omx/gstbasevideocodec.h:
6350         * omx/gstbasevideodecoder.c:
6351           basevideo: Add the caps to the GstVideoState and clean up caps/codec_data properly
6352
6353 2011-06-27 09:37:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6354
6355         * omx/gstbasevideocodec.c:
6356         * omx/gstbasevideocodec.h:
6357         * omx/gstbasevideodecoder.c:
6358         * omx/gstbasevideodecoder.h:
6359         * omx/gstbasevideoencoder.c:
6360         * omx/gstbasevideoencoder.h:
6361         * omx/gstbasevideoutils.c:
6362           basevideo: Add video encoder/decoder base classes from gst-plugins-bad
6363
6364 2011-06-21 11:17:35 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
6365
6366         * omx/openmax/OMX_Audio.h:
6367         * omx/openmax/OMX_Component.h:
6368         * omx/openmax/OMX_ComponentExt.h:
6369         * omx/openmax/OMX_ContentPipe.h:
6370         * omx/openmax/OMX_Core.h:
6371         * omx/openmax/OMX_CoreExt.h:
6372         * omx/openmax/OMX_IVCommon.h:
6373         * omx/openmax/OMX_Image.h:
6374         * omx/openmax/OMX_Index.h:
6375         * omx/openmax/OMX_IndexExt.h:
6376         * omx/openmax/OMX_Other.h:
6377         * omx/openmax/OMX_Types.h:
6378         * omx/openmax/OMX_Video.h:
6379         * omx/openmax/OMX_VideoExt.h:
6380           openmax: Add OpenMAX IL 1.1.2 headers
6381