platform/upstream/gst-omx.git
8 years agoomx: Also search for gstomx.conf in the autoconf --sysconfdir
Sebastian Dröge [Mon, 12 Sep 2016 12:09:46 +0000 (14:09 +0200)]
omx: Also search for gstomx.conf in the autoconf --sysconfdir

https://bugzilla.gnome.org/show_bug.cgi?id=770743

8 years agoAutomatic update of common submodule
Jan Schmidt [Sat, 10 Sep 2016 10:52:10 +0000 (20:52 +1000)]
Automatic update of common submodule

From b18d820 to f980fd9

8 years agoAutomatic update of common submodule
Jan Schmidt [Fri, 9 Sep 2016 23:58:16 +0000 (09:58 +1000)]
Automatic update of common submodule

From ac2f647 to b18d820

8 years agoBack to development
Sebastian Dröge [Thu, 1 Sep 2016 09:36:09 +0000 (12:36 +0300)]
Back to development

8 years agoRelease 1.9.2
Sebastian Dröge [Thu, 1 Sep 2016 09:35:58 +0000 (12:35 +0300)]
Release 1.9.2

8 years agoAutomatic update of common submodule
Stefan Sauer [Mon, 11 Jul 2016 19:15:48 +0000 (21:15 +0200)]
Automatic update of common submodule

From ac2f647 to f49c55e

8 years agoBack to development
Sebastian Dröge [Wed, 6 Jul 2016 10:51:24 +0000 (13:51 +0300)]
Back to development

8 years agoRelease 1.9.1
Sebastian Dröge [Wed, 6 Jul 2016 10:48:45 +0000 (13:48 +0300)]
Release 1.9.1

8 years agoomxvideodec: Use GST_VIDEO_FRAME_PLANE_STRIDE() to get output buffer's stride
Kazunori Kobayashi [Wed, 29 Jun 2016 07:37:43 +0000 (16:37 +0900)]
omxvideodec: Use GST_VIDEO_FRAME_PLANE_STRIDE() to get output buffer's stride

GST_VIDEO_FRAME_PLANE_STRIDE() should be used to get the actual buffer stride,
as reported in the buffers's GstVideoMeta, when copying data to that buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=768173

8 years agoAutomatic update of common submodule
Nicolas Dufresne [Tue, 21 Jun 2016 15:48:40 +0000 (11:48 -0400)]
Automatic update of common submodule

From ac2f647 to f363b32

8 years agoomxaudioenc: implement GstPreset interface
Aurélien Zanelli [Tue, 21 Jun 2016 09:43:13 +0000 (11:43 +0200)]
omxaudioenc: implement GstPreset interface

To allow user to use GstPreset to quickly save and load a set of
parameters.

https://bugzilla.gnome.org/show_bug.cgi?id=767907

8 years agoomxvideoenc: implement GstPreset interface
Aurélien Zanelli [Tue, 21 Jun 2016 09:41:15 +0000 (11:41 +0200)]
omxvideoenc: implement GstPreset interface

To allow user to use GstPreset to quickly save and load a set of
parameters.

https://bugzilla.gnome.org/show_bug.cgi?id=767907

8 years agoomx: #define OMX_SKIP64BIT on the RPi as required by their API
Sebastian Dröge [Fri, 17 Jun 2016 09:06:48 +0000 (12:06 +0300)]
omx: #define OMX_SKIP64BIT on the RPi as required by their API

Also add generic support for OMX_SKIP64BIT to gst-omx, in case other
implementations also #define that for whatever reason.

https://bugzilla.gnome.org/show_bug.cgi?id=766475

8 years agoomxvideodec: Implement ::drain() virtual method
Sebastian Dröge [Fri, 17 Jun 2016 07:59:45 +0000 (10:59 +0300)]
omxvideodec: Implement ::drain() virtual method

https://bugzilla.gnome.org/show_bug.cgi?id=767641

8 years agoconfigure: remove AG_GST_PARSE_SUBSYSTEM_DISABLES
Tim-Philipp Müller [Sat, 4 Jun 2016 18:31:45 +0000 (19:31 +0100)]
configure: remove AG_GST_PARSE_SUBSYSTEM_DISABLES

This would check which subsystems are disabled in core by grepping
gstconfig.h. Only problem is: gstconfig.h has moved into libdir now
so we've been checking a non-existent file for a while now. The
macro would just sets GST_DISABLE_* for use in configure.ac and
Makefile.am, but we don't use that anywhere so just get rid of it
(the one place where we use GST_DISABLE_GST_DEBUG is in a .c file
which gets the define from the gstconfig.h include).

https://bugzilla.gnome.org/show_bug.cgi?id=750056

8 years agoomxvideodec : Use gstglmemoryegl for the RPi
Gwang Yoon Hwang [Tue, 19 Jan 2016 18:10:38 +0000 (03:10 +0900)]
omxvideodec : Use gstglmemoryegl for the RPi

Modified to use gstglmemoryegl to avoid texture creation/copy operations
at the glupload.

[Matthew Waters]: gst-indent the sources and port testegl to GstGLMemoryEGL

https://bugzilla.gnome.org/show_bug.cgi?id=760918

8 years agoAutomatic update of common submodule
Julien Isorce [Thu, 14 Apr 2016 09:04:32 +0000 (10:04 +0100)]
Automatic update of common submodule

From 6f2d209 to ac2f647

8 years agoAutomatic update of common submodule
Sebastian Dröge [Fri, 26 Feb 2016 10:42:41 +0000 (12:42 +0200)]
Automatic update of common submodule

From b64f03f to 6f2d209

8 years agoexamples: update egl example for gstgl API changes
Matthew Waters [Wed, 17 Feb 2016 09:51:03 +0000 (20:51 +1100)]
examples: update egl example for gstgl API changes

https://bugzilla.gnome.org/show_bug.cgi?id=762053
https://bugzilla.gnome.org/show_bug.cgi?id=753917

8 years agoAutomatic update of common submodule
Thiago Santos [Fri, 5 Feb 2016 21:11:06 +0000 (18:11 -0300)]
Automatic update of common submodule

From 86e4663 to b64f03f

8 years agoconfigure: Make -Bsymbolic check work with clang.
Koop Mast [Sun, 20 Dec 2015 23:43:49 +0000 (00:43 +0100)]
configure: Make -Bsymbolic check work with clang.

Update the -Bsymbolic check with the version glib has. This version
works with clang.

https://bugzilla.gnome.org/show_bug.cgi?id=759713

8 years agoAutomatic update of common submodule
Nicolas Dufresne [Mon, 7 Dec 2015 14:11:32 +0000 (09:11 -0500)]
Automatic update of common submodule

From b319909 to 86e4663

8 years agoRemember the last_error after a failed set state call to avoid blocking the next...
Enrique Ocaña González [Wed, 18 Nov 2015 13:00:28 +0000 (13:00 +0000)]
Remember the last_error after a failed set state call to avoid blocking the next get state call

gst_omx_video_dec_flush() blocks forever in
http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomxvideodec.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n2110
when the previous call to gst_omx_component_set_state() fails in
http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n827.
To mitigate that, I set "last_error" to true, so the code in
http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n862
exits early and doesn't block.

https://bugzilla.gnome.org/show_bug.cgi?id=758274

8 years agoProperly handle drain requests while flushing
Enrique Ocaña González [Wed, 18 Nov 2015 12:59:59 +0000 (12:59 +0000)]
Properly handle drain requests while flushing

Without this commit the decoder streaming thread stops without ever attending
the drain request, leaving the decoder input thread waiting forever.

https://bugzilla.gnome.org/show_bug.cgi?id=758274

8 years agoomx: fix hacks leak on class init
Nicolas Huet [Tue, 10 Nov 2015 09:42:35 +0000 (10:42 +0100)]
omx: fix hacks leak on class init

9 years agoAutomatic update of common submodule
Tim-Philipp Müller [Wed, 21 Oct 2015 13:37:13 +0000 (14:37 +0100)]
Automatic update of common submodule

From b99800a to b319909

9 years agoAutomatic update of common submodule
Sebastian Dröge [Wed, 21 Oct 2015 11:28:41 +0000 (14:28 +0300)]
Automatic update of common submodule

From 9aed1d7 to b99800a

9 years agoomxaacdec: Do not accept unknown layouts
Thiago Santos [Tue, 1 Sep 2015 19:08:11 +0000 (16:08 -0300)]
omxaacdec: Do not accept unknown layouts

It was defaulting to RAW when an unknown layout was received but
the caps template would actually forbid that on the caps query
or accept-caps anyway.

9 years agoomxaudiodec: use default pad accept-caps handling
Thiago Santos [Tue, 1 Sep 2015 11:59:54 +0000 (08:59 -0300)]
omxaudiodec: use default pad accept-caps handling

Instead of the audiodecoder one. The OMX audioo decoders have their
valid input in the template pad, so just check against that to
avoid doing a query downstream.

9 years agoomxvideodec: use default pad accept-caps handling
Thiago Santos [Fri, 28 Aug 2015 15:57:33 +0000 (12:57 -0300)]
omxvideodec: use default pad accept-caps handling

Instead of the videodecoder one. The OMX video decoders have their
valid input in the template pad, so just check against that to
avoid doing a query downstream.

9 years agoomxvideoenc: Add keyframe support for the Rpi, using OMX_IndexConfigBrcmVideoRequestI...
Graham Leggett [Sat, 22 Aug 2015 15:54:55 +0000 (15:54 +0000)]
omxvideoenc: Add keyframe support for the Rpi, using OMX_IndexConfigBrcmVideoRequestIFrame

https://bugzilla.gnome.org/show_bug.cgi?id=753085

9 years agogst-omx: Fix memory leaks when context parse fails
Vineeth TM [Thu, 20 Aug 2015 08:20:50 +0000 (17:20 +0900)]
gst-omx: Fix memory leaks when context parse fails

When g_option_context_parse fails, context and error variables are not getting free'd
which results in memory leaks. Free'ing the same.

And replacing g_error_free with g_clear_error, which checks if the error being passed
is not NULL and sets the variable to NULL on free'ing.

https://bugzilla.gnome.org/show_bug.cgi?id=753865

9 years agoomxh264dec: implement is_format_change
Philippe Normand [Sun, 16 Aug 2015 12:53:42 +0000 (14:53 +0200)]
omxh264dec: implement is_format_change

The omxvideodecoder class only checks some of the caps parameters but if
other fields change such as h264 profile and/or level it wouldn't trigger a
reconfiguration.

https://bugzilla.gnome.org/show_bug.cgi?id=752376

9 years agoomxvideodec: unref allocator after getting it from allocation query
Aurélien Zanelli [Thu, 2 Jul 2015 22:26:48 +0000 (00:26 +0200)]
omxvideodec: unref allocator after getting it from allocation query

Otherwise a reference will be leaked for each allocator. It only happens
when target platform is Raspberry Pi and when we have GL support.

https://bugzilla.gnome.org/show_bug.cgi?id=751867

9 years agoAutomatic update of common submodule
Stefan Sauer [Fri, 3 Jul 2015 19:59:54 +0000 (21:59 +0200)]
Automatic update of common submodule

From f74b2df to 9aed1d7

9 years agoAutomatic update of common submodule
Nicolas Dufresne [Tue, 16 Jun 2015 21:50:14 +0000 (17:50 -0400)]
Automatic update of common submodule

From 6015d26 to f74b2df

9 years agoAutomatic update of common submodule
Edward Hervey [Tue, 9 Jun 2015 09:30:49 +0000 (11:30 +0200)]
Automatic update of common submodule

From d9a3353 to 6015d26

9 years agoAutomatic update of common submodule
Stefan Sauer [Mon, 8 Jun 2015 21:08:28 +0000 (23:08 +0200)]
Automatic update of common submodule

From d37af32 to d9a3353

9 years agoAutomatic update of common submodule
Stefan Sauer [Sun, 7 Jun 2015 21:07:22 +0000 (23:07 +0200)]
Automatic update of common submodule

From 21ba2e5 to d37af32

9 years agoAutomatic update of common submodule
Stefan Sauer [Sun, 7 Jun 2015 15:32:25 +0000 (17:32 +0200)]
Automatic update of common submodule

From c408583 to 21ba2e5

9 years agoAutomatic update of common submodule
Stefan Sauer [Sun, 7 Jun 2015 15:16:43 +0000 (17:16 +0200)]
Automatic update of common submodule

From c8fb372 to c408583

9 years agoomxaudiodec: Add an output adapter for chunking the output into codec frames
Sebastian Dröge [Tue, 19 May 2015 15:21:40 +0000 (18:21 +0300)]
omxaudiodec: Add an output adapter for chunking the output into codec frames

Otherwise the base class will be confused.
See https://bugzilla.gnome.org/show_bug.cgi?id=685730

9 years agoRemove obsolete Android build cruft
Tim-Philipp Müller [Sun, 26 Apr 2015 17:24:13 +0000 (18:24 +0100)]
Remove obsolete Android build cruft

This is not needed any longer.

9 years agoRemove INSTALL file
Sebastian Dröge [Wed, 22 Apr 2015 08:40:22 +0000 (10:40 +0200)]
Remove INSTALL file

autotools automatically generate this, and when using different versions
for autogen.sh there will always be changes to a file tracked by git.

9 years agoAdd m4 directory so aclocal doesn't complain in autogen.sh
Tim-Philipp Müller [Wed, 8 Apr 2015 14:57:59 +0000 (15:57 +0100)]
Add m4 directory so aclocal doesn't complain in autogen.sh

Might come in handy, and these warnings seem to be
fatal in some environments.

You may need to git clean -x -d -f your tree before
git pulling/merging.

9 years agoUpdate autogen.sh to latest version
Tim-Philipp Müller [Tue, 7 Apr 2015 21:25:57 +0000 (22:25 +0100)]
Update autogen.sh to latest version

9 years agoAutomatic update of common submodule
Tim-Philipp Müller [Fri, 3 Apr 2015 17:58:17 +0000 (18:58 +0100)]
Automatic update of common submodule

From bc76a8b to c8fb372

9 years agoomxaudiodec: add comment explaining duplicate code path
Luis de Bethencourt [Fri, 6 Mar 2015 12:12:49 +0000 (12:12 +0000)]
omxaudiodec: add comment explaining duplicate code path

9 years agoRevert "omxaudiodec: remove duplicate code path"
Luis de Bethencourt [Fri, 6 Mar 2015 12:09:06 +0000 (12:09 +0000)]
Revert "omxaudiodec: remove duplicate code path"

This reverts commit a8d26ff27a8b43f589424a59294f9057641b2a46.

9 years agoomx: handle both errors in the two steps of update_port_definition
Luis de Bethencourt [Fri, 6 Mar 2015 12:03:56 +0000 (12:03 +0000)]
omx: handle both errors in the two steps of update_port_definition

Also consider potential errors in the _get_parameter() in the return of the
update_port_definition function.

CID #1287052

9 years agoomxaudioenc: impossible if statement
Luis de Bethencourt [Fri, 6 Mar 2015 10:57:53 +0000 (10:57 +0000)]
omxaudioenc: impossible if statement

ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
for it to be anything else at the if check. Remove the if check.

CID #1287053

9 years agoomxaudiodec: impossible if statement
Luis de Bethencourt [Fri, 6 Mar 2015 10:54:43 +0000 (10:54 +0000)]
omxaudiodec: impossible if statement

ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible
for it to be anything else at the if check. Remove it.

CID #1287054

9 years agoomxaudiodec: remove duplicate code path
Luis de Bethencourt [Fri, 6 Mar 2015 10:50:30 +0000 (10:50 +0000)]
omxaudiodec: remove duplicate code path

9 years agoomx: call handle_messages() only once in acquire_buffer() to avoid potential deadlock
George Kiagiadakis [Fri, 19 Dec 2014 09:19:55 +0000 (11:19 +0200)]
omx: call handle_messages() only once in acquire_buffer() to avoid potential deadlock

There is one rare case where calling handle_messages() more than once can cause a deadlock
in the video decoder element:

- sink pad thread starts the src pad task (gst_omx_video_dec_loop())
- _video_dec_loop() calls gst_omx_port_acquire_buffer() on dec_out_port
- blocks in gst_omx_component_wait_message() releasing comp->lock and comp->messages_lock
  (initially, there are no buffers configured on that port, so it waits for OMX_EventPortSettingsChanged)
- the sink pad thread pushes a buffer to the decoder with gst_omx_port_release_buffer()
- _release_buffer() grabs comp->lock and sends the buffer to OMX, which consumes it immediately
- EmptyBufferDone gets called at this point, which signals _wait_message() to unblock
- the message from EmptyBufferDone is processed in gst_omx_component_handle_messages()
  called from gst_omx_port_release_buffer()
- gst_omx_port_release_buffer releases comp->lock
- the src pad thread now gets to run, grabbing comp->lock while it exits from _wait_message()
- _acquire_buffer() calls the _handle_messages() on the next line after _wait_message(),
  which does nothing (no pending messages)
- then it goes to "retry:" and calls _handle_messages() again, which also does nothing
  (still no pending messages)
- scheduler switches to a videocore thread that calls EventHandler, informing us about the
  OMX_EventPortSettingsChanged event that just arrived
- EventHandler graps comp->messages_lock, but not comp->lock, so it can run in parallel at
  this point just fine.
- scheduler switches back to the src pad thread (which is in the middle of _acquire_buffer())
- the next _handle_messages() which is right before if (g_queue_is_empty (&port->pending_buffers))
  processes the OMX_EventPortSettingsChanged
- the buffer queue is still empty, so that thread blocks again in _wait_message()
- the sink pad thread tries to acquire the next input port buffer
- _acquire_buffer() also blocks this thread in:
   if (comp->pending_reconfigure_outports) { ... _wait_message() ... }
- DEADLOCK. gstreamer is waiting for omx to do something, omx waits for gstreamer to do something.

By removing those extra _handle_messages() calls, we can ensure that all the checks of
_acquire_buffer() will re-run. In the above case, after the scheduler switches back to
the middle of _acquire_buffer(), the code will enter _wait_message(), which will see that
there are pending messages and will return immediately, going back to "retry:" and
re-doing all the checks properly.

https://bugzilla.gnome.org/show_bug.cgi?id=741854

9 years agoomx: cleanup code a bit to remove else statement
Wonchul Lee [Thu, 26 Feb 2015 00:27:44 +0000 (09:27 +0900)]
omx: cleanup code a bit to remove else statement

https://bugzilla.gnome.org/show_bug.cgi?id=745191

9 years agoAutomatic update of common submodule
Stefan Sauer [Mon, 12 Jan 2015 15:13:35 +0000 (16:13 +0100)]
Automatic update of common submodule

From f2c6b95 to bc76a8b

9 years agoAutomatic update of common submodule
Sebastian Dröge [Thu, 18 Dec 2014 09:56:15 +0000 (10:56 +0100)]
Automatic update of common submodule

From ef1ffdc to f2c6b95

9 years agoAutomatic update of common submodule
Edward Hervey [Thu, 27 Nov 2014 16:12:42 +0000 (17:12 +0100)]
Automatic update of common submodule

From 7bb2bce to ef1ffdc

10 years agoomx: Add omxamrdec
Jun Ji [Thu, 13 Nov 2014 00:55:02 +0000 (09:55 +0900)]
omx: Add omxamrdec

https://bugzilla.gnome.org/show_bug.cgi?id=739333

10 years agoAutomatic update of common submodule
Sebastian Dröge [Mon, 27 Oct 2014 17:00:50 +0000 (18:00 +0100)]
Automatic update of common submodule

From 84d06cd to 7bb2bce

10 years agoAutomatic update of common submodule
Tim-Philipp Müller [Tue, 21 Oct 2014 12:03:44 +0000 (13:03 +0100)]
Automatic update of common submodule

From a8c8939 to 84d06cd

10 years agoAutomatic update of common submodule
Stefan Sauer [Tue, 21 Oct 2014 11:00:10 +0000 (13:00 +0200)]
Automatic update of common submodule

From 1f5d3c3 to a8c8939

10 years agoomxaudiodec: Clean up code a bit to get rid of useless NULL checks
Sebastian Dröge [Tue, 30 Sep 2014 07:47:20 +0000 (10:47 +0300)]
omxaudiodec: Clean up code a bit to get rid of useless NULL checks

10 years agoomxaudiodec: Unmap input buffers after usage
junji [Tue, 30 Sep 2014 01:50:07 +0000 (10:50 +0900)]
omxaudiodec: Unmap input buffers after usage

https://bugzilla.gnome.org/show_bug.cgi?id=736314

10 years agoomxvideoenc: Setup aspect ratio on RPi
Michal Lazo [Sun, 31 Aug 2014 20:30:13 +0000 (20:30 +0000)]
omxvideoenc: Setup aspect ratio on RPi

Needs firmware from yesterday or newer to work with all possible
aspect ratios. Before that it only supported a fixed list.

https://bugzilla.gnome.org/show_bug.cgi?id=732533

10 years agoomxaudioenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
Sebastian Dröge [Thu, 28 Aug 2014 07:44:31 +0000 (10:44 +0300)]
omxaudioenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE

10 years agoomxaudioenc: Use the base class' open/close vfuncs instead of calling them ourselves
Sebastian Dröge [Thu, 28 Aug 2014 07:43:22 +0000 (10:43 +0300)]
omxaudioenc: Use the base class' open/close vfuncs instead of calling them ourselves

10 years agoomxvideoenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE
Peng Liu [Wed, 27 Aug 2014 03:13:53 +0000 (22:13 -0500)]
omxvideoenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE

Fix a video encoder stall problem on RPi when changing the aspect ratio.

https://bugzilla.gnome.org/show_bug.cgi?id=732533

10 years agoomx: Let base classes handle EOS
Sebastian Dröge [Thu, 14 Aug 2014 14:36:11 +0000 (17:36 +0300)]
omx: Let base classes handle EOS

https://bugzilla.gnome.org//show_bug.cgi?id=734774

10 years agoomxaudiodec: Fix flushing logic and make it more similar to the video decoder
Sebastian Dröge [Thu, 14 Aug 2014 14:33:07 +0000 (17:33 +0300)]
omxaudiodec: Fix flushing logic and make it more similar to the video decoder

10 years agoRelease 1.2.0 1.2.0
Sebastian Dröge [Wed, 23 Jul 2014 09:28:12 +0000 (11:28 +0200)]
Release 1.2.0

10 years agoconfig: Update ranks to PRIMARY+1 to have higher preference than avdec_*
Sebastian Dröge [Tue, 22 Jul 2014 07:23:00 +0000 (09:23 +0200)]
config: Update ranks to PRIMARY+1 to have higher preference than avdec_*

See https://bugzilla.gnome.org/show_bug.cgi?id=732161

10 years agoomxaudiosink: Set port to not flushing in prepare() and keep it at flushing in unprep...
Sebastian Dröge [Sun, 20 Jul 2014 15:46:30 +0000 (17:46 +0200)]
omxaudiosink: Set port to not flushing in prepare() and keep it at flushing in unprepare()

https://bugzilla.gnome.org/show_bug.cgi?id=733168

10 years agoomxaudiodec: Implement setting of fallback channel positions
Sebastian Dröge [Sun, 13 Jul 2014 20:15:18 +0000 (22:15 +0200)]
omxaudiodec: Implement setting of fallback channel positions

10 years agoomx: Add AAC audio decoder
Sebastian Dröge [Sun, 13 Jul 2014 16:22:39 +0000 (18:22 +0200)]
omx: Add AAC audio decoder

10 years agoomxaudiodec: Get PCM parameters from the out port, not the in port
Sebastian Dröge [Wed, 2 Jul 2014 07:22:28 +0000 (09:22 +0200)]
omxaudiodec: Get PCM parameters from the out port, not the in port

10 years agoomxaudiodec: Implement hack for not disabling the output port after set_format until...
Sebastian Dröge [Thu, 15 May 2014 11:24:39 +0000 (13:24 +0200)]
omxaudiodec: Implement hack for not disabling the output port after set_format until the output format is known

Needed on some OMX implementations, e.g. the one from Atmel. It does
not send the settings-changed event on the output port if it is
disabled.

10 years agoomx: Add audio decoder base class and a subclass for MP3
Sebastian Dröge [Sat, 10 May 2014 21:12:54 +0000 (23:12 +0200)]
omx: Add audio decoder base class and a subclass for MP3

10 years agoomx: Link to gmodule-2.0-no-export for being able to use the g_module_*() API
Sebastian Dröge [Tue, 1 Jul 2014 07:38:01 +0000 (09:38 +0200)]
omx: Link to gmodule-2.0-no-export for being able to use the g_module_*() API

https://bugzilla.gnome.org/show_bug.cgi?id=732518

10 years agoexamples: #define GST_USE_UNSTABLE_API for libgstgl
Sebastian Dröge [Mon, 30 Jun 2014 13:00:54 +0000 (15:00 +0200)]
examples: #define GST_USE_UNSTABLE_API for libgstgl

10 years agoomxh264enc: Properly accumulate headers and push before the next frame
Sebastian Dröge [Sun, 29 Jun 2014 17:10:19 +0000 (19:10 +0200)]
omxh264enc: Properly accumulate headers and push before the next frame

Fixes output of encoding on RPi, where each header buffer (SPS and PPS)
is in a separate OMX buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=726669

10 years agoomxvideoenc: Implement flush() instead of the deprecated reset()
Sebastian Dröge [Sun, 29 Jun 2014 17:04:54 +0000 (19:04 +0200)]
omxvideoenc: Implement flush() instead of the deprecated reset()

10 years agorpi: It's 44100Hz, not 41400Hz
Sebastian Dröge [Wed, 25 Jun 2014 15:14:18 +0000 (17:14 +0200)]
rpi: It's 44100Hz, not 41400Hz

10 years agoconfigure.ac: require gstgl >= 1.3.3
Julien Isorce [Wed, 25 Jun 2014 10:12:51 +0000 (11:12 +0100)]
configure.ac: require gstgl >= 1.3.3

10 years agoexample: enable testegl
Julien Isorce [Fri, 25 Apr 2014 12:25:05 +0000 (13:25 +0100)]
example: enable testegl

See https://bugzilla.gnome.org/show_bug.cgi?id=728940

10 years agotestegl: do matrix mutlplication in the shader
Julien Isorce [Wed, 25 Jun 2014 09:19:54 +0000 (10:19 +0100)]
testegl: do matrix mutlplication in the shader

See https://bugzilla.gnome.org/show_bug.cgi?id=728940

10 years agotestegl: add a comment for the parse command
Julien Isorce [Wed, 25 Jun 2014 08:36:38 +0000 (09:36 +0100)]
testegl: add a comment for the parse command

See https://bugzilla.gnome.org/show_bug.cgi?id=728940

10 years agotestegl: convert code from GLESv1 to GLESv2
Julien Isorce [Fri, 25 Apr 2014 16:32:16 +0000 (17:32 +0100)]
testegl: convert code from GLESv1 to GLESv2

See https://bugzilla.gnome.org/show_bug.cgi?id=728940

10 years agotestegl: port to gstgl API
Julien Isorce [Fri, 25 Apr 2014 12:21:59 +0000 (13:21 +0100)]
testegl: port to gstgl API

- append a glfilter just before fakesink
  So that we get gltexture or eglimages

- propagate our EGLDisplay to the pipeline
  see GST_QUERY_CONTEXT

- share our EGLContext with the iternal gl context
  of the pipeline, see GST_QUERY_ALLOCATION

- use GstVideoGLTextureUploadMeta to upload
  the incoming gltexture or eglimage to our gl texture

TODO: convert from GLESv1 to GLESv2

See https://bugzilla.gnome.org/show_bug.cgi?id=728940

10 years agoomxbufferpool: Copy buffers if the stride does not match and we can't use video meta
Sebastian Dröge [Tue, 24 Jun 2014 12:52:58 +0000 (14:52 +0200)]
omxbufferpool: Copy buffers if the stride does not match and we can't use video meta

https://bugzilla.gnome.org/show_bug.cgi?id=731672

10 years agoomx: Only include OMX_VideoExt.h conditionally
Sebastian Dröge [Tue, 24 Jun 2014 12:52:43 +0000 (14:52 +0200)]
omx: Only include OMX_VideoExt.h conditionally

It does not exist on the RPi for example.

10 years agoconfigure.ac: Require GStreamer core/base >= 1.2.2
Sebastian Dröge [Tue, 24 Jun 2014 11:59:44 +0000 (13:59 +0200)]
configure.ac: Require GStreamer core/base >= 1.2.2

Needed at least for gst_video_decoder_release_frame().

10 years agoomxbufferpool: Fix format string compiler warning
Sebastian Dröge [Tue, 24 Jun 2014 11:02:13 +0000 (13:02 +0200)]
omxbufferpool: Fix format string compiler warning

10 years agoomxbufferpool: Initialize debug category
Michal Lazo [Sun, 22 Jun 2014 21:11:45 +0000 (21:11 +0000)]
omxbufferpool: Initialize debug category

10 years agoomxbufferpool: Properly convert OMX alignment to GStreamer alignment
Sebastian Dröge [Tue, 24 Jun 2014 10:42:22 +0000 (12:42 +0200)]
omxbufferpool: Properly convert OMX alignment to GStreamer alignment

GStreamer uses a bitmask for the alignment while OMX uses the
alignment itself. Let's convert.

https://bugzilla.gnome.org/show_bug.cgi?id=710564

10 years agoomxh264enc: Don't let baseclass finish frames for SPS/PPS buffers
Sebastian Dröge [Tue, 24 Jun 2014 09:11:28 +0000 (11:11 +0200)]
omxh264enc: Don't let baseclass finish frames for SPS/PPS buffers

Otherwise we a) send them twice, and b) finish a frame for something
that does not even include a frame.

https://bugzilla.gnome.org/show_bug.cgi?id=726669

10 years agoomxvideo: Include the separate headers too for compatibility with 1.0.x
Sebastian Dröge [Tue, 24 Jun 2014 08:22:37 +0000 (10:22 +0200)]
omxvideo: Include the separate headers too for compatibility with 1.0.x

10 years agoomxvp8dec: use VP8 definition from OMX_VideoExt.h
Zhao, Halley [Mon, 24 Mar 2014 08:09:40 +0000 (16:09 +0800)]
omxvp8dec: use VP8 definition from OMX_VideoExt.h

https://bugzilla.gnome.org/show_bug.cgi?id=726957

10 years agoconfigure: add --with-omx-header-path option for external omx headers
Zhao, Halley [Mon, 24 Mar 2014 07:33:26 +0000 (15:33 +0800)]
configure: add --with-omx-header-path option for external omx headers

https://bugzilla.gnome.org/show_bug.cgi?id=726957

10 years agoomxvideodec: fix a query leak
Aurélien Zanelli [Wed, 18 Jun 2014 21:04:33 +0000 (23:04 +0200)]
omxvideodec: fix a query leak

Also add a debug message if query fails.

https://bugzilla.gnome.org/show_bug.cgi?id=731898