platform/upstream/gstreamer.git
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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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
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

10 years agoomxvideodec: release frames with old PTS to avoid memory issue
Aurélien Zanelli [Fri, 30 May 2014 13:29:15 +0000 (15:29 +0200)]
omxvideodec: release frames with old PTS to avoid memory issue

Interlaced stream could make the decoder use two input frames to produce
one output frame causing the gstvideodecoder frame list to grow.
Assuming the video decoder output frame in display order rather than in
decoding order, this commit add a way to release frames with PTS less
than current output frame.

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

10 years agoomx: Fix a missing g_free() in error path
Kazunori Kobayashi [Thu, 27 Jun 2013 12:59:29 +0000 (21:59 +0900)]
omx: Fix a missing g_free() in error path

This fixes a memory leak with g_strdup() when an error occurs.

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

10 years agoomxvideodec: add missing stream unlock in error path
Aurélien Zanelli [Mon, 2 Jun 2014 13:34:09 +0000 (15:34 +0200)]
omxvideodec: add missing stream unlock in error path

10 years agoomx: Don't handle disabling/enabling ports exactly like flushing
Sebastian Dröge [Sat, 31 May 2014 13:12:05 +0000 (15:12 +0200)]
omx: Don't handle disabling/enabling ports exactly like flushing

Otherwise we might abort a flush operation in another thread when
enabling/disabling ports, leading to deadlocks sometimes.

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

10 years agoomxvideodec: Don't leak buffer pool config in error cases
Sebastian Dröge [Mon, 26 May 2014 09:02:10 +0000 (11:02 +0200)]
omxvideodec: Don't leak buffer pool config in error cases

CID 1216158

10 years agoAutomatic update of common submodule
Sebastian Dröge [Wed, 21 May 2014 08:53:43 +0000 (10:53 +0200)]
Automatic update of common submodule

From 211fa5f to 1f5d3c3

10 years agoomxvideoenc: Don't forget to unref codec state
Sebastian Dröge [Mon, 19 May 2014 07:10:07 +0000 (09:10 +0200)]
omxvideoenc: Don't forget to unref codec state

CID 1214603

10 years agoomxvideodec: Make output buffer pointer always initialized
Sebastian Dröge [Mon, 19 May 2014 07:08:33 +0000 (09:08 +0200)]
omxvideodec: Make output buffer pointer always initialized

CID 1214605

10 years agoomxvideodec: Check return value of gst_buffer_map()
Sebastian Dröge [Mon, 19 May 2014 07:06:42 +0000 (09:06 +0200)]
omxvideodec: Check return value of gst_buffer_map()

CID 1214599

10 years agoomxvideodec: Check return value of gst_omx_port_set_enabled() for errors
Sebastian Dröge [Mon, 19 May 2014 07:04:09 +0000 (09:04 +0200)]
omxvideodec: Check return value of gst_omx_port_set_enabled() for errors

CID 1214589

10 years agoomxvideodec: Check return values of buffer pool config parsing functions
Sebastian Dröge [Mon, 19 May 2014 07:01:46 +0000 (09:01 +0200)]
omxvideodec: Check return values of buffer pool config parsing functions

CID 1214588

10 years agoomx: Remove dead code, buf can never be NULL here as we just check for that the line...
Sebastian Dröge [Mon, 19 May 2014 06:48:50 +0000 (08:48 +0200)]
omx: Remove dead code, buf can never be NULL here as we just check for that the line above

CID 1214596

10 years agoomx: Fix comparisons in gst_omx_state_to_string() case to actually make sense
Sebastian Dröge [Mon, 19 May 2014 06:47:36 +0000 (08:47 +0200)]
omx: Fix comparisons in gst_omx_state_to_string() case to actually make sense

CID 1214593

10 years agoomx: Make sure to compare the error codes as unsigned integers so that comparisons...
Sebastian Dröge [Mon, 19 May 2014 06:45:10 +0000 (08:45 +0200)]
omx: Make sure to compare the error codes as unsigned integers so that comparisons >2**31 actually work

CID 1214592

10 years agoomx: Fix comparisons in gst_omx_command_to_string() default cause to actually work
Sebastian Dröge [Mon, 19 May 2014 06:40:23 +0000 (08:40 +0200)]
omx: Fix comparisons in gst_omx_command_to_string() default cause to actually work

CID 1214591

10 years agoomxaudioenc: Implement hack for not disabling the output port after set_format until...
Sebastian Dröge [Thu, 15 May 2014 11:22:56 +0000 (13:22 +0200)]
omxaudioenc: 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 agoomxvideoenc: Implement hack for not disabling the output port after set_format until...
Sebastian Dröge [Thu, 15 May 2014 11:21:07 +0000 (13:21 +0200)]
omxvideoenc: 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 a hack for not disabling the output port after set_format until the output...
Sebastian Dröge [Thu, 15 May 2014 08:58:34 +0000 (10:58 +0200)]
omx: Add a 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 agoomxaudiosink: implement _delay only in the RaspberryPI
Josep Torra [Mon, 12 May 2014 10:33:32 +0000 (12:33 +0200)]
omxaudiosink: implement _delay only in the RaspberryPI

Make code implementation conditionally built for RaspberryPI because
OMX_IndexConfigAudioRenderingLatency seems to be a Broadcom extension.

On other targets the query position might not be accurate without
implementing _delay appropriatelly.

10 years agoomxaudioenc: Correctly scale nTickCount by OMX_TICKS_PER_SECOND
Sebastian Dröge [Mon, 12 May 2014 06:56:15 +0000 (08:56 +0200)]
omxaudioenc: Correctly scale nTickCount by OMX_TICKS_PER_SECOND

10 years agoomxaudioenc: Drain encoder on NULL buffer and don't drain on flushing
Sebastian Dröge [Sat, 10 May 2014 20:48:23 +0000 (22:48 +0200)]
omxaudioenc: Drain encoder on NULL buffer and don't drain on flushing

10 years agoomxvideodec: Set nTickCount based on the buffer's duration instead of something wrong
Sebastian Dröge [Sat, 10 May 2014 20:47:56 +0000 (22:47 +0200)]
omxvideodec: Set nTickCount based on the buffer's duration instead of something wrong

10 years agoomxvideoenc: Set nTickCount to the whole duration of the buffer instead of a wrong...
Sebastian Dröge [Sat, 10 May 2014 20:47:21 +0000 (22:47 +0200)]
omxvideoenc: Set nTickCount to the whole duration of the buffer instead of a wrong calculation

10 years agoomxaudiosink: Fix format string compiler warnings
Sebastian Dröge [Sat, 10 May 2014 20:46:51 +0000 (22:46 +0200)]
omxaudiosink: Fix format string compiler warnings

10 years agoomxaudiosink: Implements OpenMAX based audio sinks
Josep Torra [Fri, 4 Apr 2014 12:11:58 +0000 (14:11 +0200)]
omxaudiosink: Implements OpenMAX based audio sinks

Provides omxanalogaudiosink and omxhdmiaudiosink elements on
the Raspberry PI.

- omxanalogaudiosink is capable to render raw mono or stereo audio
through the jack output.
- omxhdmiaudiosink is capable to render raw audio up to 8 channels
and transmit ac3/dts(IEC 61937) through the HDMI output.
- sinks provide a clock derived from rendered samples
- sinks support the GstStreamVolume interface by implementing
the volume and mute properties.

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

10 years agoAutomatic update of common submodule
Sebastian Dröge [Sat, 3 May 2014 08:17:35 +0000 (10:17 +0200)]
Automatic update of common submodule

From bcb1518 to 211fa5f

10 years agoomxvideodec: can negotiate caps with memory:EGLImage feature when using EGLImage...
Julien Isorce [Tue, 29 Apr 2014 14:16:16 +0000 (15:16 +0100)]
omxvideodec: can negotiate caps with memory:EGLImage feature when using EGLImage allocator

Previously when using gst EGLImage allocator the caps was
video/x-raw, format=RGBA instead of
video/x-raw(memory:EGLImage), format=RGBA

Kepp previous behavior in case negotiation fails with caps feature.
It means it will still have a chance to use EGLImage even if the
feature is not in the caps.

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

10 years agoomxvp8dec: fix typo in GST_TYPE_OMX_VP8_DEC define
Aurélien Zanelli [Wed, 23 Apr 2014 07:57:48 +0000 (09:57 +0200)]
omxvp8dec: fix typo in GST_TYPE_OMX_VP8_DEC define

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

10 years agoomxvideodec: don't unref caps before logging field from it
Aurélien Zanelli [Wed, 16 Apr 2014 09:00:55 +0000 (11:00 +0200)]
omxvideodec: don't unref caps before logging field from it

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

10 years agoexample: disable testegl since libgstegl has been removed
Julien Isorce [Tue, 15 Apr 2014 16:30:13 +0000 (17:30 +0100)]
example: disable testegl since libgstegl has been removed

As decided in bug #703343

Not compatible with the new libgstgl API.
A portage has been started, attachment 272800.

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

10 years agoomxvideodec: use new libgstgl API since libgstegl has been removed
Julien Isorce [Tue, 15 Apr 2014 16:11:08 +0000 (17:11 +0100)]
omxvideodec: use new libgstgl API since libgstegl has been removed

There is no point to retrieve a ref/unref type
instead of an EGLDisplay directly. It's like for EGLImage.

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

10 years agoconfigure.ac: check for libgstgl since libgstegl has been removed
Julien Isorce [Tue, 15 Apr 2014 16:06:38 +0000 (17:06 +0100)]
configure.ac: check for libgstgl since libgstegl has been removed

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

10 years agoomxvideodec: add support of more color format
Aurélien Zanelli [Wed, 9 Apr 2014 16:52:16 +0000 (18:52 +0200)]
omxvideodec: add support of more color format

Add support for ABGR, ARGB, RGB16, BGR16, YUY2, UYVY, YVYU, GRAY8 and
NV16 color format.

10 years agoomxvideodec: simplify color format conversion in fill_buffer function
Aurélien Zanelli [Wed, 9 Apr 2014 16:51:57 +0000 (18:51 +0200)]
omxvideodec: simplify color format conversion in fill_buffer function

10 years agoomxbufferpool: make video stride and offset calculation easier
Aurélien Zanelli [Wed, 9 Apr 2014 16:51:41 +0000 (18:51 +0200)]
omxbufferpool: make video stride and offset calculation easier

It will be easier to support more color format.

10 years agoomx: add an helper to convert OMX color format to GStreamer color format
Aurélien Zanelli [Wed, 9 Apr 2014 16:51:12 +0000 (18:51 +0200)]
omx: add an helper to convert OMX color format to GStreamer color format

10 years agoomxvideodec: Implement pipeline draining to support adaptive scenarios
Josep Torra [Mon, 10 Mar 2014 16:43:50 +0000 (17:43 +0100)]
omxvideodec: Implement pipeline draining to support adaptive scenarios

When draining due a format change also drain
the pipeline to reclaim back all buffers.

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

10 years agoexamples: fix several memory leaks in the testegl example
Josep Torra [Thu, 27 Mar 2014 12:57:32 +0000 (13:57 +0100)]
examples: fix several memory leaks in the testegl example

Ensure to call to image_data_free in order to release GPU resources.
Also ensure to destroy EGLImage and GLTexture from proper
thread/context.

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