Release 1.11.91
[platform/upstream/gstreamer.git] / ChangeLog
1 === release 1.11.91 ===
2
3 2017-04-27  Sebastian Dröge <slomo@coaxion.net>
4
5         * configure.ac:
6           releasing 1.11.91
7
8 2017-04-17 17:02:48 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
9
10         * omx/gstomxvideoenc.c:
11           videoenc: use GST_ROUND_UP_N() macro
12           Makes the code much easier to read and understand.
13           https://bugzilla.gnome.org/show_bug.cgi?id=781409
14
15 2017-04-24 20:30:21 +0100  Tim-Philipp Müller <tim@centricular.com>
16
17         * common:
18           Automatic update of common submodule
19           From 60aeef6 to 48a5d85
20
21 2017-04-10 23:51:00 +0100  Tim-Philipp Müller <tim@centricular.com>
22
23         * autogen.sh:
24         * common:
25           Automatic update of common submodule
26           From 39ac2f5 to 60aeef6
27
28 === release 1.11.90 ===
29
30 2017-04-07 16:36:45 +0300  Sebastian Dröge <sebastian@centricular.com>
31
32         * ChangeLog:
33         * NEWS:
34         * RELEASE:
35         * configure.ac:
36         * gst-omx.doap:
37         * meson.build:
38           Release 1.11.90
39
40 2017-04-07 14:27:23 +0300  Sebastian Dröge <sebastian@centricular.com>
41
42         * omx/gstomxvideoenc.c:
43           omxvideoenc: Fix compiler warning
44           gstomxvideoenc.c: In function ‘gst_omx_video_enc_fill_buffer’:
45           CC       libgstomx_la-gstomxaacdec.lo
46           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=]
47           GST_LOG_OBJECT (self, "Matched strides - direct copy %u bytes",
48           ^
49           outbuf->omx_buf->nFilledLen);
50           ~~~~~~~~~~~~~~~~~~
51
52 2017-03-22 17:18:09 +0530  Gurkirpal Singh <gurkirpal204@gmail.com>
53
54         * meson.build:
55           meson: fix logic to set HAVE_THEORA
56           https://bugzilla.gnome.org/show_bug.cgi?id=780392
57
58 2017-03-14 03:02:06 +1100  Jan Schmidt <thaytan@noraisin.net>
59
60         * omx/gstomxvideoenc.c:
61           omxvideoenc: Add an unimplemented mapping for RGBA formats
62           Add some pixel formats mappings for 2 RGBA formats. Not yet
63           implemented in the buffer input code though, so no effect for now.
64
65 2017-03-14 03:00:49 +1100  Jan Schmidt <thaytan@noraisin.net>
66
67         * omx/gstomx.c:
68         * omx/gstomx.h:
69         * omx/gstomxvideoenc.c:
70           omxvideoenc: Add GST_OMX_HACK_HEIGHT_MULTIPLE_16 for Rpi
71           The Raspberry Pi encoder produces corrupt output unless
72           the input height is a multiple of 16. Add a hack that adds
73           zero padding when needed.
74
75 2017-03-14 02:42:15 +1100  Jan Schmidt <thaytan@noraisin.net>
76
77         * omx/gstomxvideoenc.c:
78           omxvideoenc: Add a mapping for OMX_COLOR_FormatYUV420PackedSemiPlanar
79           The RaspberryPi
80
81 2017-03-14 02:40:24 +1100  Jan Schmidt <thaytan@noraisin.net>
82
83         * omx/gstomxvideoenc.c:
84           omxvideoenc: Filter out unimplemented formats
85           Don't announce pixel formats in the caps if they've not been
86           implemented.
87
88 2017-03-14 02:34:36 +1100  Jan Schmidt <thaytan@noraisin.net>
89
90         * omx/gstomxvideodec.c:
91           omxvideodec: demote ERROR message
92           There's no need to warn about failing to negotiate EGL output
93           - that can be perfectly normal.
94
95 2017-02-24 16:00:29 +0200  Sebastian Dröge <sebastian@centricular.com>
96
97         * meson.build:
98           meson: Update version
99
100 2017-02-24 15:38:17 +0200  Sebastian Dröge <sebastian@centricular.com>
101
102         * configure.ac:
103           Back to development
104
105 === release 1.11.2 ===
106
107 2017-02-24 15:10:17 +0200  Sebastian Dröge <sebastian@centricular.com>
108
109         * ChangeLog:
110         * NEWS:
111         * RELEASE:
112         * configure.ac:
113         * gst-omx.doap:
114           Release 1.11.2
115
116 2017-02-15 18:22:53 +0000  Tim-Philipp Müller <tim@centricular.com>
117
118         * Makefile.am:
119           meson: dist meson build files
120           Ship meson build files in tarballs, so people who use tarballs
121           in their builds can start playing with meson already.
122
123 2017-01-13 16:23:12 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
124
125         * omx/gstomxaacenc.c:
126           omxaacenc: let encoder know about incoming rate/channels
127           https://bugzilla.gnome.org/show_bug.cgi?id=777223
128
129 2017-01-18 02:43:44 +1100  Matthew Waters <matthew@centricular.com>
130
131         * config/bellagio/meson.build:
132         * config/meson.build:
133         * config/rpi/meson.build:
134         * examples/egl/meson.build:
135         * examples/meson.build:
136         * hooks/pre-commit.hook:
137         * meson.build:
138         * meson_options.txt:
139         * omx/meson.build:
140           build: add meson build definition
141           Currently only been tested on the RPi within gst-build.
142
143 2017-01-18 15:21:35 +1100  Matthew Waters <matthew@centricular.com>
144
145         * examples/egl/testegl.c:
146           examples/testegl: update for libgstgl changes
147
148 2017-01-12 16:33:09 +0200  Sebastian Dröge <sebastian@centricular.com>
149
150         * configure.ac:
151           Back to development
152
153 === release 1.11.1 ===
154
155 2017-01-12 16:26:55 +0200  Sebastian Dröge <sebastian@centricular.com>
156
157         * ChangeLog:
158         * NEWS:
159         * RELEASE:
160         * configure.ac:
161         * gst-omx.doap:
162           Release 1.11.1
163
164 2017-01-10 15:29:08 +0000  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
165
166         * omx/gstomxaudioenc.c:
167           omxaudioenc: set base class format instead of just source pad caps
168
169 2016-12-18 19:46:55 +0000  Graham Leggett <minfrin@sharp.fm>
170
171         * omx/gstomxaudiodec.c:
172         * omx/gstomxvideodec.c:
173           omx*dec: Flush before we stop the srcpad loop
174           Flushing could otherwise hang if output port queue of pending buffers was empty
175           https://bugzilla.gnome.org/show_bug.cgi?id=774654
176
177 2016-12-14 13:29:08 -0800  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
178
179         * omx/gstomx.c:
180           Fix broken build due to syntax error
181           Problem was introduced by 8716c23e2b0553db2982eb84c437f493c974385e
182
183 2016-12-12 11:12:48 +0000  Graham Leggett <minfrin@sharp.fm>
184
185         * omx/gstomx.c:
186           Prevent early EOS by resetting eos flag once GST_OMX_ACQUIRE_BUFFER_EOS is triggered
187           https://bugzilla.gnome.org/show_bug.cgi?id=774600
188
189 2016-12-12 11:09:15 +0000  Graham Leggett <minfrin@sharp.fm>
190
191         * omx/gstomx.c:
192           Add clear debug logging on all the paths out of gst_omx_port_acquire_buffer()
193           https://bugzilla.gnome.org/show_bug.cgi?id=774600
194
195 2016-12-01 18:23:50 +0100  George Kiagiadakis <george.kiagiadakis@collabora.com>
196
197         * config/rpi/gstomx.conf:
198         * omx/gstomx.c:
199         * omx/gstomx.h:
200           Add a signals-premature-eos hack for egl_render
201           egl_render seems to have a bug and signals EOS before it has finished
202           pushing out all data; this hack simply makes acquire_buffer() wait
203           a bit more before signalling EOS, in case egl_render decides to spit
204           out some more data.
205           https://bugzilla.gnome.org/show_bug.cgi?id=741856
206
207 2016-12-11 19:52:37 +0000  Graham Leggett <minfrin@sharp.fm>
208
209         * omx/gstomxvideo.c:
210           Add support for OMX_COLOR_FormatYUV420PackedSemiPlanar and OMX_COLOR_Format24bitBGR888
211           https://bugzilla.gnome.org/show_bug.cgi?id=775959
212
213 2016-12-03 08:20:46 +0100  Edward Hervey <bilboed@bilboed.com>
214
215         * common:
216           Automatic update of common submodule
217           From ac2f647 to 39ac2f5
218
219 2016-11-26 11:27:58 +0000  Tim-Philipp Müller <tim@centricular.com>
220
221         * .gitmodules:
222           common: use https protocol for common submodule
223           https://bugzilla.gnome.org/show_bug.cgi?id=775110
224
225 2016-11-25 23:56:06 +0200  Sebastian Dröge <sebastian@centricular.com>
226
227         * omx/gstomx.c:
228           omx: Fix compiler warning with latest clang
229           gstomx.c:1376:42: error: implicit conversion from enumeration type 'GstOMXAcquireBufferReturn' to different enumeration type 'OMX_ERRORTYPE'
230           (aka 'enum OMX_ERRORTYPE') [-Werror,-Wenum-conversion]
231           g_return_val_if_fail (!port->tunneled, GST_OMX_ACQUIRE_BUFFER_ERROR);
232           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
233           https://bugzilla.gnome.org/show_bug.cgi?id=775112
234
235 2016-11-17 19:56:35 +1100  Matthew Waters <matthew@centricular.com>
236
237         * omx/gstomxvideodec.c:
238           videodecoder: remove use of EGLImage orientation
239           New code should use GstVideoTransformationMeta
240           (The defaults do the right thing here though).
241
242 === release 1.11.0 ===
243
244 2016-11-01 18:53:25 +0200  Sebastian Dröge <sebastian@centricular.com>
245
246         * configure.ac:
247           Back to development
248
249 === release 1.10.0 ===
250
251 2016-11-01 18:20:48 +0200  Sebastian Dröge <sebastian@centricular.com>
252
253         * ChangeLog:
254         * NEWS:
255         * RELEASE:
256         * configure.ac:
257         * gst-omx.doap:
258           Release 1.10.0
259
260 === release 1.9.90 ===
261
262 2016-09-30 13:04:51 +0300  Sebastian Dröge <sebastian@centricular.com>
263
264         * ChangeLog:
265         * NEWS:
266         * RELEASE:
267         * common:
268         * configure.ac:
269         * gst-omx.doap:
270           Release 1.9.90
271
272 2016-09-14 11:33:13 +0200  Sebastian Dröge <sebastian@centricular.com>
273
274         * configure.ac:
275           configure: Depend on gstreamer 1.9.2.1
276
277 2016-09-12 14:09:46 +0200  Sebastian Dröge <sebastian@centricular.com>
278
279         * configure.ac:
280         * omx/gstomx.c:
281           omx: Also search for gstomx.conf in the autoconf --sysconfdir
282           https://bugzilla.gnome.org/show_bug.cgi?id=770743
283
284 2016-09-10 20:52:10 +1000  Jan Schmidt <jan@centricular.com>
285
286         * autogen.sh:
287         * common:
288           Automatic update of common submodule
289           From b18d820 to f980fd9
290
291 2016-09-10 09:58:16 +1000  Jan Schmidt <jan@centricular.com>
292
293         * autogen.sh:
294         * common:
295           Automatic update of common submodule
296           From ac2f647 to b18d820
297
298 2016-09-01 12:36:09 +0300  Sebastian Dröge <sebastian@centricular.com>
299
300         * configure.ac:
301           Back to development
302
303 === release 1.9.2 ===
304
305 2016-09-01 12:35:58 +0300  Sebastian Dröge <sebastian@centricular.com>
306
307         * ChangeLog:
308         * NEWS:
309         * RELEASE:
310         * common:
311         * configure.ac:
312         * gst-omx.doap:
313           Release 1.9.2
314
315 2016-07-11 21:15:48 +0200  Stefan Sauer <ensonic@users.sf.net>
316
317         * common:
318           Automatic update of common submodule
319           From ac2f647 to f49c55e
320
321 2016-07-06 13:51:24 +0300  Sebastian Dröge <sebastian@centricular.com>
322
323         * configure.ac:
324           Back to development
325
326 === release 1.9.1 ===
327
328 2016-07-06 13:48:45 +0300  Sebastian Dröge <sebastian@centricular.com>
329
330         * ChangeLog:
331         * NEWS:
332         * RELEASE:
333         * common:
334         * configure.ac:
335         * gst-omx.doap:
336           Release 1.9.1
337
338 2016-06-29 16:37:43 +0900  Kazunori Kobayashi <kkobayas@igel.co.jp>
339
340         * omx/gstomxvideodec.c:
341           omxvideodec: Use GST_VIDEO_FRAME_PLANE_STRIDE() to get output buffer's stride
342           GST_VIDEO_FRAME_PLANE_STRIDE() should be used to get the actual buffer stride,
343           as reported in the buffers's GstVideoMeta, when copying data to that buffer.
344           https://bugzilla.gnome.org/show_bug.cgi?id=768173
345
346 2016-06-21 11:48:40 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
347
348         * common:
349           Automatic update of common submodule
350           From ac2f647 to f363b32
351
352 2016-06-21 11:43:13 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
353
354         * omx/gstomxaudioenc.c:
355           omxaudioenc: implement GstPreset interface
356           To allow user to use GstPreset to quickly save and load a set of
357           parameters.
358           https://bugzilla.gnome.org/show_bug.cgi?id=767907
359
360 2016-06-21 11:41:15 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
361
362         * omx/gstomxvideoenc.c:
363           omxvideoenc: implement GstPreset interface
364           To allow user to use GstPreset to quickly save and load a set of
365           parameters.
366           https://bugzilla.gnome.org/show_bug.cgi?id=767907
367
368 2016-06-17 12:06:48 +0300  Sebastian Dröge <sebastian@centricular.com>
369
370         * configure.ac:
371         * omx/gstomx.h:
372         * omx/gstomxaudiodec.c:
373         * omx/gstomxaudioenc.c:
374         * omx/gstomxvideo.c:
375         * omx/gstomxvideodec.c:
376         * omx/gstomxvideoenc.c:
377           omx: #define OMX_SKIP64BIT on the RPi as required by their API
378           Also add generic support for OMX_SKIP64BIT to gst-omx, in case other
379           implementations also #define that for whatever reason.
380           https://bugzilla.gnome.org/show_bug.cgi?id=766475
381
382 2016-06-17 10:59:45 +0300  Sebastian Dröge <sebastian@centricular.com>
383
384         * omx/gstomxvideodec.c:
385           omxvideodec: Implement ::drain() virtual method
386           https://bugzilla.gnome.org/show_bug.cgi?id=767641
387
388 2016-06-04 19:31:45 +0100  Tim-Philipp Müller <tim@centricular.com>
389
390         * configure.ac:
391           configure: remove AG_GST_PARSE_SUBSYSTEM_DISABLES
392           This would check which subsystems are disabled in core by grepping
393           gstconfig.h. Only problem is: gstconfig.h has moved into libdir now
394           so we've been checking a non-existent file for a while now. The
395           macro would just sets GST_DISABLE_* for use in configure.ac and
396           Makefile.am, but we don't use that anywhere so just get rid of it
397           (the one place where we use GST_DISABLE_GST_DEBUG is in a .c file
398           which gets the define from the gstconfig.h include).
399           https://bugzilla.gnome.org/show_bug.cgi?id=750056
400
401 2016-01-20 03:10:38 +0900  Gwang Yoon Hwang <yoon@igalia.com>
402
403         * examples/egl/testegl.c:
404         * omx/gstomxvideodec.c:
405           omxvideodec : Use gstglmemoryegl for the RPi
406           Modified to use gstglmemoryegl to avoid texture creation/copy operations
407           at the glupload.
408           [Matthew Waters]: gst-indent the sources and port testegl to GstGLMemoryEGL
409           https://bugzilla.gnome.org/show_bug.cgi?id=760918
410
411 2016-04-14 10:04:32 +0100  Julien Isorce <j.isorce@samsung.com>
412
413         * common:
414           Automatic update of common submodule
415           From 6f2d209 to ac2f647
416
417 2016-02-26 12:42:41 +0200  Sebastian Dröge <sebastian@centricular.com>
418
419         * common:
420           Automatic update of common submodule
421           From b64f03f to 6f2d209
422
423 2016-02-17 20:51:03 +1100  Matthew Waters <matthew@centricular.com>
424
425         * examples/egl/testegl.c:
426           examples: update egl example for gstgl API changes
427           https://bugzilla.gnome.org/show_bug.cgi?id=762053
428           https://bugzilla.gnome.org/show_bug.cgi?id=753917
429
430 2016-02-05 18:11:06 -0300  Thiago Santos <thiagoss@osg.samsung.com>
431
432         * autogen.sh:
433         * common:
434           Automatic update of common submodule
435           From 86e4663 to b64f03f
436
437 2015-12-21 00:43:49 +0100  Koop Mast <kwm@rainbow-runner.nl>
438
439         * configure.ac:
440           configure: Make -Bsymbolic check work with clang.
441           Update the -Bsymbolic check with the version glib has. This version
442           works with clang.
443           https://bugzilla.gnome.org/show_bug.cgi?id=759713
444
445 2015-12-07 09:11:32 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
446
447         * autogen.sh:
448         * common:
449           Automatic update of common submodule
450           From b319909 to 86e4663
451
452 2015-11-18 13:00:28 +0000  Enrique Ocaña González <eocanha@igalia.com>
453
454         * omx/gstomx.c:
455           Remember the last_error after a failed set state call to avoid blocking the next get state call
456           gst_omx_video_dec_flush() blocks forever in
457           http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomxvideodec.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n2110
458           when the previous call to gst_omx_component_set_state() fails in
459           http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n827.
460           To mitigate that, I set "last_error" to true, so the code in
461           http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n862
462           exits early and doesn't block.
463           https://bugzilla.gnome.org/show_bug.cgi?id=758274
464
465 2015-11-18 12:59:59 +0000  Enrique Ocaña González <eocanha@igalia.com>
466
467         * omx/gstomxaudiodec.c:
468         * omx/gstomxaudioenc.c:
469         * omx/gstomxvideodec.c:
470         * omx/gstomxvideoenc.c:
471           Properly handle drain requests while flushing
472           Without this commit the decoder streaming thread stops without ever attending
473           the drain request, leaving the decoder input thread waiting forever.
474           https://bugzilla.gnome.org/show_bug.cgi?id=758274
475
476 2015-11-10 10:42:35 +0100  Nicolas Huet <nicolas.huet@parrot.com>
477
478         * omx/gstomx.c:
479           omx: fix hacks leak on class init
480
481 2015-10-21 14:37:13 +0100  Tim-Philipp Müller <tim@centricular.com>
482
483         * common:
484           Automatic update of common submodule
485           From b99800a to b319909
486
487 2015-10-21 14:28:41 +0300  Sebastian Dröge <sebastian@centricular.com>
488
489         * common:
490           Automatic update of common submodule
491           From 9aed1d7 to b99800a
492
493 2015-09-01 16:08:11 -0300  Thiago Santos <thiagoss@osg.samsung.com>
494
495         * omx/gstomxaacdec.c:
496           omxaacdec: Do not accept unknown layouts
497           It was defaulting to RAW when an unknown layout was received but
498           the caps template would actually forbid that on the caps query
499           or accept-caps anyway.
500
501 2015-09-01 08:59:54 -0300  Thiago Santos <thiagoss@osg.samsung.com>
502
503         * omx/gstomxaudiodec.c:
504           omxaudiodec: use default pad accept-caps handling
505           Instead of the audiodecoder one. The OMX audioo decoders have their
506           valid input in the template pad, so just check against that to
507           avoid doing a query downstream.
508
509 2015-08-28 12:57:33 -0300  Thiago Santos <thiagoss@osg.samsung.com>
510
511         * omx/gstomxvideodec.c:
512           omxvideodec: use default pad accept-caps handling
513           Instead of the videodecoder one. The OMX video decoders have their
514           valid input in the template pad, so just check against that to
515           avoid doing a query downstream.
516
517 2015-08-22 15:54:55 +0000  Graham Leggett <minfrin@sharp.fm>
518
519         * omx/gstomxvideoenc.c:
520           omxvideoenc: Add keyframe support for the Rpi, using OMX_IndexConfigBrcmVideoRequestIFrame
521           https://bugzilla.gnome.org/show_bug.cgi?id=753085
522
523 2015-08-20 17:20:50 +0900  Vineeth TM <vineeth.tm@samsung.com>
524
525         * examples/egl/testegl.c:
526           gst-omx: Fix memory leaks when context parse fails
527           When g_option_context_parse fails, context and error variables are not getting free'd
528           which results in memory leaks. Free'ing the same.
529           And replacing g_error_free with g_clear_error, which checks if the error being passed
530           is not NULL and sets the variable to NULL on free'ing.
531           https://bugzilla.gnome.org/show_bug.cgi?id=753865
532
533 2015-08-16 14:53:42 +0200  Philippe Normand <philn@igalia.com>
534
535         * omx/gstomxh264dec.c:
536           omxh264dec: implement is_format_change
537           The omxvideodecoder class only checks some of the caps parameters but if
538           other fields change such as h264 profile and/or level it wouldn't trigger a
539           reconfiguration.
540           https://bugzilla.gnome.org/show_bug.cgi?id=752376
541
542 2015-07-03 00:26:48 +0200  Aurélien Zanelli <aurelien.zanelli@darkosphere.fr>
543
544         * omx/gstomxvideodec.c:
545           omxvideodec: unref allocator after getting it from allocation query
546           Otherwise a reference will be leaked for each allocator. It only happens
547           when target platform is Raspberry Pi and when we have GL support.
548           https://bugzilla.gnome.org/show_bug.cgi?id=751867
549
550 2015-07-03 21:59:54 +0200  Stefan Sauer <ensonic@users.sf.net>
551
552         * common:
553           Automatic update of common submodule
554           From f74b2df to 9aed1d7
555
556 2015-06-16 17:50:14 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
557
558         * common:
559           Automatic update of common submodule
560           From 6015d26 to f74b2df
561
562 2015-06-09 11:30:49 +0200  Edward Hervey <bilboed@bilboed.com>
563
564         * common:
565           Automatic update of common submodule
566           From d9a3353 to 6015d26
567
568 2015-06-08 23:08:28 +0200  Stefan Sauer <ensonic@users.sf.net>
569
570         * common:
571           Automatic update of common submodule
572           From d37af32 to d9a3353
573
574 2015-06-07 23:07:22 +0200  Stefan Sauer <ensonic@users.sf.net>
575
576         * common:
577           Automatic update of common submodule
578           From 21ba2e5 to d37af32
579
580 2015-06-07 17:32:25 +0200  Stefan Sauer <ensonic@users.sf.net>
581
582         * common:
583           Automatic update of common submodule
584           From c408583 to 21ba2e5
585
586 2015-06-07 17:16:43 +0200  Stefan Sauer <ensonic@users.sf.net>
587
588         * autogen.sh:
589         * common:
590           Automatic update of common submodule
591           From c8fb372 to c408583
592
593 2015-05-19 18:21:40 +0300  Sebastian Dröge <sebastian@centricular.com>
594
595         * omx/gstomxaudiodec.c:
596         * omx/gstomxaudiodec.h:
597           omxaudiodec: Add an output adapter for chunking the output into codec frames
598           Otherwise the base class will be confused.
599           See https://bugzilla.gnome.org/show_bug.cgi?id=685730
600
601 2015-04-26 18:24:13 +0100  Tim-Philipp Müller <tim@centricular.com>
602
603         * Android.mk:
604         * omx/Makefile.am:
605           Remove obsolete Android build cruft
606           This is not needed any longer.
607
608 2015-04-22 10:40:22 +0200  Sebastian Dröge <sebastian@centricular.com>
609
610         * INSTALL:
611           Remove INSTALL file
612           autotools automatically generate this, and when using different versions
613           for autogen.sh there will always be changes to a file tracked by git.
614
615 2015-04-08 15:57:59 +0100  Tim-Philipp Müller <tim@centricular.com>
616
617         * .gitignore:
618         * Makefile.am:
619         * configure.ac:
620         * m4/Makefile.am:
621           Add m4 directory so aclocal doesn't complain in autogen.sh
622           Might come in handy, and these warnings seem to be
623           fatal in some environments.
624           You may need to git clean -x -d -f your tree before
625           git pulling/merging.
626
627 2015-04-07 22:25:57 +0100  Tim-Philipp Müller <tim@centricular.com>
628
629         * INSTALL:
630         * autogen.sh:
631           Update autogen.sh to latest version
632
633 2015-04-03 18:58:17 +0100  Tim-Philipp Müller <tim@centricular.com>
634
635         * common:
636           Automatic update of common submodule
637           From bc76a8b to c8fb372
638
639 2015-03-06 12:12:49 +0000  Luis de Bethencourt <luis.bg@samsung.com>
640
641         * omx/gstomxaacdec.c:
642           omxaudiodec: add comment explaining duplicate code path
643
644 2015-03-06 12:09:06 +0000  Luis de Bethencourt <luis.bg@samsung.com>
645
646         * omx/gstomxaacdec.c:
647           Revert "omxaudiodec: remove duplicate code path"
648           This reverts commit a8d26ff27a8b43f589424a59294f9057641b2a46.
649
650 2015-03-06 12:03:56 +0000  Luis de Bethencourt <luis.bg@samsung.com>
651
652         * omx/gstomx.c:
653           omx: handle both errors in the two steps of update_port_definition
654           Also consider potential errors in the _get_parameter() in the return of the
655           update_port_definition function.
656           CID #1287052
657
658 2015-03-06 10:57:53 +0000  Luis de Bethencourt <luis.bg@samsung.com>
659
660         * omx/gstomxaudioenc.c:
661           omxaudioenc: impossible if statement
662           ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
663           for it to be anything else at the if check. Remove the if check.
664           CID #1287053
665
666 2015-03-06 10:54:43 +0000  Luis de Bethencourt <luis.bg@samsung.com>
667
668         * omx/gstomxaudiodec.c:
669           omxaudiodec: impossible if statement
670           ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
671           for it to be anything else at the if check. Remove it.
672           CID #1287054
673
674 2015-03-06 10:50:30 +0000  Luis de Bethencourt <luis.bg@samsung.com>
675
676         * omx/gstomxaacdec.c:
677           omxaudiodec: remove duplicate code path
678
679 2014-12-19 11:19:55 +0200  George Kiagiadakis <george.kiagiadakis@collabora.com>
680
681         * omx/gstomx.c:
682           omx: call handle_messages() only once in acquire_buffer() to avoid potential deadlock
683           There is one rare case where calling handle_messages() more than once can cause a deadlock
684           in the video decoder element:
685           - sink pad thread starts the src pad task (gst_omx_video_dec_loop())
686           - _video_dec_loop() calls gst_omx_port_acquire_buffer() on dec_out_port
687           - blocks in gst_omx_component_wait_message() releasing comp->lock and comp->messages_lock
688           (initially, there are no buffers configured on that port, so it waits for OMX_EventPortSettingsChanged)
689           - the sink pad thread pushes a buffer to the decoder with gst_omx_port_release_buffer()
690           - _release_buffer() grabs comp->lock and sends the buffer to OMX, which consumes it immediately
691           - EmptyBufferDone gets called at this point, which signals _wait_message() to unblock
692           - the message from EmptyBufferDone is processed in gst_omx_component_handle_messages()
693           called from gst_omx_port_release_buffer()
694           - gst_omx_port_release_buffer releases comp->lock
695           - the src pad thread now gets to run, grabbing comp->lock while it exits from _wait_message()
696           - _acquire_buffer() calls the _handle_messages() on the next line after _wait_message(),
697           which does nothing (no pending messages)
698           - then it goes to "retry:" and calls _handle_messages() again, which also does nothing
699           (still no pending messages)
700           - scheduler switches to a videocore thread that calls EventHandler, informing us about the
701           OMX_EventPortSettingsChanged event that just arrived
702           - EventHandler graps comp->messages_lock, but not comp->lock, so it can run in parallel at
703           this point just fine.
704           - scheduler switches back to the src pad thread (which is in the middle of _acquire_buffer())
705           - the next _handle_messages() which is right before if (g_queue_is_empty (&port->pending_buffers))
706           processes the OMX_EventPortSettingsChanged
707           - the buffer queue is still empty, so that thread blocks again in _wait_message()
708           - the sink pad thread tries to acquire the next input port buffer
709           - _acquire_buffer() also blocks this thread in:
710           if (comp->pending_reconfigure_outports) { ... _wait_message() ... }
711           - DEADLOCK. gstreamer is waiting for omx to do something, omx waits for gstreamer to do something.
712           By removing those extra _handle_messages() calls, we can ensure that all the checks of
713           _acquire_buffer() will re-run. In the above case, after the scheduler switches back to
714           the middle of _acquire_buffer(), the code will enter _wait_message(), which will see that
715           there are pending messages and will return immediately, going back to "retry:" and
716           re-doing all the checks properly.
717           https://bugzilla.gnome.org/show_bug.cgi?id=741854
718
719 2015-02-26 09:27:44 +0900  Wonchul Lee <chul0812@gmail.com>
720
721         * omx/gstomx.c:
722           omx: cleanup code a bit to remove else statement
723           https://bugzilla.gnome.org/show_bug.cgi?id=745191
724
725 2015-01-12 16:13:35 +0100  Stefan Sauer <ensonic@users.sf.net>
726
727         * common:
728           Automatic update of common submodule
729           From f2c6b95 to bc76a8b
730
731 2014-12-18 10:56:15 +0100  Sebastian Dröge <sebastian@centricular.com>
732
733         * common:
734           Automatic update of common submodule
735           From ef1ffdc to f2c6b95
736
737 2014-11-27 17:12:42 +0100  Edward Hervey <bilboed@bilboed.com>
738
739         * common:
740           Automatic update of common submodule
741           From 7bb2bce to ef1ffdc
742
743 2014-11-13 09:55:02 +0900  Jun Ji <jun.ji@lge.com>
744
745         * omx/Makefile.am:
746         * omx/gstomx.c:
747         * omx/gstomxamrdec.c:
748         * omx/gstomxamrdec.h:
749           omx: Add omxamrdec
750           https://bugzilla.gnome.org/show_bug.cgi?id=739333
751
752 2014-10-27 18:00:50 +0100  Sebastian Dröge <sebastian@centricular.com>
753
754         * common:
755           Automatic update of common submodule
756           From 84d06cd to 7bb2bce
757
758 2014-10-21 13:03:44 +0100  Tim-Philipp Müller <tim@centricular.com>
759
760         * common:
761           Automatic update of common submodule
762           From a8c8939 to 84d06cd
763
764 2014-10-21 13:00:10 +0200  Stefan Sauer <ensonic@users.sf.net>
765
766         * common:
767           Automatic update of common submodule
768           From 1f5d3c3 to a8c8939
769
770 2014-09-30 10:47:20 +0300  Sebastian Dröge <sebastian@centricular.com>
771
772         * omx/gstomxaudiodec.c:
773           omxaudiodec: Clean up code a bit to get rid of useless NULL checks
774
775 2014-09-30 10:50:07 +0900  junji <jun.ji@lge.com>
776
777         * omx/gstomxaudiodec.c:
778           omxaudiodec: Unmap input buffers after usage
779           https://bugzilla.gnome.org/show_bug.cgi?id=736314
780
781 2014-08-31 20:30:13 +0000  Michal Lazo <michal.lazo@mdragon.org>
782
783         * omx/gstomxvideoenc.c:
784           omxvideoenc: Setup aspect ratio on RPi
785           Needs firmware from yesterday or newer to work with all possible
786           aspect ratios. Before that it only supported a fixed list.
787           https://bugzilla.gnome.org/show_bug.cgi?id=732533
788
789 2014-08-28 10:44:31 +0300  Sebastian Dröge <sebastian@centricular.com>
790
791         * omx/gstomxaudioenc.c:
792           omxaudioenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
793
794 2014-08-28 10:43:22 +0300  Sebastian Dröge <sebastian@centricular.com>
795
796         * omx/gstomxaudioenc.c:
797           omxaudioenc: Use the base class' open/close vfuncs instead of calling them ourselves
798
799 2014-08-26 22:13:53 -0500  Peng Liu <pengliu.mail@gmail.com>
800
801         * config/rpi/gstomx.conf:
802         * omx/gstomxvideoenc.c:
803           omxvideoenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
804           Fix a video encoder stall problem on RPi when changing the aspect ratio.
805           https://bugzilla.gnome.org/show_bug.cgi?id=732533
806
807 2014-08-14 17:36:11 +0300  Sebastian Dröge <sebastian@centricular.com>
808
809         * omx/gstomxaudiodec.c:
810         * omx/gstomxaudiodec.h:
811         * omx/gstomxaudioenc.c:
812         * omx/gstomxaudioenc.h:
813         * omx/gstomxvideodec.c:
814         * omx/gstomxvideodec.h:
815         * omx/gstomxvideoenc.c:
816         * omx/gstomxvideoenc.h:
817           omx: Let base classes handle EOS
818           https://bugzilla.gnome.org//show_bug.cgi?id=734774
819
820 2014-08-14 17:33:07 +0300  Sebastian Dröge <sebastian@centricular.com>
821
822         * omx/gstomxaudiodec.c:
823           omxaudiodec: Fix flushing logic and make it more similar to the video decoder
824
825 === release 1.2.0 ===
826
827 2014-07-23 11:28:12 +0200  Sebastian Dröge <sebastian@centricular.com>
828
829         * ChangeLog:
830         * NEWS:
831         * RELEASE:
832         * configure.ac:
833         * gst-omx.doap:
834         * omx/Makefile.am:
835           Release 1.2.0
836
837 2014-07-22 09:23:00 +0200  Sebastian Dröge <sebastian@centricular.com>
838
839         * config/bellagio/gstomx.conf:
840         * config/rpi/gstomx.conf:
841           config: Update ranks to PRIMARY+1 to have higher preference than avdec_*
842           See https://bugzilla.gnome.org/show_bug.cgi?id=732161
843
844 2014-07-20 17:46:30 +0200  Sebastian Dröge <sebastian@centricular.com>
845
846         * omx/gstomxaudiosink.c:
847           omxaudiosink: Set port to not flushing in prepare() and keep it at flushing in unprepare()
848           https://bugzilla.gnome.org/show_bug.cgi?id=733168
849
850 2014-07-13 22:15:18 +0200  Sebastian Dröge <sebastian@centricular.com>
851
852         * omx/gstomxaacdec.c:
853         * omx/gstomxaudiodec.c:
854         * omx/gstomxaudiodec.h:
855         * omx/gstomxmp3dec.c:
856           omxaudiodec: Implement setting of fallback channel positions
857
858 2014-07-13 18:22:39 +0200  Sebastian Dröge <sebastian@centricular.com>
859
860         * omx/Makefile.am:
861         * omx/gstomx.c:
862         * omx/gstomxaacdec.c:
863         * omx/gstomxaacdec.h:
864         * omx/gstomxmp3dec.c:
865           omx: Add AAC audio decoder
866
867 2014-07-02 09:22:28 +0200  Sebastian Dröge <sebastian@centricular.com>
868
869         * omx/gstomxaudiodec.c:
870           omxaudiodec: Get PCM parameters from the out port, not the in port
871
872 2014-05-15 13:24:39 +0200  Sebastian Dröge <sebastian@centricular.com>
873
874         * omx/gstomxaudiodec.c:
875           omxaudiodec: Implement hack for not disabling the output port after set_format until the output format is known
876           Needed on some OMX implementations, e.g. the one from Atmel. It does
877           not send the settings-changed event on the output port if it is
878           disabled.
879
880 2014-05-10 23:12:54 +0200  Sebastian Dröge <sebastian@centricular.com>
881
882         * omx/Makefile.am:
883         * omx/gstomx.c:
884         * omx/gstomxaudiodec.c:
885         * omx/gstomxaudiodec.h:
886         * omx/gstomxmp3dec.c:
887         * omx/gstomxmp3dec.h:
888           omx: Add audio decoder base class and a subclass for MP3
889
890 2014-07-01 09:38:01 +0200  Sebastian Dröge <sebastian@centricular.com>
891
892         * configure.ac:
893         * omx/Makefile.am:
894           omx: Link to gmodule-2.0-no-export for being able to use the g_module_*() API
895           https://bugzilla.gnome.org/show_bug.cgi?id=732518
896
897 2014-06-30 15:00:54 +0200  Sebastian Dröge <sebastian@centricular.com>
898
899         * examples/egl/testegl.c:
900           examples: #define GST_USE_UNSTABLE_API for libgstgl
901
902 2014-06-29 19:10:19 +0200  Sebastian Dröge <sebastian@centricular.com>
903
904         * omx/gstomxh264enc.c:
905         * omx/gstomxh264enc.h:
906           omxh264enc: Properly accumulate headers and push before the next frame
907           Fixes output of encoding on RPi, where each header buffer (SPS and PPS)
908           is in a separate OMX buffer.
909           https://bugzilla.gnome.org/show_bug.cgi?id=726669
910
911 2014-06-29 19:04:54 +0200  Sebastian Dröge <sebastian@centricular.com>
912
913         * omx/gstomxvideoenc.c:
914           omxvideoenc: Implement flush() instead of the deprecated reset()
915
916 2014-06-25 17:14:18 +0200  Sebastian Dröge <sebastian@centricular.com>
917
918         * config/rpi/gstomx.conf:
919           rpi: It's 44100Hz, not 41400Hz
920
921 2014-06-25 11:12:51 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
922
923         * configure.ac:
924           configure.ac: require gstgl >= 1.3.3
925
926 2014-04-25 13:25:05 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
927
928         * Makefile.am:
929         * configure.ac:
930           example: enable testegl
931           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
932
933 2014-06-25 10:19:54 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
934
935         * examples/egl/testegl.c:
936           testegl: do matrix mutlplication in the shader
937           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
938
939 2014-06-25 09:36:38 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
940
941         * examples/egl/testegl.c:
942           testegl: add a comment for the parse command
943           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
944
945 2014-04-25 17:32:16 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
946
947         * examples/egl/Makefile.am:
948         * examples/egl/cube_texture_and_coords.h:
949         * examples/egl/testegl.c:
950           testegl: convert code from GLESv1 to GLESv2
951           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
952
953 2014-04-25 13:21:59 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
954
955         * examples/egl/Makefile.am:
956         * examples/egl/testegl.c:
957           testegl: port to gstgl API
958           - append a glfilter just before fakesink
959           So that we get gltexture or eglimages
960           - propagate our EGLDisplay to the pipeline
961           see GST_QUERY_CONTEXT
962           - share our EGLContext with the iternal gl context
963           of the pipeline, see GST_QUERY_ALLOCATION
964           - use GstVideoGLTextureUploadMeta to upload
965           the incoming gltexture or eglimage to our gl texture
966           TODO: convert from GLESv1 to GLESv2
967           See https://bugzilla.gnome.org/show_bug.cgi?id=728940
968
969 2014-06-24 14:52:58 +0200  Sebastian Dröge <sebastian@centricular.com>
970
971         * omx/gstomxbufferpool.c:
972         * omx/gstomxbufferpool.h:
973         * omx/gstomxvideodec.c:
974           omxbufferpool: Copy buffers if the stride does not match and we can't use video meta
975           https://bugzilla.gnome.org/show_bug.cgi?id=731672
976
977 2014-06-24 14:52:43 +0200  Sebastian Dröge <sebastian@centricular.com>
978
979         * configure.ac:
980         * omx/gstomx.h:
981         * omx/gstomxvp8dec.h:
982           omx: Only include OMX_VideoExt.h conditionally
983           It does not exist on the RPi for example.
984
985 2014-06-24 13:59:44 +0200  Sebastian Dröge <sebastian@centricular.com>
986
987         * configure.ac:
988           configure.ac: Require GStreamer core/base >= 1.2.2
989           Needed at least for gst_video_decoder_release_frame().
990
991 2014-06-24 13:02:13 +0200  Sebastian Dröge <sebastian@centricular.com>
992
993         * omx/gstomxbufferpool.c:
994           omxbufferpool: Fix format string compiler warning
995
996 2014-06-22 21:11:45 +0000  Michal Lazo <xlazom00@gmail.com>
997
998         * omx/gstomxbufferpool.c:
999           omxbufferpool: Initialize debug category
1000
1001 2014-06-24 12:42:22 +0200  Sebastian Dröge <sebastian@centricular.com>
1002
1003         * omx/gstomxbufferpool.c:
1004           omxbufferpool: Properly convert OMX alignment to GStreamer alignment
1005           GStreamer uses a bitmask for the alignment while OMX uses the
1006           alignment itself. Let's convert.
1007           https://bugzilla.gnome.org/show_bug.cgi?id=710564
1008
1009 2014-06-24 11:11:28 +0200  Sebastian Dröge <sebastian@centricular.com>
1010
1011         * omx/gstomxh264enc.c:
1012           omxh264enc: Don't let baseclass finish frames for SPS/PPS buffers
1013           Otherwise we a) send them twice, and b) finish a frame for something
1014           that does not even include a frame.
1015           https://bugzilla.gnome.org/show_bug.cgi?id=726669
1016
1017 2014-06-24 10:22:37 +0200  Sebastian Dröge <sebastian@centricular.com>
1018
1019         * omx/gstomxvideo.h:
1020           omxvideo: Include the separate headers too for compatibility with 1.0.x
1021
1022 2014-03-24 16:09:40 +0800  Zhao, Halley <halley.zhao@intel.com>
1023
1024         * configure.ac:
1025         * omx/gstomxvp8dec.h:
1026           omxvp8dec: use VP8 definition from OMX_VideoExt.h
1027           https://bugzilla.gnome.org/show_bug.cgi?id=726957
1028
1029 2014-03-24 15:33:26 +0800  Zhao, Halley <halley.zhao@intel.com>
1030
1031         * configure.ac:
1032           configure: add --with-omx-header-path option for external omx headers
1033           https://bugzilla.gnome.org/show_bug.cgi?id=726957
1034
1035 2014-06-18 23:04:33 +0200  Aurélien Zanelli <aurelien.zanelli@darkosphere.fr>
1036
1037         * omx/gstomxvideodec.c:
1038           omxvideodec: fix a query leak
1039           Also add a debug message if query fails.
1040           https://bugzilla.gnome.org/show_bug.cgi?id=731898
1041
1042 2014-05-30 15:29:15 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1043
1044         * omx/gstomxvideodec.c:
1045           omxvideodec: release frames with old PTS to avoid memory issue
1046           Interlaced stream could make the decoder use two input frames to produce
1047           one output frame causing the gstvideodecoder frame list to grow.
1048           Assuming the video decoder output frame in display order rather than in
1049           decoding order, this commit add a way to release frames with PTS less
1050           than current output frame.
1051           https://bugzilla.gnome.org/show_bug.cgi?id=730995
1052
1053 2013-06-27 21:59:29 +0900  Kazunori Kobayashi <kkobayas@igel.co.jp>
1054
1055         * omx/gstomx.c:
1056           omx: Fix a missing g_free() in error path
1057           This fixes a memory leak with g_strdup() when an error occurs.
1058           https://bugzilla.gnome.org/show_bug.cgi?id=731141
1059
1060 2014-06-02 15:34:09 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1061
1062         * omx/gstomxvideodec.c:
1063           omxvideodec: add missing stream unlock in error path
1064
1065 2014-05-31 15:12:05 +0200  Sebastian Dröge <sebastian@centricular.com>
1066
1067         * omx/gstomx.c:
1068           omx: Don't handle disabling/enabling ports exactly like flushing
1069           Otherwise we might abort a flush operation in another thread when
1070           enabling/disabling ports, leading to deadlocks sometimes.
1071           https://bugzilla.gnome.org/show_bug.cgi?id=730989
1072
1073 2014-05-26 11:02:10 +0200  Sebastian Dröge <sebastian@centricular.com>
1074
1075         * omx/gstomxvideodec.c:
1076           omxvideodec: Don't leak buffer pool config in error cases
1077           CID 1216158
1078
1079 2014-05-21 10:53:43 +0200  Sebastian Dröge <sebastian@centricular.com>
1080
1081         * common:
1082           Automatic update of common submodule
1083           From 211fa5f to 1f5d3c3
1084
1085 2014-05-19 09:10:07 +0200  Sebastian Dröge <sebastian@centricular.com>
1086
1087         * omx/gstomxvideoenc.c:
1088           omxvideoenc: Don't forget to unref codec state
1089           CID 1214603
1090
1091 2014-05-19 09:08:33 +0200  Sebastian Dröge <sebastian@centricular.com>
1092
1093         * omx/gstomxvideodec.c:
1094           omxvideodec: Make output buffer pointer always initialized
1095           CID 1214605
1096
1097 2014-05-19 09:06:42 +0200  Sebastian Dröge <sebastian@centricular.com>
1098
1099         * omx/gstomxvideodec.c:
1100           omxvideodec: Check return value of gst_buffer_map()
1101           CID 1214599
1102
1103 2014-05-19 09:04:09 +0200  Sebastian Dröge <sebastian@centricular.com>
1104
1105         * omx/gstomxvideodec.c:
1106           omxvideodec: Check return value of gst_omx_port_set_enabled() for errors
1107           CID 1214589
1108
1109 2014-05-19 09:01:46 +0200  Sebastian Dröge <sebastian@centricular.com>
1110
1111         * omx/gstomxvideodec.c:
1112           omxvideodec: Check return values of buffer pool config parsing functions
1113           CID 1214588
1114
1115 2014-05-19 08:48:50 +0200  Sebastian Dröge <sebastian@centricular.com>
1116
1117         * omx/gstomx.c:
1118           omx: Remove dead code, buf can never be NULL here as we just check for that the line above
1119           CID 1214596
1120
1121 2014-05-19 08:47:36 +0200  Sebastian Dröge <sebastian@centricular.com>
1122
1123         * omx/gstomx.c:
1124           omx: Fix comparisons in gst_omx_state_to_string() case to actually make sense
1125           CID 1214593
1126
1127 2014-05-19 08:45:10 +0200  Sebastian Dröge <sebastian@centricular.com>
1128
1129         * omx/gstomx.c:
1130           omx: Make sure to compare the error codes as unsigned integers so that comparisons >2**31 actually work
1131           CID 1214592
1132
1133 2014-05-19 08:40:23 +0200  Sebastian Dröge <sebastian@centricular.com>
1134
1135         * omx/gstomx.c:
1136           omx: Fix comparisons in gst_omx_command_to_string() default cause to actually work
1137           CID 1214591
1138
1139 2014-05-15 13:22:56 +0200  Sebastian Dröge <sebastian@centricular.com>
1140
1141         * omx/gstomxaudioenc.c:
1142           omxaudioenc: Implement hack for not disabling the output port after set_format until the output format is known
1143           Needed on some OMX implementations, e.g. the one from Atmel. It does
1144           not send the settings-changed event on the output port if it is
1145           disabled.
1146
1147 2014-05-15 13:21:07 +0200  Sebastian Dröge <sebastian@centricular.com>
1148
1149         * omx/gstomxvideoenc.c:
1150           omxvideoenc: Implement hack for not disabling the output port after set_format until the output format is known
1151           Needed on some OMX implementations, e.g. the one from Atmel. It does
1152           not send the settings-changed event on the output port if it is
1153           disabled.
1154
1155 2014-05-15 10:58:34 +0200  Sebastian Dröge <sebastian@centricular.com>
1156
1157         * omx/gstomx.c:
1158         * omx/gstomx.h:
1159         * omx/gstomxvideodec.c:
1160           omx: Add a hack for not disabling the output port after set_format until the output format is known
1161           Needed on some OMX implementations, e.g. the one from Atmel. It does
1162           not send the settings-changed event on the output port if it is
1163           disabled.
1164
1165 2014-05-12 12:33:32 +0200  Josep Torra <n770galaxy@gmail.com>
1166
1167         * omx/gstomxaudiosink.c:
1168           omxaudiosink: implement _delay only in the RaspberryPI
1169           Make code implementation conditionally built for RaspberryPI because
1170           OMX_IndexConfigAudioRenderingLatency seems to be a Broadcom extension.
1171           On other targets the query position might not be accurate without
1172           implementing _delay appropriatelly.
1173
1174 2014-05-12 08:56:15 +0200  Sebastian Dröge <sebastian@centricular.com>
1175
1176         * omx/gstomxaudioenc.c:
1177           omxaudioenc: Correctly scale nTickCount by OMX_TICKS_PER_SECOND
1178
1179 2014-05-10 22:48:23 +0200  Sebastian Dröge <sebastian@centricular.com>
1180
1181         * omx/gstomxaudioenc.c:
1182           omxaudioenc: Drain encoder on NULL buffer and don't drain on flushing
1183
1184 2014-05-10 22:47:56 +0200  Sebastian Dröge <sebastian@centricular.com>
1185
1186         * omx/gstomxvideodec.c:
1187           omxvideodec: Set nTickCount based on the buffer's duration instead of something wrong
1188
1189 2014-05-10 22:47:21 +0200  Sebastian Dröge <sebastian@centricular.com>
1190
1191         * omx/gstomxvideoenc.c:
1192           omxvideoenc: Set nTickCount to the whole duration of the buffer instead of a wrong calculation
1193
1194 2014-05-10 22:46:51 +0200  Sebastian Dröge <sebastian@centricular.com>
1195
1196         * omx/gstomxaudiosink.c:
1197           omxaudiosink: Fix format string compiler warnings
1198
1199 2014-04-04 14:11:58 +0200  Josep Torra <n770galaxy@gmail.com>
1200
1201         * config/rpi/gstomx.conf:
1202         * omx/Makefile.am:
1203         * omx/gstomx.c:
1204         * omx/gstomxanalogaudiosink.c:
1205         * omx/gstomxanalogaudiosink.h:
1206         * omx/gstomxaudiosink.c:
1207         * omx/gstomxaudiosink.h:
1208         * omx/gstomxhdmiaudiosink.c:
1209         * omx/gstomxhdmiaudiosink.h:
1210           omxaudiosink: Implements OpenMAX based audio sinks
1211           Provides omxanalogaudiosink and omxhdmiaudiosink elements on
1212           the Raspberry PI.
1213           - omxanalogaudiosink is capable to render raw mono or stereo audio
1214           through the jack output.
1215           - omxhdmiaudiosink is capable to render raw audio up to 8 channels
1216           and transmit ac3/dts(IEC 61937) through the HDMI output.
1217           - sinks provide a clock derived from rendered samples
1218           - sinks support the GstStreamVolume interface by implementing
1219           the volume and mute properties.
1220           https://bugzilla.gnome.org/show_bug.cgi?id=728962
1221
1222 2014-05-03 10:17:35 +0200  Sebastian Dröge <sebastian@centricular.com>
1223
1224         * common:
1225           Automatic update of common submodule
1226           From bcb1518 to 211fa5f
1227
1228 2014-04-29 15:16:16 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
1229
1230         * omx/gstomxvideodec.c:
1231           omxvideodec: can negotiate caps with memory:EGLImage feature when using EGLImage allocator
1232           Previously when using gst EGLImage allocator the caps was
1233           video/x-raw, format=RGBA instead of
1234           video/x-raw(memory:EGLImage), format=RGBA
1235           Kepp previous behavior in case negotiation fails with caps feature.
1236           It means it will still have a chance to use EGLImage even if the
1237           feature is not in the caps.
1238           https://bugzilla.gnome.org/show_bug.cgi?id=729196
1239
1240 2014-04-23 09:57:48 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1241
1242         * omx/gstomxvp8dec.h:
1243           omxvp8dec: fix typo in GST_TYPE_OMX_VP8_DEC define
1244           https://bugzilla.gnome.org/show_bug.cgi?id=728774
1245
1246 2014-04-16 11:00:55 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1247
1248         * omx/gstomxvideodec.c:
1249           omxvideodec: don't unref caps before logging field from it
1250           https://bugzilla.gnome.org/show_bug.cgi?id=728322
1251
1252 2014-04-15 17:30:13 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
1253
1254         * Makefile.am:
1255         * configure.ac:
1256           example: disable testegl since libgstegl has been removed
1257           As decided in bug #703343
1258           Not compatible with the new libgstgl API.
1259           A portage has been started, attachment 272800.
1260           https://bugzilla.gnome.org/show_bug.cgi?id=703343
1261
1262 2014-04-15 17:11:08 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
1263
1264         * omx/gstomxvideodec.c:
1265           omxvideodec: use new libgstgl API since libgstegl has been removed
1266           There is no point to retrieve a ref/unref type
1267           instead of an EGLDisplay directly. It's like for EGLImage.
1268           https://bugzilla.gnome.org/show_bug.cgi?id=703343
1269
1270 2014-04-15 17:06:38 +0100  Julien Isorce <julien.isorce@collabora.co.uk>
1271
1272         * configure.ac:
1273         * examples/Makefile.am:
1274         * omx/Makefile.am:
1275         * omx/gstomxvideodec.c:
1276           configure.ac: check for libgstgl since libgstegl has been removed
1277           https://bugzilla.gnome.org/show_bug.cgi?id=703343
1278
1279 2014-04-09 18:52:16 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1280
1281         * omx/gstomxbufferpool.c:
1282         * omx/gstomxvideodec.c:
1283           omxvideodec: add support of more color format
1284           Add support for ABGR, ARGB, RGB16, BGR16, YUY2, UYVY, YVYU, GRAY8 and
1285           NV16 color format.
1286
1287 2014-04-09 18:51:57 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1288
1289         * omx/gstomxvideodec.c:
1290           omxvideodec: simplify color format conversion in fill_buffer function
1291
1292 2014-04-09 18:51:41 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1293
1294         * omx/gstomxbufferpool.c:
1295           omxbufferpool: make video stride and offset calculation easier
1296           It will be easier to support more color format.
1297
1298 2014-04-09 18:51:12 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
1299
1300         * omx/gstomxvideo.c:
1301         * omx/gstomxvideo.h:
1302         * omx/gstomxvideodec.c:
1303           omx: add an helper to convert OMX color format to GStreamer color format
1304
1305 2014-03-10 17:43:50 +0100  Josep Torra <n770galaxy@gmail.com>
1306
1307         * examples/egl/testegl.c:
1308         * omx/gstomxvideodec.c:
1309           omxvideodec: Implement pipeline draining to support adaptive scenarios
1310           When draining due a format change also drain
1311           the pipeline to reclaim back all buffers.
1312           https://bugzilla.gnome.org/show_bug.cgi?id=726107
1313
1314 2014-03-27 13:57:32 +0100  Josep Torra <n770galaxy@gmail.com>
1315
1316         * examples/egl/testegl.c:
1317           examples: fix several memory leaks in the testegl example
1318           Ensure to call to image_data_free in order to release GPU resources.
1319           Also ensure to destroy EGLImage and GLTexture from proper
1320           thread/context.
1321           https://bugzilla.gnome.org/show_bug.cgi?id=726107
1322
1323 2014-03-25 17:16:31 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
1324
1325         * examples/egl/testegl.c:
1326           examples: keep a ref on the buffer instead of the memory
1327           Like in eglglessink
1328           https://bugzilla.gnome.org/show_bug.cgi?id=726107
1329
1330 2014-03-07 20:08:05 +0100  Josep Torra <n770galaxy@gmail.com>
1331
1332         * omx/gstomxvideodec.c:
1333           omxvideodec: fixes race condition during seeks
1334           Acording 6.1.3 Seek Event Sequence in the OpenMAX IL 1.1.2 spec
1335           document in order to flush the component it needs to be in
1336           paused state.
1337           https://bugzilla.gnome.org/show_bug.cgi?id=726038
1338
1339 2014-01-29 18:31:26 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
1340
1341         * omx/gstomxvideodec.c:
1342           omxvideodec: use flush because reset is deprecated
1343           https://bugzilla.gnome.org/show_bug.cgi?id=726038
1344
1345 2014-01-27 17:03:50 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
1346
1347         * omx/gstomxvideodec.c:
1348           omxvideodec: populate the most downstream output port on reset
1349           Make seeking work when using egl_render component
1350           https://bugzilla.gnome.org/show_bug.cgi?id=726038
1351
1352 2014-03-24 17:49:59 +0100  Josep Torra <n770galaxy@gmail.com>
1353
1354         * omx/gstomxbufferpool.c:
1355           omxbufferpool: return buffers to the pool instead of freeing them
1356           We have to return the buffers back to the pool in when stopping to
1357           not mess with the GstBufferPool accounting.
1358           The OMX buffers will be freed when those won't be in charge of the
1359           pool in the chained up call to 'stop'.
1360           Fixes segfaults on finalize and pool not being properly deactivated.
1361           https://bugzilla.gnome.org/show_bug.cgi?id=726337
1362
1363 2014-03-19 12:12:49 +0100  Christian König <christian.koenig@amd.com>
1364
1365         * omx/gstomxvideodec.c:
1366           omxvideodec: add missing unlock in the error path
1367           Signed-off-by: Christian König <christian.koenig@amd.com>
1368           https://bugzilla.gnome.org/show_bug.cgi?id=726958
1369
1370 2014-03-18 23:36:59 +0100  Michal Lazo <xlazom00@gmail.com>
1371
1372         * omx/gstomxh264enc.c:
1373         * omx/gstomxh264enc.h:
1374           fix filemode
1375
1376 2014-03-17 09:57:11 +0000  Julien Isorce <julien.isorce@collabora.co.uk>
1377
1378         * omx/gstomxbufferpool.c:
1379           omxbufferpool: fix memory leak if used on output port
1380           When using GstOMXBufferPool on an output port, it internally uses
1381           a GPtrArray to manage the GstBuffers instead of the default queue
1382           from the GstBufferPool base class.
1383           In this case GstBufferPool::default_free_buffer is not called when
1384           the pool is stopped. Because the queue is empty. So explicitely
1385           call gst_omx_buffer_pool_free_buffer on each buffer contained in
1386           the GPtrArray.
1387           https://bugzilla.gnome.org/show_bug.cgi?id=726337
1388
1389 2014-03-16 17:32:05 +0100  Sebastian Dröge <sebastian@centricular.com>
1390
1391         * omx/gstomxh264enc.c:
1392           omxh264enc: Fix compiler warnings
1393
1394 2014-03-16 17:19:08 +0100  Michal Lazo <xlazom00@gmail.com>
1395
1396         * omx/gstomxh264enc.c:
1397         * omx/gstomxh264enc.h:
1398           omxh264enc: IDR interval, SPS and PPS headers for rpi
1399           https://bugzilla.gnome.org/show_bug.cgi?id=720031
1400
1401 2014-03-13 14:26:58 +0100  Christian König <christian.koenig@amd.com>
1402
1403         * omx/gstomx.c:
1404         * omx/gstomx.h:
1405         * omx/gstomxvideo.c:
1406           omxvideo: fix debug category initialisation
1407           https://bugzilla.gnome.org/show_bug.cgi?id=726024
1408
1409 2014-03-13 19:04:47 +0100  Christian König <christian.koenig@amd.com>
1410
1411         * omx/gstomxbufferpool.h:
1412           omxbufferpool: add proper type definitions
1413           https://bugzilla.gnome.org/show_bug.cgi?id=726325
1414
1415 2014-03-02 10:30:04 +0100  Christian König <christian.koenig@amd.com>
1416
1417         * omx/gstomx.c:
1418           omx: consolidate message waiting code
1419           Add a wait_message helper function and remove all those duplicated code.
1420           https://bugzilla.gnome.org/show_bug.cgi?id=725493
1421
1422 2014-03-12 12:48:12 +0100  Sebastian Dröge <sebastian@centricular.com>
1423
1424         * omx/gstomxvideo.c:
1425           omx: Copy old copyright notice into the new file
1426
1427 2014-03-12 12:47:34 +0100  Sebastian Dröge <sebastian@centricular.com>
1428
1429         * omx/gstomxvideo.c:
1430         * omx/gstomxvideo.h:
1431         * omx/gstomxvideodec.c:
1432         * omx/gstomxvideoenc.c:
1433           omx: Rename function from _4_ to _for_ for clarity
1434
1435 2014-03-03 16:15:24 +0100  Christian König <christian.koenig@amd.com>
1436
1437         * omx/Makefile.am:
1438         * omx/gstomxvideo.c:
1439         * omx/gstomxvideo.h:
1440         * omx/gstomxvideodec.c:
1441         * omx/gstomxvideoenc.c:
1442           omxvideo: start sharing more code between video decoder and encoder
1443           Identical functionality spread of two different components.
1444           We can't use a common base class because of different inheritance,
1445           but let's try to share the code anyway.
1446           https://bugzilla.gnome.org/show_bug.cgi?id=726024
1447
1448 2014-03-12 12:43:49 +0100  Sebastian Dröge <sebastian@centricular.com>
1449
1450         * examples/egl/Makefile.am:
1451           examples: Only build RPi EGL example if RPi was chosen as target
1452
1453 2014-03-12 12:42:23 +0100  Sebastian Dröge <sebastian@centricular.com>
1454
1455         * omx/gstomxbufferpool.h:
1456           omxbufferpool: Fix header include guard
1457
1458 2014-03-05 11:41:02 +0100  Christian König <christian.koenig@amd.com>
1459
1460         * omx/Makefile.am:
1461         * omx/gstomxbufferpool.c:
1462         * omx/gstomxbufferpool.h:
1463         * omx/gstomxvideodec.c:
1464           omxvideodec: separate the buffer pool from the decoder
1465           https://bugzilla.gnome.org/show_bug.cgi?id=726025
1466
1467 2014-03-04 17:41:20 +0100  Christian König <christian.koenig@amd.com>
1468
1469         * omx/gstomx.c:
1470         * omx/gstomx.h:
1471         * omx/gstomxvideodec.c:
1472           omx: simplify tunnel functions
1473           Specifying the component is error prone and unnecessary.
1474           https://bugzilla.gnome.org/show_bug.cgi?id=726021
1475
1476 2014-03-07 17:12:24 +0100  Christian König <christian.koenig@amd.com>
1477
1478         * omx/gstomxvideodec.c:
1479           omxvideodec: fix memory leak in gst_omx_video_dec_allocate_output_buffers
1480           https://bugzilla.gnome.org/show_bug.cgi?id=725907
1481
1482 2014-03-07 13:18:49 +0100  Christian König <christian.koenig@amd.com>
1483
1484         * omx/gstomxvideodec.c:
1485           omxvideodec: fix memory leak gst_omx_video_dec_negotiate
1486           https://bugzilla.gnome.org/show_bug.cgi?id=725907
1487
1488 2014-03-05 18:54:05 +0100  Christian König <christian.koenig@amd.com>
1489
1490         * omx/gstomxvideoenc.c:
1491           omxvideoenc: fix a memory leak in gst_omx_video_enc_getcaps
1492           https://bugzilla.gnome.org/show_bug.cgi?id=725826
1493
1494 2014-03-05 17:43:33 +0100  Josep Torra <n770galaxy@gmail.com>
1495
1496         * Makefile.am:
1497           Makefile.am: build examples
1498           There's no reason to not build the examples now that are ported to 1.x.
1499
1500 2014-03-05 17:25:09 +0100  Josep Torra <n770galaxy@gmail.com>
1501
1502         * examples/egl/testegl.c:
1503           examples: avoid a clashing name with the recently added GstEGLImagePool
1504           Fixes build with current master.
1505
1506 2013-09-05 03:41:10 -0600  Christian König <christian.koenig@amd.com>
1507
1508         * omx/gstomxvideoenc.c:
1509           omxvideoenc: simplify _find_nearest_frame
1510           Just the same as we did with the decoder. Also give the
1511           function a gst_omx_video_enc prefix to distinct it from
1512           the decoder function.
1513           https://bugzilla.gnome.org/show_bug.cgi?id=724236
1514
1515 2013-09-05 02:23:39 -0600  Christian König <christian.koenig@amd.com>
1516
1517         * omx/gstomxvideodec.c:
1518           omxvideodec: simplify _find_nearest_frame
1519           No need to make it more complicated and error prone than
1520           necessary. Also give the function a gst_omx_video_dec prefix
1521           to distinct it from the encoder function.
1522           https://bugzilla.gnome.org/show_bug.cgi?id=724236
1523
1524 2013-09-05 02:05:52 -0600  Christian König <christian.koenig@amd.com>
1525
1526         * omx/gstomxvideodec.c:
1527           omxvideodec: remove dead code
1528           This code doesn't seems to be used for quite a while,
1529           remove it before it starts to rot.
1530           https://bugzilla.gnome.org/show_bug.cgi?id=724236
1531
1532 2014-03-01 22:28:24 +0100  Christian König <christian.koenig@amd.com>
1533
1534         * omx/gstomx.c:
1535           omx: fix two serious message handling bugs
1536           Waiting for the next message if we already got one
1537           is nonsense and can lead to lockups.
1538           https://bugzilla.gnome.org/show_bug.cgi?id=725468
1539
1540 2014-03-01 18:49:41 +0100  Christian König <christian.koenig@amd.com>
1541
1542         * omx/gstomxvideoenc.c:
1543           omxvideoenc: fix startup race condition
1544           The reset function shouldn't start the src pad
1545           loop if it wasn't started before.
1546           Signed-off-by: Christian König <christian.koenig@amd.com>
1547
1548 2014-03-01 18:48:17 +0100  Christian König <christian.koenig@amd.com>
1549
1550         * omx/gstomxvideodec.c:
1551           omxvideodec: fix startup race condition
1552           The reset function shouldn't start the src pad
1553           loop if it wasn't started before.
1554           Signed-off-by: Christian König <christian.koenig@amd.com>
1555
1556 2014-02-28 09:36:13 +0100  Sebastian Dröge <sebastian@centricular.com>
1557
1558         * common:
1559           Automatic update of common submodule
1560           From fe1672e to bcb1518
1561
1562 2014-02-26 22:15:00 +0100  Stefan Sauer <ensonic@users.sf.net>
1563
1564         * common:
1565           Automatic update of common submodule
1566           From 1a07da9 to fe1672e
1567
1568 2014-01-30 10:45:18 +0100  Edward Hervey <bilboed@bilboed.com>
1569
1570         * common:
1571           Automatic update of common submodule
1572           From d48bed3 to 1a07da9
1573
1574 2014-01-25 17:44:14 +0100  Sebastian Dröge <sebastian@centricular.com>
1575
1576         * omx/gstomxaudioenc.c:
1577         * omx/gstomxvideodec.c:
1578         * omx/gstomxvideoenc.c:
1579           omx: Don't handle FLUSHING and NOT_LINKED as errors
1580           Also don't stop the task on NOT_LINKED. We're not a demuxer.
1581
1582 2013-12-22 22:35:31 +0000  Tim-Philipp Müller <tim@centricular.com>
1583
1584         * common:
1585           Automatic update of common submodule
1586           From dbedaa0 to d48bed3
1587
1588 2013-11-05 11:22:02 +0000  Tim-Philipp Müller <tim@centricular.com>
1589
1590         * common:
1591           Automatic update of common submodule
1592           From 865aa20 to dbedaa0
1593
1594 2013-09-28 13:32:37 +0200  Josep Torra <n770galaxy@gmail.com>
1595
1596         * examples/egl/testegl.c:
1597           examples: simplify the thread synchronization code
1598           Make everithing more simple and fix the races conditions remaining in
1599           the previous approaches.
1600
1601 2013-09-25 19:17:17 +0200  Sebastian Dröge <slomo@circular-chaos.org>
1602
1603         * config/rpi/gstomx.conf:
1604           rpi: The WMV/VC1 decoder can only do WMV9 and VC1, no older versions
1605
1606 2013-09-24 18:34:42 +0100  Tim-Philipp Müller <tim@centricular.net>
1607
1608         * common:
1609           Automatic update of common submodule
1610           From 6b03ba7 to 865aa20
1611
1612 2013-09-24 18:48:24 +0200  Josep Torra <n770galaxy@gmail.com>
1613
1614         * examples/egl/testegl.c:
1615           examples: fix another race condition
1616           Fix a race condition that caused randome deadlocks on EOS.
1617
1618 2013-09-20 17:19:53 +0200  Josep Torra <n770galaxy@gmail.com>
1619
1620         * config/rpi/gstomx.conf:
1621           rpi: fix a copy paste error in the config file
1622
1623 2013-09-20 17:09:52 +0200  Josep Torra <n770galaxy@gmail.com>
1624
1625         * examples/egl/testegl.c:
1626           examples: fix a race condition when seeking
1627           Fixes a race condition that caused pipeline deadlock during seeks.
1628
1629 2013-09-20 10:38:12 +0200  Josep Torra <n770galaxy@gmail.com>
1630
1631         * examples/egl/testegl.c:
1632           examples: display QoS statistics
1633
1634 2013-09-20 09:34:37 +0200  Josep Torra <n770galaxy@gmail.com>
1635
1636         * examples/egl/testegl.c:
1637           examples: use dedicated thread for rendering the scene
1638           Produces smother animation and prevents dropping frames due busy
1639           mainloop.
1640
1641 2013-09-20 08:25:21 +0200  Josep Torra <n770galaxy@gmail.com>
1642
1643         * examples/egl/testegl.c:
1644           examples: don't force an specific audio sink
1645           Let playbin2 choose the audiosink available in the system.
1646
1647 2013-09-20 08:19:48 +0200  Josep Torra <n770galaxy@gmail.com>
1648
1649         * examples/egl/Makefile.am:
1650           examples: drop remnants of initial appsink attempt
1651
1652 2013-09-20 16:18:18 +0200  Edward Hervey <edward@collabora.com>
1653
1654         * common:
1655           Automatic update of common submodule
1656           From b613661 to 6b03ba7
1657
1658 2013-09-19 18:45:36 +0100  Tim-Philipp Müller <tim@centricular.net>
1659
1660         * common:
1661           Automatic update of common submodule
1662           From 74a6857 to b613661
1663
1664 2013-09-19 17:38:30 +0100  Tim-Philipp Müller <tim@centricular.net>
1665
1666         * common:
1667           Automatic update of common submodule
1668           From 01a7a46 to 74a6857
1669
1670 2013-08-20 16:00:07 +0100  Tim-Philipp Müller <tim@centricular.net>
1671
1672         * omx/gstomx.c:
1673         * omx/gstomxvideodec.c:
1674           omx: don't use the 'z' modifier to print size_t
1675           gcc will warn in some cases even if the size of the type
1676           is exactly that of size_t on the platform.
1677           https://bugzilla.gnome.org/show_bug.cgi?id=699008
1678
1679 2013-07-01 15:48:47 +0200  Roman Arutyunyan <arutyunyan.roman@gmail.com>
1680
1681         * omx/gstomxvideoenc.c:
1682           gstomxvideoenc: Set bitrate in setcaps
1683           Otherwise it gets lost whenever we configure new caps
1684           https://bugzilla.gnome.org/show_bug.cgi?id=698049
1685
1686 2013-06-30 18:17:05 +0700  Ilya Smelykh <ilya@videoexpertsgroup.com>
1687
1688         * examples/egl/testegl.c:
1689           examples: enable audio in testegl example
1690
1691 2013-06-12 09:38:22 +0200  Sebastian Dröge <slomo@circular-chaos.org>
1692
1693         * configure.ac:
1694           configure: Allow build without gstreamer-egl
1695
1696 2013-06-07 12:39:18 +0700  Ilya Smelykh <ilya@videoexpertsgroup.com>
1697
1698         * examples/egl/Makefile.am:
1699         * examples/egl/testegl.c:
1700           examples: testegl example port to 1.x
1701           https://bugzilla.gnome.org/show_bug.cgi?id=701706
1702
1703 2013-06-05 15:17:16 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1704
1705         * common:
1706           Automatic update of common submodule
1707           From 098c0d7 to 01a7a46
1708
1709 2013-05-20 12:06:34 +0200  Josep Torra <n770galaxy@gmail.com>
1710
1711         * omx/gstomxaudioenc.c:
1712         * omx/gstomxvideodec.c:
1713         * omx/gstomxvideoenc.c:
1714           omx: Take lock on EOS to update the flow return value
1715           Fixes "GThread-ERROR **: file gthread-posix.c: line 171
1716           (g_mutex_free_posix_impl): error 'Device or resource busy' during
1717           'pthread_mutex_destroy ((pthread_mutex_t *) mutex)'" in _finalize.
1718
1719 2013-05-15 10:54:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1720
1721         * common:
1722           Automatic update of common submodule
1723           From 5edcd85 to 098c0d7
1724
1725 2013-04-11 17:35:19 +0200  Josep Torra <n770galaxy@gmail.com>
1726
1727         * Makefile.am:
1728         * configure.ac:
1729         * examples/Makefile.am:
1730         * examples/egl/Makefile.am:
1731         * examples/egl/cube_texture_and_coords.h:
1732         * examples/egl/testegl.c:
1733           examples: add an example aplication based OpenGL ES + EGL
1734           Application that shows how to integrate playbin with an OpenGL ES
1735           scene through EGL. Renders a video on the surfaces of an animated cube.
1736           The code is not ported to 1.x so it's not built by default.
1737
1738 2013-05-10 12:25:07 +0200  Josep Torra <n770galaxy@gmail.com>
1739
1740         * omx/gstomxvideodec.c:
1741           omxvideodec: Redesign video size change reconfiguration code
1742           Ensure stop the decoder before clossing the tunnel.
1743
1744 2013-05-06 16:25:27 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1745
1746         * Makefile.am:
1747           Makefile.am: Add -I common/m4
1748           This allows autoreconf to work correctly and automatic regeneration
1749           of autotools files if something changed.
1750
1751 2013-05-06 19:03:59 +0530  jitendra <jvarshney20@gmail.com>
1752
1753         * omx/gstomx.c:
1754         * omx/gstomx.h:
1755         * omx/gstomxaudioenc.c:
1756         * omx/gstomxvideodec.c:
1757         * omx/gstomxvideoenc.c:
1758           omx: Add pads based on element type
1759           This allows to later add sources and sink that only have a srcpad
1760           or sinkpad.
1761           https://bugzilla.gnome.org/show_bug.cgi?id=699754
1762
1763 2013-04-27 02:50:25 +0200  Carlos Rafael Giani <dv@pseudoterminal.org>
1764
1765         * omx/gstomx.c:
1766           omx: fixed type error in printf call
1767           %zu expects size_t
1768           https://bugzilla.gnome.org/show_bug.cgi?id=699008
1769
1770 2013-04-08 17:26:16 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
1771
1772         * configure.ac:
1773         * omx/Makefile.am:
1774         * omx/gstomxvideodec.c:
1775           Check for gstreamer-egl
1776           And don't use if not available.
1777           https://bugzilla.gnome.org/show_bug.cgi?id=697574
1778
1779 2013-04-23 09:53:18 +0100  Tim-Philipp Müller <tim@centricular.net>
1780
1781         * configure.ac:
1782           configure: error out if no OMX target has been set explicitly with --with-omx-target=x
1783           Avoids people building for e.g. the Raspberry Pi and then wondering
1784           why things don't work as expected (since structs are packed differently
1785           there).
1786
1787 2013-04-22 23:55:03 +0100  Tim-Philipp Müller <tim@centricular.net>
1788
1789         * common:
1790           Automatic update of common submodule
1791           From 3cb3d3c to 5edcd85
1792
1793 2013-04-18 22:07:28 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
1794
1795         * omx/gstomx.c:
1796         * omx/gstomxaudioenc.c:
1797         * omx/gstomxh263enc.c:
1798         * omx/gstomxh264enc.c:
1799         * omx/gstomxmpeg4videoenc.c:
1800         * omx/gstomxvideodec.c:
1801         * omx/gstomxvideoenc.c:
1802           omx: more printf format fixes
1803           Fix printf formats again, so that gst-omx compiles warning-
1804           free on the Raspberry Pi as well. Unfortunately OMX_UINT32
1805           maybe be typedefed to uint32_t or unsigned long, which
1806           doesn't work well with our debugging printf format strings,
1807           so just use %u for those and cast to guint.
1808
1809 2013-04-18 16:40:06 +0200  Josep Torra <n770galaxy@gmail.com>
1810
1811         * omx/gstomx.c:
1812           omx: fixes unused variable 'comp' when GStreamer is built without debug
1813
1814 2013-04-18 16:03:56 +0200  Josep Torra <n770galaxy@gmail.com>
1815
1816         * omx/gstomxvideodec.c:
1817           omxvideodec: don't use 'self->dec_out_port' anymore and use just 'port'
1818           Fixes some criticals.
1819
1820 2013-04-18 15:21:32 +0200  Josep Torra <n770galaxy@gmail.com>
1821
1822         * omx/gstomxvideodec.c:
1823           omxvideodec: fixes 'port' may be used uninitialized in this function
1824
1825 2013-04-18 12:03:31 +0200  Josep Torra <n770galaxy@gmail.com>
1826
1827         * omx/gstomxvideodec.c:
1828           omxvideodec: silence warnings building for RPI related to 'vcos_*'
1829
1830 2013-04-18 11:19:52 +0200  Josep Torra <n770galaxy@gmail.com>
1831
1832         * omx/gstomxvideodec.c:
1833           omxvideodec: Use new type from libgstvideo
1834
1835 2013-04-16 14:50:49 +0530  jitendra <jvarshney20@gmail.com>
1836
1837         * omx/gstomxaudioenc.c:
1838         * omx/gstomxvideodec.c:
1839         * omx/gstomxvideoenc.c:
1840           omx: Disable output port before transition to idle state
1841           https://bugzilla.gnome.org/show_bug.cgi?id=698109
1842
1843 2012-10-24 12:19:41 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1844
1845         * configure.ac:
1846           gst: Add better support for static plugins
1847
1848 2013-04-14 17:57:34 +0100  Tim-Philipp Müller <tim@centricular.net>
1849
1850         * common:
1851           Automatic update of common submodule
1852           From aed87ae to 3cb3d3c
1853
1854 2013-04-12 17:58:30 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
1855
1856         * configure.ac:
1857           configure: add --disable-fatal-warnings for disabling -Werror
1858
1859 2013-04-09 21:02:09 +0200  Stefan Sauer <ensonic@users.sf.net>
1860
1861         * common:
1862           Automatic update of common submodule
1863           From 04c7a1e to aed87ae
1864
1865 2013-04-08 17:02:32 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
1866
1867         * omx/gstomx.c:
1868         * omx/gstomxaudioenc.c:
1869         * omx/gstomxh263enc.c:
1870         * omx/gstomxh264enc.c:
1871         * omx/gstomxmpeg4videoenc.c:
1872         * omx/gstomxvideodec.c:
1873         * omx/gstomxvideoenc.c:
1874           omx: fix printf formats in debug messages
1875           OMX_U32 is typedefed to an unsigned long,
1876           OMX_TICKS to a 64-bit integer.
1877
1878 2013-04-08 16:52:19 +0200  Josep Torra <n770galaxy@gmail.com>
1879
1880         * omx/gstomxvideodec.c:
1881           omxvideodec: use the correct printf format in a debug message
1882
1883 2013-04-08 16:31:33 +0200  Josep Torra <n770galaxy@gmail.com>
1884
1885         * omx/gstomxvideodec.c:
1886           omxvideodec: use the correct OMX_IndexParam value
1887           Fixes playback is not smooth in the EGL path.
1888
1889 2013-04-05 13:45:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1890
1891         * omx/gstomxvideodec.c:
1892           omxvideodec: Don't use API that is not in master yet
1893           It's not really needed here yet, will be needed in future versions
1894
1895 2013-02-25 11:55:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1896
1897         * configure.ac:
1898         * omx/Makefile.am:
1899         * omx/gstomx.c:
1900         * omx/gstomx.h:
1901         * omx/gstomxvideodec.c:
1902         * omx/gstomxvideodec.h:
1903           omxvideodec: Add support for egl_render on RPi
1904
1905 2013-03-22 19:26:54 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
1906
1907         * configure.ac:
1908           Back to development
1909
1910 2013-03-22 19:23:14 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
1911
1912         * omx/gstomxh263enc.c:
1913         * omx/gstomxh264enc.c:
1914         * omx/gstomxmpeg4videoenc.c:
1915           omx: fix compiler warnings when compiling with -DG_DISABLE_ASSERT
1916           As we do for releases. Fixes 'variable may be used uninitialized'
1917           warnings.
1918
1919 === release 1.0.0 ===
1920
1921 2013-03-22 17:16:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1922
1923         * AUTHORS:
1924         * ChangeLog:
1925         * Makefile.am:
1926         * NEWS:
1927         * RELEASE:
1928         * configure.ac:
1929         * gst-omx.doap:
1930           Release 1.0.0
1931
1932 2013-03-19 16:40:09 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
1933
1934         * omx/gstomxtheoradec.h:
1935         * omx/gstomxvp8dec.h:
1936           omx: fix typo in copyright headers
1937
1938 2013-03-19 13:46:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1939
1940         * config/rpi/gstomx.conf:
1941           rpi: Fix commit that added the VC1 decoder
1942
1943 2013-03-19 13:27:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1944
1945         * config/rpi/gstomx.conf:
1946         * omx/gstomxh263dec.c:
1947         * omx/gstomxh264dec.c:
1948         * omx/gstomxmjpegdec.c:
1949         * omx/gstomxmpeg2videodec.c:
1950         * omx/gstomxmpeg4videodec.c:
1951         * omx/gstomxtheoradec.c:
1952         * omx/gstomxvideodec.c:
1953         * omx/gstomxvp8dec.c:
1954         * omx/gstomxwmvdec.c:
1955           omx: Add more constraints to the default sink template caps
1956
1957 2013-03-19 13:10:39 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1958
1959         * config/rpi/gstomx.conf:
1960           rpi: Add VC1/WMV3 decoder
1961           WMV2 and WMV1 (aka WMV 1-8) are not supported by RPi.
1962
1963 2013-03-19 12:59:20 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1964
1965         * config/rpi/gstomx.conf:
1966           rpi: Add MJPEG decoder
1967
1968 2013-03-19 12:56:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1969
1970         * config/rpi/gstomx.conf:
1971           rpi: Add VP8 decoder
1972
1973 2013-03-19 12:55:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1974
1975         * omx/gstomxvideodec.c:
1976           omxvideodec: Set ENDOFFRAME flag for the end of frames
1977
1978 2013-03-19 12:28:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1979
1980         * config/rpi/gstomx.conf:
1981           rpi: Add Theora decoder to the config
1982
1983 2013-03-19 09:36:18 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1984
1985         * configure.ac:
1986         * omx/Makefile.am:
1987         * omx/gstomx.c:
1988         * omx/gstomxtheoradec.c:
1989         * omx/gstomxtheoradec.h:
1990           omx: Add Theora decoder
1991
1992 2013-03-18 16:43:24 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1993
1994         * omx/gstomx.c:
1995           omx: Remove additional comma
1996
1997 2013-03-18 16:34:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
1998
1999         * config/rpi/gstomx.conf:
2000         * omx/Makefile.am:
2001         * omx/gstomx.c:
2002         * omx/gstomxmpeg2dec.h:
2003         * omx/gstomxmpeg2videodec.c:
2004         * omx/gstomxmpeg2videodec.h:
2005           omx: Rename MPEG2 decoder for consistency everywhere
2006
2007 2013-03-18 16:30:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2008
2009         * omx/Makefile.am:
2010         * omx/gstomx.c:
2011         * omx/gstomxmjpegdec.c:
2012         * omx/gstomxmjpegdec.h:
2013           omx: Add MJPEG decoder support
2014
2015 2013-03-18 16:06:54 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2016
2017         * configure.ac:
2018         * omx/Makefile.am:
2019         * omx/gstomx.c:
2020         * omx/gstomxvp8dec.c:
2021         * omx/gstomxvp8dec.h:
2022           omx: Add VP8 decoder support
2023
2024 2013-03-18 15:44:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2025
2026         * config/rpi/gstomx.conf:
2027           rpi: Add h263 decoder and rename MPEG2 decoder for consistency
2028
2029 2013-03-16 13:20:27 +0000  Tim-Philipp Müller <tim@centricular.net>
2030
2031         * omx/gstomxmpeg2dec.c:
2032           omxmpeg2dec: mpeg-2 decoder should be able to handle mpeg-1 too
2033           https://bugzilla.gnome.org/show_bug.cgi?id=695879
2034
2035 2013-03-16 10:13:06 +0100  Josep Torra <n770galaxy@gmail.com>
2036
2037         * omx/gstomx.c:
2038           omx: minor stylistic change for consistency with other similar code
2039
2040 2013-03-16 10:00:24 +0100  Josep Torra <n770galaxy@gmail.com>
2041
2042         * omx/gstomxaudioenc.c:
2043         * omx/gstomxvideodec.c:
2044         * omx/gstomxvideoenc.c:
2045           omx: Clarify that loop task is also paused in EOS
2046
2047 2013-03-16 09:59:01 +0100  Josep Torra <n770galaxy@gmail.com>
2048
2049         * omx/gstomxvideoenc.c:
2050           omxvideoenec: Don't forget propagate flow return value upstream
2051
2052 2013-03-15 13:16:39 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
2053
2054         * omx/gstomx.c:
2055           omx: improve debug logging some more
2056
2057 2013-03-15 14:09:45 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2058
2059         * omx/gstomxvideodec.c:
2060           omxvideodec: Make sure that the first frame we pass to OpenMAX is a sync frame
2061
2062 2013-03-15 11:46:34 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2063
2064         * omx/gstomxaudioenc.c:
2065         * omx/gstomxvideodec.c:
2066         * omx/gstomxvideoenc.c:
2067           omx: Stop output port task after draining
2068
2069 2013-03-15 10:58:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2070
2071         * omx/gstomx.c:
2072           omx: Reset EOS flag in more places
2073
2074 2013-03-15 10:38:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2075
2076         * omx/gstomxvideodec.c:
2077           omxvideodec: Deallocate output buffers with the right function
2078
2079 2013-03-15 01:06:05 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
2080
2081         * omx/gstomx.c:
2082         * omx/gstomx.h:
2083           omx: log commands as strings
2084           Makes logs easier to read.
2085
2086 2013-03-15 00:47:47 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
2087
2088         * omx/gstomx.c:
2089         * omx/gstomx.h:
2090           omx: log states as strings
2091
2092 2013-03-15 00:28:02 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
2093
2094         * omx/gstomx.c:
2095         * omx/gstomx.h:
2096           omx: log component name in debug messages
2097           Useful when we have more different components
2098           active at the same time.
2099
2100 2013-03-15 09:51:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2101
2102         * omx/gstomxvideodec.c:
2103           omxvideodec: Don't interpolate timestamps
2104           We will get exactly one frame per input buffer and assigning
2105           timestamps between frames if more than one OMX buffer is required
2106           per frame easily confuses timestamp tracking in OMX.
2107
2108 2013-03-15 09:32:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2109
2110         * omx/gstomxvideodec.c:
2111           omxvideodec: Give the codec_data the timestamp of the first frame and no duration
2112
2113 2013-03-14 17:31:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2114
2115         * config/rpi/gstomx.conf:
2116           omx: The MPEG4 encoder is not available on RPi and probably never will
2117
2118 2013-03-14 17:26:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2119
2120         * omx/gstomx.c:
2121           omx: Reset some more buffer fields as required
2122
2123 2013-03-14 17:01:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2124
2125         * config/rpi/gstomx.conf:
2126         * omx/gstomx.c:
2127           omx: The hack to disable usage of EOS buffers is not necessary anymore on RPi
2128
2129 2013-03-14 17:00:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2130
2131         * omx/gstomx.c:
2132           omx: Reset the flags for output ports when releasing a buffer, not for input ports
2133
2134 2013-03-14 15:03:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2135
2136         * omx/gstomxh263enc.c:
2137         * omx/gstomxh264enc.c:
2138         * omx/gstomxmpeg4videoenc.c:
2139           omx: Only unref caps after usage of its fields
2140
2141 2013-03-14 14:51:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2142
2143         * omx/gstomxvideodec.c:
2144           omxvideodec: Simplify bufferpool implementation
2145
2146 2013-03-13 13:23:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2147
2148         * omx/gstomxvideodec.c:
2149           omxvideodec: Improve min/max buffer counts handling
2150
2151 2013-03-14 12:49:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2152
2153         * omx/gstomx.c:
2154         * omx/gstomx.h:
2155         * omx/gstomxaudioenc.c:
2156         * omx/gstomxvideodec.c:
2157         * omx/gstomxvideoenc.c:
2158           omx: Handle the OMX_EventBufferFlag to detect EOS too
2159
2160 2013-03-13 10:29:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2161
2162         * omx/gstomx.c:
2163         * omx/gstomx.h:
2164           omx: Mark OpenMAX buffers as EGLImage if they contain one
2165           Needs special handling in some places, e.g. because nFilledLen
2166           will always be 0.
2167
2168 2013-03-13 10:21:49 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2169
2170         * omx/gstomxvideoenc.c:
2171           omxvideoenc: Properly check the nVersion field
2172
2173 2013-03-13 09:34:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2174
2175         * omx/gstomxvideoenc.c:
2176           omxvideoenc: RPi returns garbage for OMX_IndexParamVideoBitrate, work around that
2177
2178 2013-03-12 20:02:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2179
2180         * omx/gstomxvideodec.c:
2181           omxvideodec: Make sure to always get the right buffer
2182
2183 2013-03-12 19:35:39 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2184
2185         * omx/gstomxvideodec.c:
2186           omxvideodec: Make sure the buffer is released to the pool if it's not the one we wanted
2187
2188 2013-03-12 19:17:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2189
2190         * omx/gstomxvideodec.c:
2191           omxvideodec: Drop too late frames instead of finishing them
2192
2193 2013-03-12 19:16:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2194
2195         * omx/gstomxvideodec.c:
2196           omx: Release buffers to the correct port
2197
2198 2013-03-13 09:37:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2199
2200         * omx/gstomx.c:
2201           omx: Always load the OpenMAX IL cores with G_MODULE_BIND_LOCAL
2202
2203 2013-03-12 18:20:22 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2204
2205         * omx/gstomx.c:
2206           omx: Lazy-load symbols of libbcm_host.so
2207           It exports eglIntOpenMAXILDoneMarker(), which is also
2208           exported by libopenmaxil.so... but we need the version
2209           from libopenmaxil.so as the other one is just a stub.
2210
2211 2013-03-11 13:59:15 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2212
2213         * omx/gstomxaacenc.c:
2214         * omx/gstomxh263enc.c:
2215         * omx/gstomxmpeg4videoenc.c:
2216           omx: Don't set profile/level in other encoders if downstream caps don't specify any
2217
2218 2013-03-11 13:49:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2219
2220         * omx/gstomxh264enc.c:
2221           omxh264enc: If caps specify no profile/level use the component's defaults
2222
2223 2013-03-11 13:45:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2224
2225         * omx/gstomxvideoenc.c:
2226           omxvideoenc: Always allocate output buffers from the loop function
2227
2228 2013-03-11 13:12:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2229
2230         * omx/gstomxh264enc.c:
2231           omxh264enc: The h264 encoders are supposed to output byte-stream/au
2232
2233 2013-03-11 11:47:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2234
2235         * omx/gstomxvideoenc.c:
2236           omxvideoenc: Wait until the Executing state is reached before passing buffers to the component
2237
2238 2013-03-11 10:39:25 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2239
2240         * omx/gstomxvideodec.c:
2241           omxvideodec: Don't provide buffers to downstream
2242           This only works reliable if we have a way to tell downstream to
2243           release all our buffers for reconfiguration.
2244
2245 2013-03-11 10:29:44 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2246
2247         * omx/gstomxaudioenc.c:
2248           omxaudioenc: Disable output port when setting a new format
2249
2250 2013-03-11 10:29:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2251
2252         * omx/gstomxvideoenc.c:
2253           omxvideoenc: Disable output port when setting a new format
2254
2255 2013-03-11 10:22:07 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2256
2257         * omx/gstomxvideodec.c:
2258           omxvideodec: Disable output port when setting a new format
2259           Based on a patch by Josep Torra <n770galaxy@gmail.com>
2260
2261 2013-03-11 10:04:10 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2262
2263         * omx/gstomxaudioenc.c:
2264         * omx/gstomxvideodec.c:
2265         * omx/gstomxvideoenc.c:
2266           omx: Catch errors when releasing buffers to a port and handle them
2267
2268 2013-03-10 12:09:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2269
2270         * omx/gstomxvideoenc.c:
2271           omxvideoenc: Use the correct video codec state when filling an input buffer
2272
2273 2013-03-10 12:05:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2274
2275         * omx/gstomxvideoenc.c:
2276           omxvideoenc: Store correct input state
2277
2278 2013-03-10 11:27:34 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2279
2280         * omx/gstomxvideoenc.c:
2281           omxvideoenc: Allocate output buffers as early as possible
2282
2283 2013-03-10 11:01:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2284
2285         * omx/gstomx.c:
2286           omx: Log unknown events
2287
2288 2013-03-09 14:14:40 +0100  Josep Torra <n770galaxy@gmail.com>
2289
2290         * omx/gstomxaudioenc.c:
2291         * omx/gstomxvideodec.c:
2292         * omx/gstomxvideoenc.c:
2293           omx: Fix deadlock in encoders and add explainatory comments.
2294
2295 2013-03-09 13:27:08 +0100  Josep Torra <n770galaxy@gmail.com>
2296
2297         * omx/gstomxvideodec.c:
2298           omxvideodec: fix printf format identifier
2299
2300 2013-03-09 13:07:59 +0100  Josep Torra <n770galaxy@gmail.com>
2301
2302         * omx/gstomxvideodec.c:
2303           omx: Minor changes on debuging info
2304
2305 2013-03-09 13:00:33 +0100  Josep Torra <n770galaxy@gmail.com>
2306
2307         * omx/gstomxvideodec.c:
2308           omxvideodec: avoid a deadlock
2309
2310 2013-03-08 15:56:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2311
2312         * omx/gstomxvideodec.c:
2313           omxvideodec: Don't forget to populate output port
2314
2315 2013-03-08 15:11:27 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2316
2317         * omx/gstomxaudioenc.c:
2318         * omx/gstomxvideodec.c:
2319         * omx/gstomxvideoenc.c:
2320           omx: Flush and stop srcpad when configuring new caps
2321
2322 2013-03-07 17:40:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2323
2324         * config/rpi/gstomx.conf:
2325         * omx/gstomx.c:
2326           Revert "omx: use no-component-reconfigure hack on the Raspberry PI"
2327           This reverts commit e123b2089f69a413241f30a2428ea6edd8f231e7.
2328           It's not required anymore after the fix from the last commit.
2329
2330 2013-03-07 17:38:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2331
2332         * omx/gstomxvideodec.c:
2333           omxvideodec: Only negotiate a color format with downstream on the initial caps
2334
2335 2013-03-07 17:29:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2336
2337         * omx/gstomxvideodec.c:
2338           omxvideodec: Make sure the output port is disabled while we allocate buffers
2339
2340 2013-03-07 17:27:05 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2341
2342         * omx/gstomx.c:
2343           omx: Also wait for disabled output ports to be reconfigured
2344
2345 2013-03-07 14:10:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2346
2347         * omx/gstomxvideodec.c:
2348         * omx/gstomxvideodec.h:
2349           omxvideodec: Add buffer pool for sharing OpenMAX memory with downstream
2350
2351 2013-03-07 11:11:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2352
2353         * omx/gstomx.c:
2354         * omx/gstomx.h:
2355         * omx/gstomxaudioenc.c:
2356         * omx/gstomxvideodec.c:
2357         * omx/gstomxvideoenc.c:
2358           omx: Add timeout to the flush operation and move buffer populating to a separate function
2359
2360 2013-03-06 17:33:23 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2361
2362         * config/rpi/gstomx.conf:
2363         * omx/gstomx.c:
2364         * omx/gstomx.h:
2365           omx: Remove min buffer count hack for RPi again
2366           It's not necessary anymore
2367
2368 2013-03-06 17:05:51 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2369
2370         * omx/gstomx.c:
2371         * omx/gstomx.h:
2372         * omx/gstomxaudioenc.c:
2373         * omx/gstomxvideodec.c:
2374         * omx/gstomxvideoenc.c:
2375           omx: Do number of buffers configuration explicitely
2376
2377 2013-03-07 11:24:54 +0100  Josep Torra <n770galaxy@gmail.com>
2378
2379         * omx/gstomxvideodec.c:
2380           omxvideodec: fixes reconfiguration
2381           Avoid having fixed fields from previous caps on reconfiguration.
2382
2383 2013-03-07 11:02:39 +0100  Josep Torra <n770galaxy@gmail.com>
2384
2385         * config/rpi/gstomx.conf:
2386         * omx/gstomx.c:
2387           omx: use no-component-reconfigure hack on the Raspberry PI
2388
2389 2013-03-07 00:03:28 +0000  Tim-Philipp Müller <tim@centricular.net>
2390
2391         * common:
2392           Automatic update of common submodule
2393           From 2de221c to 04c7a1e
2394
2395 2013-03-01 15:32:47 +0100  Josep Torra <n770galaxy@gmail.com>
2396
2397         * omx/gstomxvideoenc.h:
2398           omxvideoenc: drop unused data member
2399
2400 2013-03-01 12:23:54 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2401
2402         * omx/gstomxh263enc.c:
2403         * omx/gstomxh264enc.c:
2404         * omx/gstomxmpeg4videoenc.c:
2405           omxvideoenc: And set it actually on the right port
2406
2407 2013-03-01 12:18:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2408
2409         * omx/gstomxh263enc.c:
2410         * omx/gstomxh264enc.c:
2411         * omx/gstomxmpeg4videoenc.c:
2412           omxvideoenc: Set the coding type in the subclasses to the specific codec
2413
2414 2013-03-01 11:49:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2415
2416         * omx/gstomxvideoenc.c:
2417           omxvideoenc: gst_omx_port_update_port_definition() returns a OMX_ERRORTYPE, not a gboolean
2418
2419 2013-03-01 11:44:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2420
2421         * omx/gstomxvideodec.c:
2422         * omx/gstomxvideoenc.c:
2423           omxvideo{dec,enc}: Don't use the input state if it wasn't set yet
2424
2425 2013-03-01 11:25:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2426
2427         * omx/gstomxaudioenc.c:
2428           omxaudioenc: Only enable the output port after we know the output format
2429
2430 2013-03-01 11:24:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2431
2432         * omx/gstomxvideoenc.c:
2433           omxvideoenc: Only enable the output port after we know the output format
2434
2435 2013-02-28 17:02:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2436
2437         * omx/gstomxvideodec.c:
2438           omxvideodec: Only enable the output port after we know the output format
2439
2440 2013-03-01 11:18:18 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2441
2442         * omx/gstomx.c:
2443         * omx/gstomx.h:
2444           omx: Handle errors more gracefully
2445
2446 2013-02-28 15:48:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2447
2448         * omx/gstomx.c:
2449         * omx/gstomx.h:
2450         * omx/gstomxaudioenc.c:
2451         * omx/gstomxh263dec.c:
2452         * omx/gstomxh264dec.c:
2453         * omx/gstomxmpeg2dec.c:
2454         * omx/gstomxmpeg4videodec.c:
2455         * omx/gstomxvideodec.c:
2456         * omx/gstomxwmvdec.c:
2457           omx: Return the OMX_ERRORTYPE from gst_omx_port_update_port_definition
2458
2459 2013-02-28 15:37:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2460
2461         * omx/gstomx.c:
2462           omx: Return port definition update errors
2463
2464 2013-02-28 13:57:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2465
2466         * config/rpi/gstomx.conf:
2467         * omx/gstomx.c:
2468         * omx/gstomx.h:
2469           omx: Add hack for RPi for the minimum number of buffers required for a port
2470           The value in the port definition is invalid and the initial actual
2471           buffer count should be used.
2472
2473 2013-02-28 13:26:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2474
2475         * omx/gstomx.c:
2476           omx: Always tell the component about the right number of buffers that we're going to allocate
2477
2478 2013-02-28 13:07:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2479
2480         * omx/gstomx.c:
2481           omx: Invert assertion to let it express what was intended
2482
2483 2013-02-28 11:19:07 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2484
2485         * omx/gstomx.c:
2486         * omx/gstomx.h:
2487         * omx/gstomxaudioenc.c:
2488         * omx/gstomxvideodec.c:
2489         * omx/gstomxvideoenc.c:
2490           omx: Add API for allocating a specific number of buffers and using EGLImages or buffers allocated elsewhere
2491
2492 2013-02-27 16:55:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2493
2494         * omx/gstomxaudioenc.c:
2495         * omx/gstomxvideodec.c:
2496         * omx/gstomxvideoenc.c:
2497           omx: Refactor code flow a bit if output port settings have changed
2498
2499 2013-02-27 15:49:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2500
2501         * omx/gstomx.c:
2502         * omx/gstomx.h:
2503         * omx/gstomxaudioenc.c:
2504         * omx/gstomxvideodec.c:
2505         * omx/gstomxvideoenc.c:
2506           omx: Clean up port settings change handling
2507
2508 2013-02-27 11:30:14 +0100  Josep Torra <n770galaxy@gmail.com>
2509
2510         * omx/gstomxvideodec.c:
2511           omxvideodec: initialize param structure before using it
2512
2513 2013-02-27 10:21:39 +0100  Josep Torra <n770galaxy@gmail.com>
2514
2515         * omx/gstomxvideoenc.c:
2516           omxvideoenc: prevent a NULL pointer access
2517
2518 2013-02-26 17:25:49 +0100  Josep Torra <n770galaxy@gmail.com>
2519
2520         * omx/gstomxvideodec.c:
2521           omxvideodec: prevent a NULL pointer access
2522
2523 2013-02-25 13:11:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2524
2525         * omx/gstomx.c:
2526           omx: Fix deadlock during reconfiguration
2527
2528 2013-02-25 12:38:27 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2529
2530         * omx/gstomx.c:
2531         * omx/gstomxaudioenc.c:
2532         * omx/gstomxvideodec.c:
2533         * omx/gstomxvideoenc.c:
2534           omx: Auto-detect the port indizes if possible
2535
2536 2013-02-25 11:42:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2537
2538         * omx/gstomxvideodec.c:
2539         * omx/gstomxvideoenc.c:
2540           omx: Refactor querying of component supported caps into its own function
2541
2542 2013-02-25 10:41:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2543
2544         * omx/gstomx.c:
2545         * omx/gstomx.h:
2546         * omx/gstomxaudioenc.c:
2547         * omx/gstomxvideodec.c:
2548         * omx/gstomxvideoenc.c:
2549           omx: Refactor waiting for buffers to be released by the component to a separate function
2550
2551 2013-01-11 17:44:13 +0000  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2552
2553         * omx/gstomx.c:
2554         * omx/gstomx.h:
2555           omx: Add methods to set up and close a tunnel between components
2556
2557 2013-02-25 09:15:53 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2558
2559         * omx/gstomxaacenc.c:
2560         * omx/gstomxaudioenc.c:
2561         * omx/gstomxaudioenc.h:
2562           omxaudioenc: Rename component variable
2563
2564 2013-02-25 09:15:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2565
2566         * omx/gstomxh263enc.c:
2567         * omx/gstomxh264enc.c:
2568         * omx/gstomxmpeg4videoenc.c:
2569         * omx/gstomxvideoenc.c:
2570         * omx/gstomxvideoenc.h:
2571           omxvideoenc: Rename component variable
2572
2573 2013-02-25 09:12:22 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2574
2575         * omx/gstomxvideodec.c:
2576         * omx/gstomxvideodec.h:
2577           omxvideodec: Rename component variable
2578
2579 2013-02-22 16:27:33 +0100  Josep Torra <n770galaxy@gmail.com>
2580
2581         * omx/gstomxvideoenc.c:
2582           omxvideoenc: remove duplicated line
2583
2584 2013-02-22 10:42:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2585
2586         * omx/gstomx.c:
2587           Retry loading libbcm_host.so without an absolute path if that failed
2588
2589 2013-02-21 20:32:42 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2590
2591         * config/bellagio/Makefile.am:
2592           Add missing file from last commit
2593
2594 2013-02-21 11:01:28 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2595
2596         * config/Makefile.am:
2597         * config/bellagio/gstomx.conf:
2598         * configure.ac:
2599         * omx/Makefile.am:
2600           Add OpenMAX IL target for Bellagio
2601           Not tested since a very long time though.
2602
2603 2013-02-21 10:59:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2604
2605         * configure.ac:
2606         * omx/Makefile.am:
2607           Allow using external OpenMAX IL headers
2608
2609 2013-02-21 10:14:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2610
2611         * .gitignore:
2612           Update .gitignore
2613
2614 2013-02-21 10:13:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2615
2616         * config/Makefile.am:
2617         * config/rpi/Makefile.am:
2618         * config/rpi/gstomx.conf:
2619         * configure.ac:
2620           Install the RPI config when the RPI target is selected
2621
2622 2013-02-21 10:08:07 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2623
2624         * omx/gstomx.c:
2625           Set default hacks for the RPI target and always initialize bcm_host
2626
2627 2013-02-21 10:05:37 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2628
2629         * configure.ac:
2630           Add configure parameter for setting the OpenMAX IL target
2631
2632 2013-02-12 11:55:39 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2633
2634         * omx/gstomx.c:
2635           omx: Add FIXME for the future
2636
2637 2013-02-12 11:49:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2638
2639         * omx/gstomx.c:
2640         * omx/gstomx.h:
2641         * omx/gstomxaudioenc.c:
2642         * omx/gstomxaudioenc.h:
2643         * omx/gstomxvideodec.c:
2644         * omx/gstomxvideodec.h:
2645         * omx/gstomxvideoenc.c:
2646         * omx/gstomxvideoenc.h:
2647           omx: Some minor refactoring and cleanup
2648
2649 2013-02-12 11:45:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2650
2651         * omx/gstomx.c:
2652           omx: Don't access the port's buffers array if it wasn't allocated yet
2653
2654 2013-02-12 11:44:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2655
2656         * omx/gstomx.c:
2657           omx: Mark an array as const
2658
2659 2013-02-12 11:41:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2660
2661         * omx/gstomx.c:
2662         * omx/gstomx.h:
2663         * omx/gstomxaudioenc.c:
2664         * omx/gstomxvideodec.c:
2665         * omx/gstomxvideoenc.c:
2666           omx: Split enabling/disabling of port into sending the command and waiting for it
2667           This allows to do anything necessary after sending the command to actually let it finish
2668
2669 2013-02-12 11:37:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2670
2671         * omx/gstomx.c:
2672           omx: Flushing is also allowed in Paused state
2673
2674 2013-02-12 11:28:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2675
2676         * omx/gstomxvideoenc.c:
2677           omxvideoenc: Set stride, slice height and buffer size
2678
2679 2013-02-12 11:09:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2680
2681         * config/raspberry-pi.conf:
2682           config: Add h264 and mpeg2 encoders to the raspberry pi config
2683           Not completely working yet though.
2684
2685 2013-02-12 11:03:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2686
2687         * omx/gstomxvideoenc.c:
2688           omxvideoenc: Properly negotiate OMX color format with the component
2689
2690 2013-02-12 10:53:24 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2691
2692         * omx/gstomxvideoenc.c:
2693           omxvideoenc: Implement getcaps() vfunc
2694
2695 2013-01-29 21:32:53 +0000  Tim-Philipp Müller <tim@centricular.net>
2696
2697         * configure.ac:
2698           configure: use 1.0 gstconfig.h to detect disabled subsystems
2699           Update unused configure check for GStreamer core subsystem
2700           features from 0.10 to 1.0.
2701
2702 2013-01-28 20:44:41 +0100  Stefan Sauer <ensonic@users.sf.net>
2703
2704         * common:
2705           Automatic update of common submodule
2706           From a942293 to 2de221c
2707
2708 2013-01-24 14:02:36 +0100  Julian Scheel <julian@jusst.de>
2709
2710         * config/raspberry-pi.conf:
2711         * omx/Makefile.am:
2712         * omx/gstomx.c:
2713         * omx/gstomxmpeg2dec.c:
2714         * omx/gstomxmpeg2dec.h:
2715           omx: add mpeg2 video decoder
2716           This adds a decoder class for mpeg2, as well as an extended
2717           configuration for raspberry pi.
2718           https://bugzilla.gnome.org/show_bug.cgi?id=692446
2719           Signed-off-by: Julian Scheel <julian@jusst.de>
2720
2721 2013-01-18 16:47:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2722
2723         * omx/gstomx.c:
2724           omx: Minimize the time when the messages lock is held
2725           Fixes a deadlock if any OMX functions are called when the
2726           messages are handled.
2727           Thanks to Nicolas Dufresne for noticing.
2728
2729 2013-01-18 15:28:20 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
2730
2731         * omx/gstomx.c:
2732           omx: improve debug message when we can't find the config file
2733           Mention where we looked for the config file.
2734
2735 2013-01-18 12:34:38 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
2736
2737         * configure.ac:
2738           build: fix autogen.sh with automake 1.13
2739           AM_CONFIG_HEADER -> AC_CONFIG_HEADERS
2740
2741 2013-01-17 18:07:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2742
2743         * omx/gstomx.h:
2744         * omx/gstomxaudioenc.h:
2745         * omx/gstomxvideodec.h:
2746         * omx/gstomxvideoenc.h:
2747           omx: Fix includes to properly work with the 1.0 releases
2748
2749 2013-01-15 15:08:28 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
2750
2751         * common:
2752           Automatic update of common submodule
2753           From a72faea to a942293
2754
2755 2013-01-15 14:34:45 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2756
2757         * omx/gstomx.c:
2758           omx: Update port definition when changing some port setting
2759
2760 2013-01-14 11:41:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2761
2762         * omx/Makefile.am:
2763         * omx/gstomx.c:
2764           omx: Rename from libgstopenmax.so to ligstomx.so for consistency
2765
2766 2013-01-11 15:32:22 +0000  Nicolas Dufresne <nicolas.dufresne@collabora.com>
2767
2768         * omx/gstomx.c:
2769           omx: Add a method to send message
2770
2771 2013-01-11 15:44:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2772
2773         * omx/gstomx.c:
2774         * omx/gstomx.h:
2775           omx: Atomic ops are not required anymore for the reconfiguration
2776
2777 2013-01-11 12:52:10 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2778
2779         * omx/gstomxaudioenc.c:
2780         * omx/gstomxvideodec.c:
2781         * omx/gstomxvideoenc.c:
2782           omx: Fix some memory leaks and suboptimal locking
2783
2784 2013-01-11 12:34:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2785
2786         * omx/gstomxvideoenc.c:
2787           omxvideoenc: Don't forget to unmap frame in error cases
2788
2789 2013-01-11 12:29:20 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2790
2791         * omx/gstomxvideoenc.c:
2792           omxvideoenc: Fix copying of the video frames to the OMX buffers
2793
2794 2013-01-11 12:24:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2795
2796         * omx/gstomxvideodec.c:
2797           omxvideodec: Fix copying of the video frames from the OMX buffers
2798
2799 2013-01-10 14:44:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2800
2801         * omx/Makefile.am:
2802         * omx/gstomx.c:
2803         * omx/gstomx.h:
2804         * omx/gstomxaudioenc.c:
2805         * omx/gstomxrecmutex.c:
2806         * omx/gstomxrecmutex.h:
2807           omx: Implement new approach for locking that should solve all deadlocks on RPi
2808           No mutex is locked while calling any OpenMAX functions anymore
2809           and everything from the OpenMAX callbacks is inserted into a message
2810           queue and handled from outside the callbacks.
2811           Also there's only a single mutex and condition variable per component
2812           now for handling anything from OpenMAX callbacks and a single mutex
2813           for keeping our component/port state sane.
2814
2815 2012-12-20 19:30:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2816
2817         * omx/gstomxvideodec.c:
2818           omxvideodec: Set the OMX buffer nFilledLength field properly
2819
2820 2012-12-20 18:48:21 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2821
2822         * omx/gstomxrecmutex.c:
2823         * omx/gstomxrecmutex.h:
2824           omxrecmutex: Fix another race condition when two threads are trying to lock for recursion at the same time
2825
2826 2012-12-20 18:16:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2827
2828         * omx/gstomxrecmutex.c:
2829         * omx/gstomxrecmutex.h:
2830           omxrecmutex: Fix yet another race condition that resulted in deadlocks
2831
2832 2012-12-20 17:46:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2833
2834         * omx/gstomx.c:
2835         * omx/gstomxrecmutex.c:
2836         * omx/gstomxrecmutex.h:
2837           omx: Fix another race condition in the recursive mutex
2838           Between lock() and begin_recursion() it was possible for another thread to
2839           try to do a recursive_lock(). This would block because the mutex was already
2840           locked(), but not ready for recursive locking yet. unlock() would never
2841           happen in the original thread because it was waiting for the other thread
2842           to finish first.
2843           Happened on the Raspberry Pi.
2844
2845 2012-12-20 14:45:18 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2846
2847         * omx/gstomxrecmutex.c:
2848         * omx/gstomxrecmutex.h:
2849           omxrecmutex: Fix a small race condition when unlocking a non-recursive lock
2850
2851 2012-12-20 12:30:05 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2852
2853         * omx/gstomxaudioenc.c:
2854         * omx/gstomxvideodec.c:
2855         * omx/gstomxvideoenc.c:
2856           omx: Fix ununsed variable compiler warning
2857
2858 2012-12-20 12:27:47 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2859
2860         * omx/gstomxaudioenc.c:
2861         * omx/gstomxvideodec.c:
2862         * omx/gstomxvideoenc.c:
2863           omx: No need to start the srcpad task in ::start() already
2864           It will be started properly after the caps are set.
2865
2866 2012-12-20 12:23:49 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2867
2868         * omx/gstomxvideodec.c:
2869           omxvideodec: OMX_ErrorNoMore is no error and just means we ended iteration
2870
2871 2012-12-20 12:20:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2872
2873         * omx/gstomxaudioenc.c:
2874         * omx/gstomxvideodec.c:
2875         * omx/gstomxvideoenc.c:
2876           omx: Improve debug output
2877
2878 2012-12-20 12:02:30 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2879
2880         * omx/gstomxvideodec.c:
2881           omxvideodec: Don't forget to free a GList
2882
2883 2012-12-20 11:56:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2884
2885         * omx/gstomxvideodec.c:
2886           omxvideodec: Map OMX_COLOR_FormatYUV420PackedPlanar to I420 too
2887           This is used on the Raspberry Pi.
2888
2889 2012-12-20 11:55:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2890
2891         * omx/gstomxvideodec.c:
2892           omxvideodec: During negotiation of the output format make sure we use the correct OpenMAX format
2893
2894 2012-12-20 11:42:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2895
2896         * omx/gstomxvideodec.c:
2897           omxvideodec: If negotiation fails this could also mean that the component can't do it at this point yet
2898
2899 2012-12-20 11:40:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2900
2901         * omx/gstomxvideodec.c:
2902           omxvideodec: Improve format negotiation a bit
2903           Don't leak caps and make sure to fixate caps.
2904
2905 2012-12-19 13:05:28 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2906
2907         * omx/gstomx.h:
2908           omx: Also initialize nStep field of the OMX structures
2909
2910 2012-12-19 13:03:37 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2911
2912         * omx/gstomx.h:
2913           omx: Initialize struct version with the OMX version we compiled with
2914
2915 2012-12-19 12:44:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2916
2917         * omx/gstomxvideodec.c:
2918           omxvideodec: Extract data from the input buffer, not the codec data
2919
2920 2012-12-19 12:19:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2921
2922         * omx/gstomx.c:
2923         * tools/listcomponents.c:
2924           omx: Use has_suffix() instead of has_prefix() for the Broadcom hack
2925
2926 2012-12-19 12:08:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2927
2928         * Makefile.am:
2929         * configure.ac:
2930         * tools/Makefile.am:
2931         * tools/listcomponents.c:
2932           tools: Add tool to list all components and their roles
2933
2934 2012-12-19 11:31:51 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2935
2936         * omx/gstomx.c:
2937           omx: Add hack to load and initialize libbcm_host.so
2938           Needed on the Raspberry Pi. Patch based on a patch by
2939           George Kiagiadakis <george.kiagiadakis@collabora.com>
2940
2941 2012-12-19 11:22:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2942
2943         * configure.ac:
2944         * omx/gstomx.h:
2945           configure: Add configure option to pack OpenMAX structures
2946           This is required to set to 4 for the Raspberry Pi for example.
2947
2948 2012-12-19 11:07:44 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2949
2950         * configure.ac:
2951           configure: Require GStreamer 1.0.0
2952
2953 2012-04-20 17:13:52 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
2954
2955         * omx/gstomx.h:
2956           omx: Initialize structures to version 1.1.2
2957
2958 2012-12-19 09:51:22 +0000  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2959
2960         * Makefile.am:
2961         * config/Makefile.am:
2962         * config/raspberry-pi.conf:
2963         * configure.ac:
2964           config: Add raspberry-pi configuration in a different directory
2965
2966 2012-05-20 20:11:59 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
2967
2968         * omx/gstomx-raspberry.conf:
2969           raspberry: Add a gstomx.conf for the Raspberry Pi
2970
2971 2012-12-12 17:45:39 +0000  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2972
2973         * omx/gstomx.h:
2974         * omx/gstomxvideoenc.h:
2975           omx: Fix some compilation errors caused by circular includes
2976
2977 2012-11-19 11:29:44 +0000  Tim-Philipp Müller <tim@centricular.net>
2978
2979         * common:
2980           Automatic update of common submodule
2981           From 6bb6951 to a72faea
2982
2983 2012-11-12 15:14:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2984
2985         * omx/gstomxvideodec.c:
2986         * omx/gstomxvideoenc.c:
2987           omx: Fix refcount problem with frames being dropped because of decoder bugs
2988
2989 2012-11-12 11:29:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
2990
2991         * omx/gstomx.c:
2992         * omx/gstomx.h:
2993         * omx/gstomxaudioenc.c:
2994         * omx/gstomxaudioenc.h:
2995         * omx/gstomxrecmutex.c:
2996         * omx/gstomxrecmutex.h:
2997         * omx/gstomxvideodec.c:
2998         * omx/gstomxvideodec.h:
2999         * omx/gstomxvideoenc.c:
3000         * omx/gstomxvideoenc.h:
3001           omx: Update to new GLib thread API
3002
3003 2012-10-22 14:34:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3004
3005         * omx/gstomxvideodec.c:
3006         * omx/gstomxvideoenc.c:
3007           omx: Use open/close vfuncs
3008
3009 2012-10-22 14:28:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3010
3011         * omx/gstomxvideodec.c:
3012         * omx/gstomxvideoenc.c:
3013           omx: Handle video meta correctly
3014
3015 2012-06-20 13:11:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3016
3017         * omx/Makefile.am:
3018         * omx/gstbasevideocodec.c:
3019         * omx/gstbasevideocodec.h:
3020         * omx/gstbasevideodecoder.c:
3021         * omx/gstbasevideodecoder.h:
3022         * omx/gstbasevideoencoder.c:
3023         * omx/gstbasevideoencoder.h:
3024         * omx/gstbasevideoutils.c:
3025         * omx/gstbasevideoutils.h:
3026         * omx/gstomxh263dec.c:
3027         * omx/gstomxh263enc.c:
3028         * omx/gstomxh264dec.c:
3029         * omx/gstomxh264enc.c:
3030         * omx/gstomxmpeg4videodec.c:
3031         * omx/gstomxmpeg4videoenc.c:
3032         * omx/gstomxvideodec.c:
3033         * omx/gstomxvideodec.h:
3034         * omx/gstomxvideoenc.c:
3035         * omx/gstomxvideoenc.h:
3036         * omx/gstomxwmvdec.c:
3037           omx: Port to video base classes from -base
3038
3039 2012-10-17 17:57:43 +0100  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3040
3041         * omx/gstomxaacenc.c:
3042         * omx/gstomxh263dec.c:
3043         * omx/gstomxh263enc.c:
3044         * omx/gstomxh264dec.c:
3045         * omx/gstomxh264enc.c:
3046         * omx/gstomxmpeg4videodec.c:
3047         * omx/gstomxmpeg4videoenc.c:
3048         * omx/gstomxwmvdec.c:
3049           omx: gst_element_class_set_details_simple() -> set_static_metadata()
3050
3051 2012-10-06 15:01:11 +0100  Tim-Philipp Müller <tim@centricular.net>
3052
3053         * common:
3054           Automatic update of common submodule
3055           From 6c0b52c to 6bb6951
3056
3057 2012-09-22 16:10:38 +0100  Tim-Philipp Müller <tim@centricular.net>
3058
3059         * common:
3060           Automatic update of common submodule
3061           From 4f962f7 to 6c0b52c
3062
3063 2012-06-21 20:22:13 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
3064
3065         * omx/gstomx.c:
3066           omx: fix debug statement
3067
3068 2012-06-21 20:21:03 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
3069
3070         * omx/gstomx.c:
3071           omx: use recursive_lock inside set_last_error(), since this function may be called from an event handler
3072
3073 2012-08-22 13:31:59 +0200  Stefan Sauer <ensonic@users.sf.net>
3074
3075         * common:
3076           Automatic update of common submodule
3077           From 668acee to 4f962f7
3078
3079 2012-08-05 16:42:43 +0100  Tim-Philipp Müller <tim@centricular.net>
3080
3081         * common:
3082           Automatic update of common submodule
3083           From 94ccf4c to 668acee
3084
3085 2012-08-03 19:32:13 +0100  Tim-Philipp Müller <tim@centricular.net>
3086
3087         * omx/gstomx.c:
3088           omx: fix plugin name for new GST_PLUGIN_DEFINE API
3089
3090 2012-07-23 08:47:32 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3091
3092         * common:
3093           Automatic update of common submodule
3094           From 98e386f to 94ccf4c
3095
3096 2012-07-10 09:57:09 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3097
3098         * omx/gstbasevideodecoder.c:
3099           omx: Update for allocation query API changes
3100
3101 2012-06-20 11:09:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3102
3103         * omx/gstomxaudioenc.c:
3104         * omx/gstomxvideodec.c:
3105         * omx/gstomxvideoenc.c:
3106           omx: Fix compilation after gst_pad_start_task() API changes
3107
3108 2012-06-08 15:06:35 +0200  Edward Hervey <edward.hervey@collabora.co.uk>
3109
3110         * common:
3111           Automatic update of common submodule
3112           From 03a0e57 to 98e386f
3113
3114 2012-06-06 18:20:18 +0200  Edward Hervey <edward.hervey@collabora.co.uk>
3115
3116         * common:
3117           Automatic update of common submodule
3118           From 1fab359 to 03a0e57
3119
3120 2012-06-01 10:30:27 +0200  Edward Hervey <edward.hervey@collabora.co.uk>
3121
3122         * common:
3123           Automatic update of common submodule
3124           From f1b5a96 to 1fab359
3125
3126 2012-05-31 13:10:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3127
3128         * common:
3129           Automatic update of common submodule
3130           From 92b7266 to f1b5a96
3131
3132 2012-05-30 12:47:59 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3133
3134         * common:
3135           Automatic update of common submodule
3136           From ec1c4a8 to 92b7266
3137
3138 2012-05-30 11:26:30 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3139
3140         * common:
3141           Automatic update of common submodule
3142           From 3429ba6 to ec1c4a8
3143
3144 2012-05-13 15:58:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3145
3146         * common:
3147           Automatic update of common submodule
3148           From dc70203 to 3429ba6
3149
3150 2012-05-08 16:13:32 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
3151
3152         * omx/gstomx.c:
3153           omx: Fix spelling mistake found by lintian: s/Seperate/Separate/
3154
3155 2012-04-30 23:58:43 +0300  George Kiagiadakis <george.kiagiadakis@collabora.com>
3156
3157         * omx/Makefile.am:
3158         * omx/gstomx.c:
3159         * omx/gstomx.h:
3160         * omx/gstomxaudioenc.c:
3161         * omx/gstomxrecmutex.c:
3162         * omx/gstomxrecmutex.h:
3163         * omx/gstomxvideodec.c:
3164         * omx/gstomxvideoenc.c:
3165           Implement a new custom recursive mutex type and fix locking in callbacks so that in-context calls are allowed.
3166           According to the OMX specification, implementations are allowed to call
3167           callbacks in the context of their function calls. However, our callbacks
3168           take locks and this causes deadlocks if the unerlying OMX implementation
3169           uses this kind of in-context calls.
3170           A solution to the problem would be a recursive mutex. However, a normal
3171           recursive mutex does not fix the problem because it is not guaranteed
3172           that the callbacks are called from the same thread. What we see in Broadcom's
3173           implementation for example is:
3174           - OMX_Foo is called
3175           - OMX_Foo waits on a condition
3176           - A callback is executed in a different thread
3177           - When the callback returns, its calling function
3178           signals the condition that OMX_Foo waits on
3179           - OMX_Foo wakes up and returns
3180           The solution I came up with here is to take a second lock inside the callback,
3181           but only if recursion is expected to happen. Therefore, all calls to OMX
3182           functions are guarded by calls to gst_omx_rec_mutex_begin_recursion() / _end_recursion(),
3183           which effectively tells the mutex that at this point we want to allow calls
3184           to _recursive_lock() to succeed, although we are still holding the master lock.
3185
3186 2012-04-20 14:51:34 +0000  George Kiagiadakis <george.kiagiadakis@collabora.com>
3187
3188         * omx/gstomx.c:
3189         * omx/gstomx.h:
3190           omx: Add hack to disable setting roles to components.
3191           Conflicts:
3192           omx/gstomx.c
3193
3194 2012-04-30 23:20:24 +0000  George Kiagiadakis <george.kiagiadakis@collabora.com>
3195
3196         * omx/gstomx.h:
3197         * omx/gstomxvideodec.c:
3198           omxvideodec: Implement no-empty-eos-buffer hack, as in omxvideoenc.
3199           Conflicts:
3200           omx/gstomxvideodec.c
3201
3202 2012-04-30 23:19:55 +0000  George Kiagiadakis <george.kiagiadakis@collabora.com>
3203
3204         * omx/gstomxvideodec.c:
3205           omxvideodec: Fix coding style in the drain-may-not-return hack code
3206
3207 2012-04-25 19:03:48 +0530  Arun Raghavan <arun.raghavan@collabora.co.uk>
3208
3209         * omx/gstomx.c:
3210           omx: Fix trivial debug print bug
3211
3212 2012-04-25 19:01:32 +0530  Arun Raghavan <arun.raghavan@collabora.co.uk>
3213
3214         * omx/gstomx.c:
3215         * omx/gstomx.h:
3216         * omx/gstomxvideodec.c:
3217           omxvideodec: Add hack for Ducati components not returning from drain
3218           This happens on the Galaxy Nexus, and causes the pipeline to hang waiting
3219           endlessly for a drain. The hack replaces the wait with a wait + 500ms timeout.
3220
3221 2012-04-25 16:35:40 +0530  Arun Raghavan <arun.raghavan@collabora.co.uk>
3222
3223         * omx/gstomx.c:
3224           omx: Fix deadlock between ending a flush and the event handler
3225           gst_omx_port_set_flushing() calls OMX_FillThisBuffer at the end of a flush
3226           without releasing the port lock, and this can cause a deadlock with the
3227           EventHandler. This patches fixes this by dropping the lock for the duration of
3228           the fill buffer call.
3229
3230 2012-04-24 15:41:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3231
3232         * omx/gstbasevideodecoder.c:
3233         * omx/gstbasevideoencoder.c:
3234           omx: Update video encoder/decoder base classes from gst-plugins-bad
3235
3236 2012-04-16 09:16:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3237
3238         * configure.ac:
3239           configure: Modernize autotools setup a bit
3240           Also we now only create tar.bz2 and tar.xz tarballs.
3241
3242 2012-04-16 09:12:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3243
3244         * common:
3245           Automatic update of common submodule
3246
3247 2012-04-16 08:34:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3248
3249         * omx/gstomxaudioenc.c:
3250           omxaudioenc: Use gst_buffer_extract() to copy the input buffer data to the OpenMAX buffer
3251
3252 2012-04-13 17:16:42 -0400  Alessandro Decina <alessandro.decina@collabora.com>
3253
3254         * omx/Makefile.am:
3255           Fix relative/absolute path glitch
3256           Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
3257
3258 2012-04-12 15:57:32 -0400  Olivier Crête <olivier.crete@collabora.com>
3259
3260         * common:
3261         * configure.ac:
3262         * omx/Makefile.am:
3263         * omx/gstbasevideocodec.c:
3264         * omx/gstbasevideocodec.h:
3265         * omx/gstbasevideodecoder.c:
3266         * omx/gstbasevideodecoder.h:
3267         * omx/gstbasevideoencoder.c:
3268         * omx/gstbasevideoencoder.h:
3269         * omx/gstomx.c:
3270         * omx/gstomx.h:
3271         * omx/gstomxaacenc.c:
3272         * omx/gstomxaudioenc.c:
3273         * omx/gstomxaudioenc.h:
3274         * omx/gstomxh263dec.c:
3275         * omx/gstomxh263enc.c:
3276         * omx/gstomxh264dec.c:
3277         * omx/gstomxh264enc.c:
3278         * omx/gstomxmpeg4videodec.c:
3279         * omx/gstomxmpeg4videoenc.c:
3280         * omx/gstomxvideodec.c:
3281         * omx/gstomxvideodec.h:
3282         * omx/gstomxvideoenc.c:
3283         * omx/gstomxvideoenc.h:
3284         * omx/gstomxwmvdec.c:
3285           Port to Gst 0.11
3286
3287 2012-01-18 16:53:16 -0300  Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
3288
3289         * Android.mk:
3290         * omx/Makefile.am:
3291           Enable building with Android's buildsystem
3292           This change adds prelimary buildsystem hooks to
3293           build gst-omx with the Android buildsystem. Like
3294           the rest of GStreamer's Android hooks, the process
3295           relies on the availability of androgenizer. A tool
3296           developed by Collabora to automatically generate
3297           Android.mk files from within the auto* setup.
3298           Androgenizer is currently available at:
3299           http://cgit.collabora.com/git/user/derek/androgenizer.git/
3300
3301 2011-12-13 10:17:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3302
3303         * omx/gstbasevideocodec.c:
3304           basevideocodec: Don't use G_TYPE_REGISTER_BOXED() yet
3305           This would require GLib 2.26.
3306
3307 2011-12-14 10:09:34 +0100  Jonas Larsson <Jonas.Larsson@palm.com>
3308
3309         * omx/gstomxaudioenc.c:
3310           omxaudioenc: Add hack for encoder components that don't allow empty EOS buffers
3311
3312 2011-12-14 10:07:29 +0100  Jonas Larsson <Jonas.Larsson@palm.com>
3313
3314         * omx/gstomxvideoenc.c:
3315           omxvideoenc: Fix deadlock when using the EOS hack
3316
3317 2011-12-12 14:26:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3318
3319         * omx/gstomxvideoenc.c:
3320           omxvideoenc: Remove workaround for basevideocodec bug
3321
3322 2011-12-12 14:26:34 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3323
3324         * omx/gstomxvideodec.c:
3325           omxvideodec: Remove workaround for basevideocodec bug
3326
3327 2011-12-05 17:57:01 +0000  Matej Knopp <matej.knopp@gmail.com>
3328
3329         * omx/gstbasevideocodec.c:
3330         * omx/gstbasevideocodec.h:
3331         * omx/gstbasevideodecoder.c:
3332         * omx/gstbasevideoencoder.c:
3333           basevideo: Make GstVideoFrame a reference counted boxed object
3334           ...and also clear all existing frames when resetting the decoder or encoder.
3335
3336 2011-12-09 12:17:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3337
3338         * omx/gstomx.c:
3339         * omx/gstomx.h:
3340         * omx/gstomxvideoenc.c:
3341           omx: Add hack for encoder components that don't allow empty EOS buffers
3342
3343 2011-12-09 10:21:47 +0100  Dake Gu <Dake.Gu@palm.com>
3344
3345         * omx/gstomxaacenc.c:
3346           omxaacenc: Generate and set codec_data on the caps for raw AAC
3347
3348 2011-10-31 11:36:06 +0100  Alessandro Decina <alessandro.decina@collabora.co.uk>
3349
3350         * omx/gstbasevideoencoder.c:
3351           basevideoencoder: handle failures in start() and stop()
3352
3353 2011-08-26 10:50:38 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
3354
3355         * omx/gstbasevideoencoder.c:
3356           basevideoenc: do not try to calculate latency from an unknown framerate
3357           It'll divide by zero, and latency is unknown for an unknown framerate.
3358           Fixes an assert in the schroenc test.
3359           https://bugzilla.gnome.org/show_bug.cgi?id=657419
3360
3361 2011-12-08 11:50:49 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3362
3363         * omx/gstbasevideoencoder.c:
3364           basevideoencoder: Only make the header buffer metadata writable, not the buffer
3365
3366 2011-12-08 10:18:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3367
3368         * omx/gstbasevideoencoder.c:
3369           basevideoencoder: Fix handling of force-keyunit events
3370
3371 2011-12-06 13:28:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3372
3373         * omx/gstomxaudioenc.c:
3374           omxaudioenc: Don't forward EOS events immediately but let all other events be handled by the base class
3375           Previously this logic was inversed, which did not make any sense at all.
3376
3377 2011-12-06 12:47:25 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3378
3379         * omx/gstomxaudioenc.c:
3380         * omx/gstomxaudioenc.h:
3381           omxaudioenc: Use correct timestamp, duration and filled length for the EOS buffers
3382
3383 2011-12-06 12:47:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3384
3385         * omx/gstomxvideodec.c:
3386         * omx/gstomxvideodec.h:
3387           omxvideodec: Use correct timestamp, duration and filled length for the EOS buffers
3388
3389 2011-12-06 12:46:51 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3390
3391         * omx/gstomxvideoenc.c:
3392         * omx/gstomxvideoenc.h:
3393           omxvideoenc: Use correct timestamp, duration and filled length for the EOS buffers
3394
3395 2011-12-05 13:18:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3396
3397         * omx/gstomx.c:
3398           omx: Improve debugging of buffer handling
3399
3400 2011-12-05 08:12:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3401
3402         * omx/gstomxvideoenc.c:
3403           omxvideoenc: Drop EOS events in ::finish()
3404           The event will be forwarded downstream from the srcpad
3405           loop function after the last buffer was generated by the
3406           component. Forwarding it after ::finish() will use the
3407           sinkpad streaming thread and does not guarantee that
3408           the encoder is completely drained.
3409
3410 2011-12-01 16:20:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3411
3412         * omx/gstomxvideodec.c:
3413           omxvideodec: Properly drop frames due to QoS
3414           Instead of finishing them they should be passed to drop(), which
3415           will then send QoS messages.
3416
3417 2011-11-29 12:21:32 +0100  Jonas Larsson <jonas@hallerud.se>
3418
3419         * omx/gstomxh264enc.c:
3420           omxh264enc: Add support for resending headers after a forced-keyframe
3421
3422 2011-11-29 12:12:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3423
3424         * omx/gstbasevideocodec.h:
3425         * omx/gstbasevideoencoder.c:
3426           basevideoencoder: Pass the all-headers field of the force-key-unit event to the subclass
3427
3428 2011-11-29 12:12:04 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3429
3430         * omx/gstbasevideoencoder.c:
3431         * omx/gstbasevideoencoder.h:
3432           basevideoencoder: Implement full support for the new force-key-unit event
3433           Including support for the running-time and count fields.
3434
3435 2011-11-29 09:31:11 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3436
3437         * omx/gstbasevideoencoder.c:
3438           basevideoencoder: Use new force-keyunit event API from gst-plugins-base
3439
3440 2011-11-29 09:18:19 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3441
3442         * omx/gstbasevideoencoder.c:
3443         * omx/gstbasevideoencoder.h:
3444           basevideoencoder: Adjusting padding is not required for -bad libraries
3445
3446 2011-11-28 19:48:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3447
3448         * omx/gstbasevideoencoder.h:
3449           basevideoencoder: Move some fields to the private part of the instance struct
3450
3451 2011-11-28 19:36:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3452
3453         * omx/gstbasevideoencoder.c:
3454           basevideoencoder: Make headers metadata writable before pushing downstream
3455           The timestamp, duration, etc of the headers has to be changed.
3456
3457 2011-11-28 19:35:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3458
3459         * omx/gstbasevideoencoder.c:
3460         * omx/gstbasevideoencoder.h:
3461           basevideoencoder: Push the downstream force-keyframe event after the next keyframe
3462           Even if the corresponding GstVideoFrame doesn't have the is_sync_point
3463           flag set.
3464
3465 2011-11-28 19:29:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3466
3467         * omx/gstbasevideoencoder.c:
3468         * omx/gstbasevideoencoder.h:
3469           basevideoencoder: Don't push an upstream force-keyunit event downstream
3470
3471 2011-11-25 11:48:08 +0100  Jonas Larsson <jonas@hallerud.se>
3472
3473         * omx/gstbasevideoencoder.c:
3474         * omx/gstbasevideoencoder.h:
3475           basevideoencoder: Add initial support for the all-headers field of the force-keyframe event
3476           See bug #607742.
3477
3478 2011-11-25 11:37:39 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3479
3480         * omx/gstbasevideodecoder.c:
3481           basevideodecoder: some more debug logging
3482
3483 2011-11-23 20:03:32 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3484
3485         * omx/gstbasevideodecoder.c:
3486         * omx/gstbasevideodecoder.h:
3487           basevideodecoder: add API to drop a frame and post a QoS message on the bus
3488           https://bugzilla.gnome.org/show_bug.cgi?id=640017
3489           API: gst_base_video_decoder_drop_frame()
3490
3491 2011-11-22 23:04:49 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3492
3493         * omx/gstbasevideodecoder.c:
3494           docs: fix comment in gst_base_video_decoder_get_max_decode_time() docs
3495
3496 2011-11-22 19:57:07 +0000  Tim-Philipp Müller <tim.muller@collabora.co.uk>
3497
3498         * omx/gstbasevideodecoder.c:
3499           basevideodecoder: fix weird event list handling
3500           Get rid of weird code that copies a list manually, taking
3501           ownership of the elements and then frees the old list. Instead,
3502           just take over the old list entirely. (If the intent was to
3503           reverse the list, one could use g_list_reverse() instead).
3504           Then, push events in the list out from last to first (since they
3505           were prepended as they came in) instead of just pushing out the
3506           last in the list and leaking the others.
3507
3508 2011-11-25 11:31:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3509
3510         * configure.ac:
3511         * omx/Makefile.am:
3512         * omx/gstbaseaudiodecoder.c:
3513         * omx/gstbaseaudiodecoder.h:
3514         * omx/gstbaseaudioencoder.c:
3515         * omx/gstbaseaudioencoder.h:
3516         * omx/gstbaseaudioutils.c:
3517         * omx/gstbaseaudioutils.h:
3518         * omx/gstomxaacenc.c:
3519         * omx/gstomxaudioenc.c:
3520         * omx/gstomxaudioenc.h:
3521           omxaudioenc: Use audio base classes from gst-plugins-base instead of having our own copies
3522
3523 2011-11-18 10:00:31 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3524
3525         * omx/gstomxaudioenc.c:
3526           omxaudioenc: First set ports to flushing before waiting for the srcpad streaming thread to finish
3527
3528 2011-11-18 09:59:43 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3529
3530         * omx/gstomxvideoenc.c:
3531           omxvideoenc: First set ports to flushing before waiting for the srcpad streaming thread to finish
3532
3533 2011-11-18 09:58:58 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3534
3535         * omx/gstomxvideodec.c:
3536           omxvideodec: First set ports to flushing before waiting for the srcpad streaming thread to finish
3537
3538 2011-11-17 14:38:54 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3539
3540         * omx/gstomx.c:
3541           omx: Only disabling of a port is like flushing, enabling is like unflushing
3542
3543 2011-11-17 13:33:35 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3544
3545         * omx/gstomx.c:
3546           omx: Enabling/disabling a port is also like flushing
3547           The component returns all buffers to us and shouldn't get any
3548           new buffers passed anymore.
3549
3550 2011-11-17 11:26:33 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3551
3552         * omx/gstomxaudioenc.c:
3553           omxaudioenc: Signal the drain GCond even if downstream returned an error
3554
3555 2011-11-17 11:26:20 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3556
3557         * omx/gstomxvideoenc.c:
3558           omxvideoenc: Signal the drain GCond even if downstream returned an error
3559
3560 2011-11-17 11:25:52 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3561
3562         * omx/gstomxvideodec.c:
3563           omxvideodec: Signal the drain GCond even if downstream returned an error
3564
3565 2011-11-17 10:34:19 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3566
3567         * omx/gstbasevideoencoder.c:
3568           basevideoencoder: Only call ::reset once in READY->PAUSED
3569
3570 2011-11-17 10:19:35 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3571
3572         * omx/gstomxaudioenc.c:
3573           omxaudioenc: Shutdown component in PAUSED->READY and deallocate buffers
3574
3575 2011-11-17 10:19:30 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3576
3577         * omx/gstomxvideoenc.c:
3578           omxvideoenc: Shutdown component in PAUSED->READY and deallocate buffers
3579
3580 2011-11-17 10:19:10 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3581
3582         * omx/gstomxvideodec.c:
3583           omxvideodec: Shutdown component in PAUSED->READY and deallocate buffers
3584
3585 2011-11-16 12:02:08 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3586
3587         * omx/gstomxvideoenc.c:
3588           omxvideoenc: Set force_keyframe to FALSE after handling it
3589           There's no reason why the base class should forward the event
3590           further downstream if we already handled it and will insert a
3591           keyframe.
3592
3593 2011-11-16 11:21:25 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3594
3595         * omx/gstomxvideodec.c:
3596           omxvideodec: Always push buffers downstream, even if we didn't find a corresponding GstVideoFrame
3597
3598 2011-11-15 09:47:55 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3599
3600         * omx/gstomx.c:
3601           omx: Fix debug level for flushing in wrong state from ERROR to DEBUG
3602           It's not really an error and doesn't matter at all if flush is called
3603           when the component is not running.
3604
3605 2011-11-15 08:40:07 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3606
3607         * omx/gstomxh264enc.c:
3608           omxh264enc: Detect bytestream stream format and don't put SPS/PPS into the caps for this format
3609
3610 2011-11-15 08:28:32 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3611
3612         * omx/gstomxvideoenc.c:
3613         * omx/gstomxvideoenc.h:
3614           omxvideoenc: Add vfunc for handling the output frames
3615           This can be used by subclasses to override the buffer flags
3616           or to handle some frames differently than the default behaviour.
3617
3618 2011-11-14 12:50:26 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3619
3620         * omx/gstomxvideodec.c:
3621           omxvideodec: Don't release buffers twice if dropping because of QoS
3622
3623 2011-11-14 09:13:06 -0800  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3624
3625         * omx/gstomx.c:
3626           omx: Add XXX to the nOffset reset hack comment for QCOM
3627
3628 2011-11-10 15:18:08 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3629
3630         * omx/gstomxaudioenc.c:
3631           omxaudioenc: Make srcpad caps setting threadsafe
3632
3633 2011-11-10 15:17:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3634
3635         * omx/gstomxvideoenc.c:
3636           omxvideoenc: Make srcpad caps setting threadsafe
3637
3638 2011-11-10 15:17:41 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3639
3640         * omx/gstomxvideodec.c:
3641           omxvideodec: Make srcpad caps setting threadsafe
3642
3643 2011-11-10 15:10:14 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3644
3645         * omx/gstomxaudioenc.c:
3646           omxaudioenc: Make the srcpad task and the sinkpad streaming thread handling threadsafe
3647
3648 2011-11-10 15:03:05 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3649
3650         * omx/gstomxaudioenc.c:
3651           omxaudioenc: Always flush the ports and make sure no processing is happening in ::flush
3652           This fixes a race condition that happened when seeking
3653           very often in a short period of time.
3654
3655 2011-11-10 15:02:22 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3656
3657         * omx/gstomxvideoenc.c:
3658           omxvideoenc: Always flush the ports and make sure no processing is happening in ::reset
3659           This fixes a race condition that happened when seeking
3660           very often in a short period of time.
3661
3662 2011-11-10 15:01:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3663
3664         * omx/gstomxvideoenc.c:
3665           omxvideoenc: Fix minor race condition when draining after upstream signalled EOS
3666
3667 2011-11-10 14:56:19 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3668
3669         * omx/gstomxaudioenc.c:
3670           omxaudioenc: Improve EOS handling
3671           If downstream return UNEXPECTED we should still signal the
3672           drain cond because nothing will trigger this again later.
3673
3674 2011-11-10 14:56:11 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3675
3676         * omx/gstomxvideoenc.c:
3677           omxvideoenc: Improve EOS handling
3678           If downstream return UNEXPECTED we should still signal the
3679           drain cond because nothing will trigger this again later.
3680
3681 2011-11-10 14:54:33 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3682
3683         * omx/gstomxaudioenc.c:
3684           omxaudioenc: Improve debugging of EOS and draining
3685
3686 2011-11-10 14:54:17 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3687
3688         * omx/gstomxvideoenc.c:
3689           omxvideoenc: Improve debugging of EOS and draining
3690
3691 2011-11-10 14:51:06 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3692
3693         * omx/gstomxvideodec.c:
3694           omxvideodec: Log if acquiring buffer for EOS failed
3695
3696 2011-11-10 14:42:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3697
3698         * omx/gstomxvideodec.c:
3699           omxvideodec: The component is not started in READY
3700
3701 2011-11-10 14:39:40 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3702
3703         * omx/gstomxaudioenc.c:
3704           omxaudioenc: No need to signal the drain cond when going from READY to PAUSED
3705           Also the component is not started in READY
3706
3707 2011-11-10 14:40:56 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3708
3709         * omx/gstomxvideoenc.c:
3710           omxvideoenc: No need to signal the drain cond when going from READY to PAUSED
3711           Also the component is not started in READY.
3712
3713 2011-11-09 15:46:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3714
3715         * omx/gstomxvideodec.c:
3716           omxvideodec: Always flush the ports and make sure no processing is happening in ::reset
3717           This fixes a race condition that happened when seeking
3718           very often in a short period of time.
3719
3720 2011-11-09 15:45:20 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3721
3722         * omx/gstomxvideodec.c:
3723           omxvideodec: Fix minor race condition when draining after upstream signalled EOS
3724
3725 2011-11-09 15:44:11 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3726
3727         * omx/gstomxvideodec.c:
3728           omxvideodec: Improve EOS handling
3729           If downstream return UNEXPECTED we should still signal the
3730           drain cond because nothing will trigger this again later.
3731
3732 2011-11-09 15:43:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3733
3734         * omx/gstomxvideodec.c:
3735           omxvideodec: Improve debugging of EOS and draining
3736
3737 2011-11-09 15:42:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3738
3739         * omx/gstomxvideodec.c:
3740           omxvideodec: The component is not started already when going from READY to PAUSED
3741
3742 2011-11-09 15:42:13 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3743
3744         * omx/gstomxvideodec.c:
3745           omxvideodec: No need to signal the drain cond when going from READY to PAUSED
3746
3747 2011-11-09 15:41:02 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3748
3749         * omx/gstomx.c:
3750           omx: Always reset buffer flags for output ports, even in flushing/error state
3751
3752 2011-11-09 09:00:57 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3753
3754         * omx/gstomxvideodec.c:
3755           omxvideodec: Improve debugging in case of QoS-related frame drops
3756
3757 2011-11-08 12:46:31 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3758
3759         * omx/gstomxvideoenc.c:
3760           omxvideoenc: Release the video codec stream lock before acquiring an input buffer
3761           Otherwise the srcpad task might block on this lock and
3762           no buffers ever become available again.
3763
3764 2011-11-08 12:45:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3765
3766         * omx/gstomxaudioenc.c:
3767           omxaudioenc: Release the audio encoder stream lock before acquiring an input buffer
3768           Otherwise the srcpad task might block on this lock and
3769           no buffers ever become available again.
3770
3771 2011-11-08 12:42:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3772
3773         * omx/gstomxvideodec.c:
3774           omxvideodec: Release the video codec stream lock before acquiring an input buffer
3775           Otherwise the srcpad task might block on this lock and
3776           no buffers ever become available again.
3777
3778 2011-11-08 11:07:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3779
3780         * omx/gstomxaudioenc.c:
3781         * omx/gstomxaudioenc.h:
3782           omxaudioenc: Don't try to drain the component after EOS
3783           And don't send EOS twice in any case. This most likely
3784           will cause the component to not output it again and
3785           is not necessary anyway.
3786
3787 2011-11-08 11:03:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3788
3789         * omx/gstomxvideoenc.c:
3790         * omx/gstomxvideoenc.h:
3791           omxvideoenc: Don't try to drain the component after EOS
3792           And don't send EOS twice in any case. This most likely
3793           will cause the component to not output it again and
3794           is not necessary anyway.
3795
3796 2011-11-08 10:46:36 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3797
3798         * omx/gstomxvideodec.c:
3799         * omx/gstomxvideodec.h:
3800           omxvideodec: Don't try to drain the component after EOS
3801           And don't send EOS twice in any case. This most likely
3802           will cause the component to not output it again and
3803           is not necessary anyway.
3804
3805 2011-11-08 09:09:28 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3806
3807         * omx/gstomxvideodec.c:
3808           omxvideodec: Implement dropping of too late frames via QoS
3809
3810 2011-11-08 08:31:58 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3811
3812         * omx/gstomxaudioenc.c:
3813           omxaudioenc: Minor code refactoring
3814
3815 2011-11-08 08:31:43 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3816
3817         * omx/gstomxvideoenc.c:
3818           omxvideoenc: Minor code refactoring
3819
3820 2011-11-08 08:31:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3821
3822         * omx/gstomxvideodec.c:
3823           omxvideodec: Make sure to always release buffers back to OMX
3824
3825 2011-11-08 08:24:19 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3826
3827         * omx/gstomx.c:
3828           omx: Also properly release buffers when in error state
3829
3830 2011-11-08 08:22:08 +0100  Jonas Larsson <Jonas.Larsson@palm.com>
3831
3832         * omx/gstomx.c:
3833           omx: Properly release buffers during flushing
3834           We can't pass them back to OMX_FillThisBuffer() or OMX_EmptyThisBuffer()
3835           but instead of doing nothing we have to put them back into our queue.
3836           Otherwise the buffer is leaked and we will have too few buffers in
3837           the future.
3838
3839 2011-11-07 14:00:47 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3840
3841         * omx/gstomxvideodec.c:
3842           omxvideodec: Free pending frames after draining component
3843
3844 2011-11-07 14:00:35 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3845
3846         * omx/gstomxvideoenc.c:
3847           omxvideoenc: Free pending frames after draining the component
3848
3849 2011-11-07 11:07:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3850
3851         * omx/gstomxvideoenc.c:
3852           omxvideoenc: Make handling and usage of the base video codec frames threadsafe
3853
3854 2011-11-07 11:05:29 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3855
3856         * omx/gstomxvideoenc.c:
3857           omxvideoenc: Fix deadlock between srcpad stream lock and ::reset()
3858
3859 2011-11-07 11:04:27 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3860
3861         * omx/gstomxvideodec.c:
3862           omxvideoenc: Make handling and usage of the base video codec frames threadsafe
3863
3864 2011-11-07 10:58:44 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3865
3866         * omx/gstomxvideoenc.c:
3867           omxvideoenc: Free all pending frames after draining the component
3868
3869 2011-11-07 10:58:24 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3870
3871         * omx/gstomxvideodec.c:
3872           omxvideodec: Always free all pending frames when caps changes require reconfiguration
3873
3874 2011-11-04 09:43:48 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3875
3876         * omx/gstomxaudioenc.c:
3877           omxaudioenc: Only drain the component a single time and only after processing started
3878
3879 2011-11-04 09:43:32 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3880
3881         * omx/gstomxvideodec.c:
3882           omxvideodec: Only drain the component a single time and only after processing started
3883
3884 2011-11-04 09:43:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3885
3886         * omx/gstomxvideoenc.c:
3887           omxvideoenc: Only drain the component a single time and only after processing started
3888
3889 2011-11-04 09:04:16 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3890
3891         * omx/gstomx.c:
3892           omx: Reset buffer flags to 0 after it was consumed by the component or the element
3893           Some implementations don't reset the flags and the standard is not
3894           really clear on the expected behaviour. Let's just always reset the
3895           flags as they're not valid at this point anymore.
3896
3897 2011-11-02 13:50:14 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3898
3899         * omx/gstomxvideoenc.c:
3900         * omx/gstomxvideoenc.h:
3901           omxvideoenc: Better handling of encoder parameters
3902           Only set them if necessary and allow to use the component
3903           defaults.
3904
3905 2011-11-02 13:22:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3906
3907         * omx/gstomxvideoenc.c:
3908           omxvideoenc: Make unsupported bitrate/quantizer settings less fatal
3909
3910 2011-11-02 10:39:50 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3911
3912         * omx/gstomxvideodec.c:
3913           omxvideodec: If no stride was set for the OMX output port assume GStreamer stride
3914           This is not really correct but there's nothing else we could do.
3915
3916 2011-11-02 10:39:10 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3917
3918         * omx/gstomxvideoenc.c:
3919           omxvideoenc: If no stride was set for the OMX input port assume GStreamer stride
3920           This is not really correct but there's nothing else we could do.
3921
3922 2011-11-01 16:46:09 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3923
3924         * omx/gstomxaudioenc.c:
3925         * omx/gstomxaudioenc.h:
3926           omxaudioenc: Implement draining of the component and use it
3927           This makes sure that all buffers are encoded and pushed downstream
3928           before flushing the ports and losing some buffers.
3929
3930 2011-11-01 16:41:46 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3931
3932         * omx/gstomxvideoenc.c:
3933         * omx/gstomxvideoenc.h:
3934           omxvideoenc: Implement draining of the component and use it
3935           This makes sure that all buffers are encoded and pushed downstream
3936           before flushing the ports and losing some buffers.
3937
3938 2011-11-01 16:08:59 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3939
3940         * omx/gstomxvideodec.c:
3941         * omx/gstomxvideodec.h:
3942           omxvideodec: Implement draining of the component and use it
3943           This makes sure that all buffers are decoded and pushed downstream
3944           before flushing the ports and losing some buffers.
3945
3946 2011-10-20 14:32:40 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3947
3948         * omx/gstomxvideodec.c:
3949           omxvideodec: Fix deadlock if ::reset is called before finding the corresponding frame of a decoded buffer
3950
3951 2011-11-01 15:10:12 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3952
3953         * omx/gstomxaudioenc.c:
3954         * omx/gstomxaudioenc.h:
3955         * omx/gstomxvideoenc.h:
3956           omxaudioenc: Forward downstream flow returns to upstream
3957
3958 2011-11-01 15:10:01 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3959
3960         * omx/gstomxvideoenc.c:
3961           omxvideoenc: Forward downstream flow returns to upstream
3962
3963 2011-11-01 13:58:38 +0100  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3964
3965         * omx/gstomxvideodec.c:
3966         * omx/gstomxvideodec.h:
3967           omxvideodec: Forward downstream flow returns to upstream
3968
3969 2011-10-25 14:23:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3970
3971         * README:
3972           omx: Add minimal README file
3973
3974 2011-10-20 15:21:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3975
3976         * omx/gstomxvideodec.c:
3977           omxvideodec: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock
3978
3979 2011-10-20 15:20:47 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3980
3981         * omx/gstomxvideoenc.c:
3982           omxvideoenc: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock
3983
3984 2011-10-20 14:30:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3985
3986         * omx/gstomxvideodec.c:
3987           omxvideodec: Move locking at the correct place
3988
3989 2011-10-14 10:27:47 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3990
3991         * omx/gstomx.c:
3992         * omx/gstomx.h:
3993           omx: Remove QCOM hack to reset nOffset in EmptyBufferDone
3994           This is now done in a generic way that does not require any
3995           hacks because it will work without any side effects on any
3996           OMX implementation.
3997
3998 2011-10-14 10:26:00 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
3999
4000         * omx/gstomx.c:
4001           omx: Reset nOffset to 0 in EmptyBufferDone if nFilledLen is 0
4002           Some OMX implementations don't reset nOffset when the complete
4003           buffer is emptied but instead only reset nFilledLen. We reset
4004           nOffset to 0 if nFilledLen == 0, which is safe to do because
4005           the offset *must* be 0 if the buffer is not filled at all.
4006           Seen in QCOM's OMX implementation.
4007
4008 2011-10-04 10:56:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4009
4010         * omx/gstomxvideoenc.c:
4011           omxvideoenc: If one parameter/configuration is not supported don't skip the next
4012
4013 2011-10-03 09:12:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4014
4015         * omx/gstomxh264dec.c:
4016           omxh264dec: Require stream-format=byte-stream
4017           Other stream-formats are unlikely to be supported by OMX components.
4018
4019 2011-09-29 10:37:32 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4020
4021         * omx/gstomxvideodec.c:
4022         * omx/gstomxvideodec.h:
4023           omxvideodec: Add API for subclasses to prepare/convert frames
4024
4025 2011-09-27 15:08:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4026
4027         * omx/gstomxaudioenc.c:
4028           omxaudioenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers
4029           Allocating buffers before the Idle state is reached can lead to crashes.
4030
4031 2011-09-27 15:08:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4032
4033         * omx/gstomxvideoenc.c:
4034           omxvideoenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers
4035           Allocating buffers before the Idle state is reached can lead to crashes.
4036
4037 2011-09-27 15:05:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4038
4039         * omx/gstomxvideodec.c:
4040           omxvideodec: Switch to Idle first and wait before switching to Loaded and deallocating buffers
4041           Allocating buffers before the Idle state is reached can lead to crashes.
4042
4043 2011-09-27 14:15:06 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4044
4045         * omx/gstomx.c:
4046         * omx/gstomx.h:
4047         * omx/gstomxvideodec.c:
4048           omxvideodec: New hack for QCOM to recreate the component instead of reconfiguring it on caps changes
4049
4050 2011-09-27 12:13:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4051
4052         * omx/gstomx.c:
4053           omx: Change a g_assert() into a GST_WARNING_OBJECT()
4054
4055 2011-09-26 13:04:18 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4056
4057         * omx/gstomx.c:
4058         * omx/gstomx.h:
4059           omx: Add hack for Qualcomm's OMX implementation to manually reset nOffset in EmptyBufferDone
4060
4061 2011-09-23 17:02:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4062
4063         * omx/gstomxaudioenc.c:
4064           omxaudioenc: Add a check to prevent a zero-sized OMX buffer
4065
4066 2011-09-23 17:02:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4067
4068         * omx/gstomxvideoenc.c:
4069           omxvideoenc: Add some more checks for correct OMX buffer sizes
4070
4071 2011-09-23 15:53:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4072
4073         * omx/gstomxvideodec.c:
4074           omxvideodec: Add some more checks for OMX buffer sizes
4075
4076 2011-09-14 10:15:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4077
4078         * omx/gstomx.c:
4079         * omx/gstomx.h:
4080         * omx/gstomxaudioenc.c:
4081         * omx/gstomxvideodec.c:
4082         * omx/gstomxvideoenc.c:
4083           omx: Wait until the Executing state is reached before calling OMX_FillThisBuffer()
4084           This correctly works around the QCOM race condition that happens when calling
4085           FTB after setting the new state and before reaching it.
4086
4087 2011-09-02 14:43:43 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4088
4089         * omx/gstomxvideodec.c:
4090           omxvideodec: Negotiate video format with downstream and what the component claims to support
4091
4092 2011-08-25 19:56:58 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
4093
4094         * omx/gstbasevideoencoder.c:
4095           basevideoencoder: fix element leak
4096           and this concludes an hour of yelling at the bloody test failing,
4097           only to track down the problem not being in the test.
4098           https://bugzilla.gnome.org/show_bug.cgi?id=657368
4099
4100 2011-08-19 09:20:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4101
4102         * omx/gstomxvideoenc.c:
4103           omxvideoenc: Release basevideocodec stream lock while waiting for a buffer
4104           This prevents deadlocks if no empty input buffers are available and
4105           releasing input buffers requires the loop function to handle some
4106           output buffers first.
4107
4108 2011-08-19 09:19:22 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4109
4110         * omx/gstomxvideodec.c:
4111           omxvideodec: Release basevideocodec stream lock while waiting for a buffer
4112           This prevents deadlocks if no empty input buffers are available and
4113           releasing input buffers requires the loop function to handle some
4114           output buffers first.
4115
4116 2011-08-18 10:24:26 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4117
4118         * omx/gstbasevideodecoder.c:
4119           basevideodecoder: Fix deadlock
4120
4121 2011-08-18 10:03:20 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4122
4123         * omx/gstbaseaudiodecoder.c:
4124           baseaudiodecoder: Don't take the stream lock in the seek handler
4125           This will lead to deadlocks
4126
4127 2011-08-18 10:02:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4128
4129         * omx/gstbasevideocodec.c:
4130         * omx/gstbasevideocodec.h:
4131         * omx/gstbasevideodecoder.c:
4132         * omx/gstbasevideoencoder.c:
4133           basevideo: Fix locking, especially if both pads have different streaming threads
4134
4135 2011-08-18 09:42:02 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4136
4137         * omx/gstbasevideodecoder.c:
4138         * omx/gstbasevideoencoder.c:
4139           basevideo: Don't call g_type_class_peek_parent() in class_init
4140           This is already done by the GObject boilerplate macro
4141
4142 2011-08-18 09:40:46 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4143
4144         * omx/gstbaseaudiodecoder.c:
4145           baseaudiodecoder: Don't call g_type_class_peek_parent() in class_init
4146           This is already done by the boilerplate macro
4147
4148 2011-08-18 09:34:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4149
4150         * omx/gstbaseaudiodecoder.c:
4151         * omx/gstbaseaudiodecoder.h:
4152           baseaudiodecoder: Fix thread safety issues if both pads have different streaming threads
4153
4154 2011-08-18 09:17:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4155
4156         * omx/gstbaseaudiodecoder.c:
4157           baseaudiodecoder: Delay sending of serialized events to finish_frame()
4158
4159 2011-08-17 14:33:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4160
4161         * omx/gstomxaudioenc.c:
4162           omxaudioenc: Always require at least OMX_MIN_PCMPAYLOAD_MSEC per input buffer
4163
4164 2011-08-17 14:28:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4165
4166         * omx/gstbaseaudioencoder.c:
4167         * omx/gstbaseaudioencoder.h:
4168           baseaudioencoder: Add support for requesting a minimum and maximum number of samples per frame
4169           This extends the special case of a fixed number of samples per frame
4170           that was supported before already.
4171
4172 2011-08-17 14:17:18 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4173
4174         * omx/gstomxaudioenc.c:
4175           omxaudioenc: Handle inbuf==NULL properly in ::handle_frame()
4176
4177 2011-08-17 13:04:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4178
4179         * omx/gstomxaacenc.c:
4180           omxaacenc: Implement ::get_num_samples() vfunc
4181
4182 2011-08-17 13:03:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4183
4184         * omx/gstomxaudioenc.c:
4185         * omx/gstomxaudioenc.h:
4186           omxaudioenc: Add vfunc to get the number of samples inside a buffer
4187
4188 2011-08-17 11:34:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4189
4190         * omx/gstomxaudioenc.c:
4191           omxaudioenc: Release baseaudioencoder stream lock while waiting for a buffer in ::handle_frame()
4192           This prevents deadlocks if no empty input buffers are available and
4193           releasing input buffers requires the loop function to handle some
4194           output buffers first.
4195
4196 2011-08-17 11:34:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4197
4198         * omx/gstbaseaudioencoder.c:
4199         * omx/gstbaseaudioencoder.h:
4200           baseaudioencoder: Fix thread safety issues if both pads have different streaming threads
4201
4202 2011-08-17 09:58:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4203
4204         * omx/gstbaseaudioencoder.c:
4205           baseaudioencoder: Taking the OBJECT lock in reset() is not needed
4206
4207 2011-08-16 11:03:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4208
4209         * omx/gstomxaudioenc.c:
4210           omxaudioenc: Remove hack that only applies to the video encoder class
4211
4212 2011-08-16 10:49:21 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4213
4214         * omx/Makefile.am:
4215         * omx/gstomx.c:
4216         * omx/gstomx.conf:
4217         * omx/gstomxaacenc.c:
4218         * omx/gstomxaacenc.h:
4219           omxaacenc: Add initial version of OpenMAX AAC encoder element
4220
4221 2011-08-15 15:10:04 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4222
4223         * omx/Makefile.am:
4224         * omx/gstomxaudioenc.c:
4225         * omx/gstomxaudioenc.h:
4226           omxaudioenc: Add initial version of audio encoder base class
4227
4228 2011-08-15 14:14:11 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4229
4230         * omx/gstbaseaudioencoder.c:
4231           baseaudioencoder: Delay sending of serialized events to finish_frame()
4232
4233 2011-08-15 13:06:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4234
4235         * omx/Makefile.am:
4236         * omx/gstbaseaudiodecoder.c:
4237         * omx/gstbaseaudiodecoder.h:
4238         * omx/gstbaseaudioencoder.c:
4239         * omx/gstbaseaudioencoder.h:
4240           audio: Integrate audio base classes into the build system and fixup
4241
4242 2011-08-15 12:56:00 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4243
4244         * omx/gstbaseaudiodecoder.c:
4245         * omx/gstbaseaudiodecoder.h:
4246         * omx/gstbaseaudioencoder.c:
4247         * omx/gstbaseaudioencoder.h:
4248         * omx/gstbaseaudioutils.c:
4249         * omx/gstbaseaudioutils.h:
4250           audio: Add audio decoder/encoder base classes
4251           Taken from http://cgit.collabora.com/git/user/manauw/gst-plugins-bad.git/log/?h=baseaudio
4252
4253 2011-08-12 12:25:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4254
4255         * omx/gstbasevideoencoder.c:
4256           basevideoencoder: Proxy the width/height/framerate/PAR constraints of downstream caps to upstream
4257           This allows to specify constraints on the compressed downstream caps
4258           by muxers or capsfilters, which will then be forwarded to upstream
4259           and allows video converters to fulfill the constraints.
4260           Code based on Mark Nauwelaerts audio encoder base class.
4261
4262 2011-08-12 12:13:45 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4263
4264         * omx/gstbasevideoencoder.h:
4265           basevideoencoder: Remove old ::getcaps() comment
4266
4267 2011-08-12 12:06:23 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4268
4269         * omx/gstbasevideoencoder.c:
4270         * omx/gstbasevideoencoder.h:
4271           basevideoencoder: Remove ::get_caps() vfunc
4272           Subclasses can set the caps more efficiently and this only
4273           caused additional indirections.
4274
4275 2011-08-10 10:24:21 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4276
4277         * omx/gstomxh263enc.c:
4278         * omx/gstomxh264enc.c:
4279         * omx/gstomxmpeg4videoenc.c:
4280         * omx/gstomxvideoenc.c:
4281           omxvideoenc: Use "video/x-raw-yuv" as sink template caps instead of strict I420 caps
4282
4283 2011-08-10 10:23:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4284
4285         * omx/gstomxmpeg4videodec.c:
4286           omxmpeg4videodec: Don't require width/height on sink pad caps
4287
4288 2011-08-10 10:11:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4289
4290         * omx/gstomxh263dec.c:
4291         * omx/gstomxh264dec.c:
4292         * omx/gstomxmpeg4videodec.c:
4293         * omx/gstomxvideodec.c:
4294         * omx/gstomxwmvdec.c:
4295           omxvideodec: Use "video/x-raw-yuv" as src template caps instead of strict I420 caps
4296
4297 2011-08-10 09:56:30 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4298
4299         * omx/gstomxvideoenc.c:
4300           omxvideoenc: Set the state back to StateLoaded even if an error happened
4301
4302 2011-08-10 09:49:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4303
4304         * omx/gstomx.c:
4305           omx: Don't hold any locks while calling OMX_SendCommand()
4306           It might call into one of the callbacks and lead to deadlocks, e.g.
4307           with the Qualcomm OMX implementation.
4308
4309 2011-08-10 09:32:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4310
4311         * omx/gstomx.c:
4312           omx: Move some code
4313
4314 2011-08-10 09:23:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4315
4316         * omx/gstomx.c:
4317           omx: Reset pending reconfigure output ports when changing the state from Executing to any lower state
4318
4319 2011-08-10 09:08:00 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4320
4321         * omx/gstomx.c:
4322           omx: Fix crash when setting last error after the ports were freed
4323
4324 2011-08-10 09:03:52 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4325
4326         * omx/gstomx.c:
4327           omx: Free component structure
4328
4329 2011-08-10 09:02:52 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4330
4331         * omx/gstomx.c:
4332           omx: Make component destruction safer
4333
4334 2011-08-10 08:53:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4335
4336         * omx/gstomx.c:
4337           omx: Set pAppPrivate of buffers to NULL when deallocating buffers
4338           This prevents usage of freed memory later if the OMX component
4339           has weird behaviour.
4340
4341 2011-08-10 08:52:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4342
4343         * omx/gstomxvideodec.c:
4344           omxvideodec: Set the state back to StateLoaded even if an error happened
4345
4346 2011-08-10 08:51:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4347
4348         * omx/gstomx.c:
4349           omx: Add some assertions to check if the buffer pAppPrivate is still correct
4350
4351 2011-08-08 13:04:30 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4352
4353         * omx/gstomx.h:
4354           omx: Add parenthesis at correct places in the struct init macro
4355
4356 2011-08-08 12:12:58 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4357
4358         * omx/gstomx.c:
4359           omx: Only prevent setting a higher state if the component is in an error state
4360
4361 2011-08-03 16:02:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4362
4363         * omx/gstbasevideodecoder.c:
4364           basevideodecoder: Use the cached video frame size instead of recalculating it
4365
4366 2011-08-03 15:35:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4367
4368         * omx/gstomx.c:
4369           omx: Improve debugging in param/config getter/setter wrappers
4370
4371 2011-08-03 13:10:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4372
4373         * omx/gstomxvideodec.c:
4374           omxvideodec: Don't abort if the color format is not supported but give a useful error message
4375
4376 2011-08-02 15:14:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4377
4378         * omx/gstomxh263enc.c:
4379         * omx/gstomxh264enc.c:
4380         * omx/gstomxmpeg4videoenc.c:
4381         * omx/gstomxvideoenc.c:
4382           omxvideoenc: Don't fail if setting the bitrate or profile is not supported by the component
4383           Also always set/get the profile, even if there are no peer caps.
4384
4385 2011-08-02 15:14:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4386
4387         * omx/gstbasevideoencoder.c:
4388           basevideoencoder: Make access to the list of frames threadsafe
4389
4390 2011-08-01 13:22:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4391
4392         * omx/gstomx.c:
4393         * omx/gstomx.h:
4394           omx: Add a hacks flag for the Qualcomm 7x30 OMX_FillThisBuffer() race and make it optional
4395
4396 2011-07-29 13:56:59 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4397
4398         * omx/gstomx.c:
4399           omx: Add workaround for QCOM 7x30 race condition
4400
4401 2011-07-29 12:06:21 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4402
4403         * omx/Makefile.am:
4404         * omx/gstomx.c:
4405         * omx/gstomxh263enc.c:
4406         * omx/gstomxh263enc.h:
4407           omxh263enc: Add H.263 encoder element
4408
4409 2011-07-29 11:26:39 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4410
4411         * omx/gstomxmpeg4videoenc.c:
4412           omxmpeg4videoenc: Add support for setting profile/level via caps
4413
4414 2011-07-28 14:14:45 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4415
4416         * omx/gstomxh264enc.c:
4417           omxh264enc: Add support for setting profile/level via caps
4418
4419 2011-07-28 12:58:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4420
4421         * omx/gstomxvideoenc.c:
4422           omxvideoenc: Add support for forcing the next frame to be a keyframe
4423
4424 2011-07-28 11:54:16 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4425
4426         * omx/gstomxvideoenc.c:
4427         * omx/gstomxvideoenc.h:
4428           omxvideoenc: Add support for setting bitrate/quantization related parameters
4429
4430 2011-07-28 10:23:08 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4431
4432         * omx/gstomx.c:
4433         * omx/gstomx.h:
4434           omx: Add wrapper functions for OMX_[GS]et{Config,Parameter}
4435
4436 2011-07-28 09:54:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4437
4438         * omx/gstomx.c:
4439         * omx/gstomx.h:
4440           omx: Add macro to initialize OpenMAX structures
4441
4442 2011-07-28 09:08:38 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4443
4444         * omx/gstomxvideoenc.c:
4445           omxvideoenc: Don't output 0-byte buffers
4446
4447 2011-07-25 15:05:08 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4448
4449         * omx/gstomx.c:
4450           omx: Ensure that the pAppPrivate pointer in OMX buffers is set correctly
4451
4452 2011-07-25 13:19:06 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4453
4454         * omx/gstomxvideodec.c:
4455         * omx/gstomxvideoenc.c:
4456           omxvideo{enc,dec}: Only set/unset flushing state on ports if they were created already
4457
4458 2011-07-25 12:01:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4459
4460         * omx/Makefile.am:
4461         * omx/gstomx.c:
4462         * omx/gstomxwmvdec.c:
4463         * omx/gstomxwmvdec.h:
4464           omxwmvdec: Add WMV video decoder element
4465
4466 2011-07-25 11:44:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4467
4468         * omx/Makefile.am:
4469         * omx/gstomx.c:
4470         * omx/gstomxh263dec.c:
4471         * omx/gstomxh263dec.h:
4472           omxh263dec: Add H.263 decoder element
4473
4474 2011-07-25 11:32:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4475
4476         * omx/Makefile.am:
4477         * omx/gstomx.c:
4478         * omx/gstomxh264enc.c:
4479         * omx/gstomxh264enc.h:
4480           omxh264enc: Add H.264 encoder element
4481
4482 2011-07-25 10:48:58 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4483
4484         * omx/gstomxvideodec.c:
4485           omxvideodec: Try harder to deallocate the buffers after errors happened
4486
4487 2011-07-25 10:47:28 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4488
4489         * omx/gstomxvideoenc.c:
4490           omxvideoenc: Try harder to deallocate the buffers after errors happened
4491
4492 2011-07-25 10:46:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4493
4494         * omx/gstomx.c:
4495           omx: Deallocate port buffers before freeing the component
4496           They should be deallocated by the caller before reaching the
4497           Loaded state but to be on the safe side we will make sure
4498           they're really deallocated here.
4499
4500 2011-07-21 11:15:14 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4501
4502         * omx/gstomxvideoenc.c:
4503           omxvideoenc: Add initial support for stride conversion
4504
4505 2011-07-21 10:38:26 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4506
4507         * omx/gstomxh264dec.c:
4508         * omx/gstomxmpeg4videodec.c:
4509         * omx/gstomxmpeg4videoenc.c:
4510           omx: Set default roles for the components if none were set from the config file
4511
4512 2011-07-21 10:36:19 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4513
4514         * omx/gstomx.c:
4515           omx: Failure to set the component role is fatal
4516
4517 2011-07-21 07:53:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4518
4519         * omx/gstomxvideoenc.c:
4520           omxvideoenc: Add support for setting codec_data on the srcpad caps
4521
4522 2011-07-21 07:44:34 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4523
4524         * omx/gstomxvideoenc.c:
4525           omxvideoenc: Free/drop GstVideoFrames that resulted in an empty buffer
4526
4527 2011-07-21 07:44:10 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4528
4529         * omx/gstbasevideoencoder.c:
4530           basevideoencoder: Allow finishing of frames with no src_buffer to drop/free the GstVideoFrame
4531
4532 2011-07-21 07:31:05 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4533
4534         * omx/gstomxvideoenc.c:
4535           omxvideoenc: Remove obsolete TODO comment
4536
4537 2011-07-20 11:09:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4538
4539         * omx/Makefile.am:
4540         * omx/gstomx.c:
4541           omx: Use libgstopenmax.so for the plugin filename and openmax for the plugin name
4542           Resolves conflicts with gst-openmax.
4543
4544 2011-07-20 08:34:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4545
4546         * omx/Makefile.am:
4547         * omx/gstomx.c:
4548         * omx/gstomx.conf:
4549         * omx/gstomx.h:
4550         * omx/gstomxmpeg4videoenc.c:
4551         * omx/gstomxmpeg4videoenc.h:
4552         * omx/gstomxvideoenc.c:
4553         * omx/gstomxvideoenc.h:
4554           omxvideoenc: Add video encoder base class and MPEG4 video encoder
4555           Unfortunately requires lots of hacks again to work properly with
4556           Bellagio.
4557
4558 2011-07-20 10:39:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4559
4560         * omx/gstbasevideoencoder.c:
4561           basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass
4562
4563 2011-07-20 09:25:28 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4564
4565         * omx/gstbasevideoencoder.c:
4566         * omx/gstbasevideoencoder.h:
4567           basevideoencoder: Delay sending of serialized sink events until finish_frame()
4568
4569 2011-07-20 09:09:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4570
4571         * omx/gstbasevideoencoder.c:
4572         * omx/gstbasevideoencoder.h:
4573           basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder
4574
4575 2011-07-19 12:50:43 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4576
4577         * omx/gstbasevideoencoder.c:
4578           basevideoencoder: Use a temporary GstVideoState until the subclass accepted the caps
4579           Also store the caps in the GstVideoState and assume a PAR of 1/1 instead
4580           of 0/1 if no PAR is specified in the caps.
4581
4582 2011-07-19 12:29:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4583
4584         * omx/gstomx.c:
4585         * omx/gstomxvideodec.c:
4586           omx: Improve debug output a bit
4587
4588 2011-07-19 10:33:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4589
4590         * omx/gstomx.c:
4591         * omx/gstomx.h:
4592         * omx/gstomxvideodec.c:
4593           omx: Rework port reconfiguration again and only use the Bellagio specific hacks with Bellagio
4594           We only reconfigure ports that need to be reconfigured now instead of
4595           always all ports.
4596
4597 2011-07-19 10:33:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4598
4599         * omx/gstomx.c:
4600         * omx/gstomx.conf:
4601         * omx/gstomx.h:
4602         * omx/gstomxvideodec.c:
4603         * omx/gstomxvideodec.h:
4604           omx: Add infrastructure to enable special hacks for broken OpenMAX implementations
4605
4606 2011-07-18 13:10:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4607
4608         * omx/gstomx.c:
4609           omx: When acquiring a buffer from an input port always wait until all output ports are reconfigured
4610
4611 2011-07-18 08:41:20 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4612
4613         * omx/gstomxvideodec.c:
4614           omxvideodec: Add support for converting between omx and gst rowstrides
4615
4616 2011-07-14 10:34:09 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4617
4618         * omx/gstomx.c:
4619           omx: Provide all buffers to output ports after enabling them
4620
4621 2011-07-14 08:29:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4622
4623         * omx/gstomxvideodec.c:
4624           omxvideodec: Add support for NV12 / OMX_COLOR_FormatYUV420SemiPlanar
4625
4626 2011-07-14 07:58:41 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4627
4628         * omx/gstomxvideodec.c:
4629         * omx/gstomxvideodec.h:
4630           omxvideodec: Only flush the component ports after we passed input to them
4631
4632 2011-07-13 21:19:34 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4633
4634         * omx/gstomxvideodec.c:
4635           omxvideodec: Only change states downwards if an upper state was reached
4636
4637 2011-07-13 20:37:02 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4638
4639         * omx/gstomx.c:
4640         * omx/gstomx.h:
4641         * omx/gstomxvideodec.c:
4642         * omx/gstomxvideodec.h:
4643           omx: Add support for setting the component-role
4644
4645 2011-07-13 20:22:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4646
4647         * omx/gstomx.c:
4648         * omx/gstomx.h:
4649         * omx/gstomxvideodec.c:
4650           omx: Improve error reporting by formatting the error codes better and also providing their string representation
4651
4652 2011-07-13 14:36:14 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4653
4654         * Makefile.am:
4655           build: Dist autogen.sh
4656
4657 2011-07-13 14:35:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4658
4659         * configure.ac:
4660         * omx/gstomx.c:
4661           build: Only require GStreamer >= 0.10.29 and GLib >= 2.16
4662
4663 2011-07-13 14:04:47 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4664
4665         * omx/Makefile.am:
4666           build: Dist gstomx.conf
4667
4668 2011-07-13 14:04:20 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4669
4670         * Makefile.am:
4671           build: Clean _stdint.h on "make distclean"
4672
4673 2011-07-13 14:02:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4674
4675         * omx/gstomxvideodec.c:
4676           omxvideodec: Fix typo
4677
4678 2011-07-13 13:59:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4679
4680         * omx/Makefile.am:
4681           omx: Dist gstomx.h
4682
4683 2011-07-13 12:46:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4684
4685         * omx/gstomxvideodec.c:
4686           omxvideodec: Set SYNCFRAME flag on the OMX buffers for non-delta units
4687
4688 2011-07-13 12:37:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4689
4690         * omx/gstomxvideodec.c:
4691           omxvideodec: Free all pending frames when resetting the decoder
4692           Workaround for https://bugzilla.gnome.org/show_bug.cgi?id=654529
4693
4694 2011-07-13 09:59:49 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4695
4696         * omx/gstomxvideodec.c:
4697           omxvideodec: Handle output buffers without a corresponding GstVideoFrame more gracefully
4698           This can happen on EOS in some cases and when the input is not
4699           properly framed.
4700
4701 2011-07-13 09:31:22 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4702
4703         * omx/gstomxvideodec.c:
4704           omxvideodec: Fix deadlock when finishing old frames that are left over by the decoder
4705
4706 2011-07-12 11:37:28 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4707
4708         * omx/gstomxh264dec.c:
4709           omxh264dec: It's called H.264, not H264
4710
4711 2011-07-12 11:36:42 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4712
4713         * omx/gstomxh264dec.c:
4714         * omx/gstomxmpeg4videodec.c:
4715         * omx/gstomxvideodec.c:
4716         * omx/gstomxvideodec.h:
4717           omxvideodec: Make sink/src pad template caps configurable
4718
4719 2011-07-12 11:13:50 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4720
4721         * omx/gstomx.c:
4722           omx: Allow to set a preferred configuration directory with the GST_OMX_CONFIG_DIR environment variable
4723
4724 2011-07-12 10:55:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4725
4726         * omx/gstomxh264dec.c:
4727         * omx/gstomxmpeg4videodec.c:
4728         * omx/gstomxvideodec.c:
4729           omxvideodec: Make core/component-name and in/outport index configurable
4730
4731 2011-07-12 10:05:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4732
4733         * omx/gstomx.c:
4734         * omx/gstomx.conf:
4735         * omx/gstomx.h:
4736           omx: Add initial version of configuration system
4737           This now only registers elements that are specified in the
4738           configuration file.
4739           The configuration file is a keyfile in the first XDG configuration
4740           directory with the name gstomx.conf.
4741
4742 2011-07-12 08:53:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4743
4744         * omx/Makefile.am:
4745         * omx/gstomx.c:
4746         * omx/gstomxh264dec.c:
4747         * omx/gstomxh264dec.h:
4748         * omx/gstomxh264videodec.h:
4749           omxh264dec: Rename from omxh264videodec to omxh264dec
4750
4751 2011-07-12 08:40:48 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4752
4753         * omx/gstomxh264videodec.c:
4754           omxh264videodec: Require alignment=au and stream-format={avc,bytestream}
4755
4756 2011-07-11 12:59:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4757
4758         * omx/gstbasevideodecoder.c:
4759           basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state
4760           The subclass might want to access the old state.
4761
4762 2011-07-11 12:36:42 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4763
4764         * omx/gstbasevideodecoder.c:
4765           basevideodecoder: Track present position on discont before resetting it
4766
4767 2011-07-11 11:52:33 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4768
4769         * omx/gstbasevideodecoder.c:
4770           basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events
4771
4772 2011-07-11 11:28:40 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4773
4774         * omx/gstbasevideocodec.c:
4775         * omx/gstbasevideocodec.h:
4776         * omx/gstbasevideodecoder.c:
4777           basevideocodec: Protect access to the list of pending frames with the object lock
4778           This is required if ::finish_frame() and all buffer output happens
4779           on a different thread than the sinkpad streaming thread.
4780
4781 2011-07-11 09:35:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4782
4783         * omx/gstbasevideodecoder.c:
4784           basevideodecoder: Set the correct lists to NULL after freeing
4785
4786 2011-07-11 08:54:53 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4787
4788         * omx/gstbasevideodecoder.c:
4789           basevideodecoder: Work with a copy of the GstVideoState in setcaps until the caps are accepted
4790           Also fix a refcount problem with the codec_data.
4791
4792 2011-07-12 08:34:44 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4793
4794         * omx/Makefile.am:
4795         * omx/gstomx.c:
4796         * omx/gstomxh264videodec.c:
4797         * omx/gstomxh264videodec.h:
4798           omxh264videodec: Add h.264 video decoder
4799
4800 2011-07-12 08:29:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4801
4802         * omx/gstomxmpeg4videodec.c:
4803           omxmpeg4videodec: Fix debug category name
4804
4805 2011-07-09 11:41:42 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4806
4807         * omx/Makefile.am:
4808         * omx/gstbasevideocodec.h:
4809         * omx/gstbasevideodecoder.c:
4810         * omx/gstbasevideoencoder.c:
4811         * omx/gstbasevideoutils.c:
4812         * omx/gstbasevideoutils.h:
4813           basevideo: Move the utils from the codec header to its own header
4814
4815 2011-07-09 11:32:06 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4816
4817         * omx/gstbasevideocodec.c:
4818         * omx/gstbasevideodecoder.c:
4819           basevideo: Use GSlice for allocating GstVideoFrame and don't duplicate code in the decoder base class
4820
4821 2011-07-09 11:05:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4822
4823         * omx/gstomxvideodec.c:
4824           omxvideodec: Use the destroy notify to free the coder_hook
4825
4826 2011-07-09 10:57:52 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4827
4828         * omx/gstbasevideocodec.c:
4829         * omx/gstbasevideocodec.h:
4830         * omx/gstbasevideodecoder.c:
4831           basevideo: Add destroy notify for the coder_hook to prevent memory leaks
4832           Fixes bug #654293.
4833
4834 2011-07-09 10:44:16 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4835
4836         * omx/Makefile.am:
4837           basevideo: Fix GType names to not conflict with the public video base classes
4838           It's still not possible to include headers of both in the same file
4839           or compile/link both into the same plugin but that shouldn't be
4840           necessary anyway.
4841
4842 2011-07-08 15:42:56 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4843
4844         * omx/gstomxvideodec.c:
4845           omxvideodec: Fix some minor memory leaks
4846
4847 2011-07-08 15:25:07 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4848
4849         * omx/gstomx.c:
4850         * omx/gstomx.h:
4851         * omx/gstomxvideodec.c:
4852           omx: Rework port reconfiguration
4853           We always reconfigure all ports now if the settings of one
4854           port changes to prevent lots of race conditions, dropped
4855           frames and similar issues.
4856
4857 2011-07-08 13:16:45 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4858
4859         * omx/gstomxvideodec.c:
4860         * omx/gstomxvideodec.h:
4861           omxvideodec: Use the frames storage of the base class instead of implementing our own
4862           They could get out of sync and we could store already destroyed frames.
4863
4864 2011-07-07 12:51:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4865
4866         * omx/gstomx.h:
4867           omx: Clarify GQueue/GPtrArray element types
4868
4869 2011-07-07 12:23:24 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4870
4871         * omx/gstomx.c:
4872         * omx/gstomx.h:
4873         * omx/gstomxvideodec.c:
4874           omx: Add more checks to acquire_buffer() and return the current state additional to the buffer
4875           Also refactor the code flow in the video decoder for this. This makes
4876           the usage of acquire_buffer() easier and more atomic.
4877
4878 2011-07-07 12:22:57 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4879
4880         * omx/gstomxvideodec.c:
4881           omxvideodec: Also flush/unflush the input port when changing the state PAUSED<->READY
4882
4883 2011-07-07 12:21:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4884
4885         * omx/gstomx.c:
4886           omx: Don't broadcast port->port_cond after allocating buffers successfully
4887           Allocating buffers must happen while no thread is waiting for the
4888           cond and especially must happen from the thread that would acquire
4889           buffers from the port.
4890
4891 2011-07-07 11:27:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4892
4893         * omx/gstomxvideodec.c:
4894           omxvideodec: Don't leak the codec_data after sending it
4895
4896 2011-07-07 10:27:31 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4897
4898         * omx/gstomx.c:
4899           omx: Always check if the component is in an error state before waiting for a condition variable to be signalled
4900           Otherwise we might wait forever because nothing is going to signal
4901           the condition variable anymore.
4902
4903 2011-07-07 10:22:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4904
4905         * omx/gstomx.c:
4906           omx: Always hold port->port_lock before signalling port->port_cond when notifying about errors
4907           Otherwise a port might be in the critical section, has checked the error state
4908           already but waits after port->port_cond is signalled, which will lead
4909           to a deadlock.
4910
4911 2011-07-07 10:07:43 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4912
4913         * omx/gstomxvideodec.c:
4914           omxvideodec: Remove reconfiguration test hack
4915
4916 2011-07-06 13:27:12 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4917
4918         * omx/gstomx.c:
4919           omx: Improve debug output a bit
4920
4921 2011-07-06 13:26:51 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4922
4923         * omx/gstomx.c:
4924           omx: Always try to deallocate buffers, even if there's a component error
4925
4926 2011-07-06 13:26:01 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4927
4928         * omx/gstomx.c:
4929           omx: Use G_USEC_PER_SEC for clarity instead of 1000000
4930
4931 2011-07-06 13:19:15 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4932
4933         * omx/gstomxvideodec.c:
4934           omxvideodec: Error out if the GStreamer allocated buffer is smaller than the OpenMAX output buffer
4935           Usually this must never happen but currently it happens during reconfigurations
4936           because of a race condition. Still it's better than crashing.
4937
4938 2011-07-06 10:40:13 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4939
4940         * omx/gstomx.c:
4941         * omx/gstomx.h:
4942           omx: Don't use port_def.bEnabled to check if the Enable/Disable command is finished
4943           bEnabled should be set immediately after sending the command, it's only
4944           Bellagio that waits until the command is finished before setting it.
4945
4946 2011-07-06 10:30:11 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4947
4948         * omx/gstomxvideodec.c:
4949           omxvideodec: Remove obsolete FIXME comment
4950
4951 2011-07-06 10:29:54 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4952
4953         * omx/gstomx.c:
4954         * omx/gstomx.h:
4955           omx: Improve error handling and reporting
4956
4957 2011-07-06 08:48:37 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4958
4959         * omx/gstomxmpeg4videodec.c:
4960         * omx/gstomxvideodec.c:
4961         * omx/gstomxvideodec.h:
4962           omxvideodec: Make the inport and outport index configurable by the subclass
4963
4964 2011-06-28 08:51:23 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4965
4966         * omx/Makefile.am:
4967         * omx/gstomx.c:
4968         * omx/gstomx.h:
4969         * omx/gstomxmpeg4videodec.c:
4970         * omx/gstomxmpeg4videodec.h:
4971         * omx/gstomxvideodec.c:
4972         * omx/gstomxvideodec.h:
4973           omx: Add initial version of OpenMAX framework, video decoder base class and MPEG4 video decoder
4974           This currently hardcodes a lot of stuff but works at least.
4975           Also adds a generic framework for handling OpenMAX cores, components
4976           and ports.
4977
4978 2011-06-28 11:47:25 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4979
4980         * omx/gstbasevideocodec.c:
4981         * omx/gstbasevideocodec.h:
4982         * omx/gstbasevideodecoder.c:
4983         * omx/gstbasevideodecoder.h:
4984           basevideodecoder: Don't reorder serialized src events
4985           And allow to drop EOS by the subclass if ::finish returns
4986           DROPPED.
4987           Fixes bug #653544.
4988
4989 2011-06-27 09:41:40 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4990
4991         * omx/gstbasevideocodec.c:
4992         * omx/gstbasevideocodec.h:
4993         * omx/gstbasevideodecoder.c:
4994           basevideo: Add the caps to the GstVideoState and clean up caps/codec_data properly
4995
4996 2011-06-27 09:37:03 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
4997
4998         * omx/gstbasevideocodec.c:
4999         * omx/gstbasevideocodec.h:
5000         * omx/gstbasevideodecoder.c:
5001         * omx/gstbasevideodecoder.h:
5002         * omx/gstbasevideoencoder.c:
5003         * omx/gstbasevideoencoder.h:
5004         * omx/gstbasevideoutils.c:
5005           basevideo: Add video encoder/decoder base classes from gst-plugins-bad
5006
5007 2011-06-21 11:17:35 +0200  Sebastian Dröge <sebastian.droege@collabora.co.uk>
5008
5009         * omx/openmax/OMX_Audio.h:
5010         * omx/openmax/OMX_Component.h:
5011         * omx/openmax/OMX_ComponentExt.h:
5012         * omx/openmax/OMX_ContentPipe.h:
5013         * omx/openmax/OMX_Core.h:
5014         * omx/openmax/OMX_CoreExt.h:
5015         * omx/openmax/OMX_IVCommon.h:
5016         * omx/openmax/OMX_Image.h:
5017         * omx/openmax/OMX_Index.h:
5018         * omx/openmax/OMX_IndexExt.h:
5019         * omx/openmax/OMX_Other.h:
5020         * omx/openmax/OMX_Types.h:
5021         * omx/openmax/OMX_Video.h:
5022         * omx/openmax/OMX_VideoExt.h:
5023           openmax: Add OpenMAX IL 1.1.2 headers
5024