platform/upstream/gst-omx.git
8 years agoMerge branch 'upstream/master' into tizen 12/53212/1
Sejun Park [Wed, 2 Dec 2015 23:55:28 +0000 (08:55 +0900)]
Merge branch 'upstream/master' into tizen

Change-Id: I6eb03c12b9672f6ad09ad1535351dbc6c0380dc3

8 years agoRelease 1.2.0 79/53179/1
Jeon Hee Chul [Wed, 2 Dec 2015 10:19:24 +0000 (19:19 +0900)]
Release 1.2.0

Change-Id: I65b90a7d4caa26f56fe65a95fb086f8ac5d9e016

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

8 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

8 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

8 years agoAdded gst-omx.conf for building 64-bit 02/49802/4 accepted/tizen/mobile/20151022.055800 accepted/tizen/tv/20151022.055817 accepted/tizen/wearable/20151022.055831 submit/tizen/20151022.031014
Sejun Park [Tue, 20 Oct 2015 09:54:10 +0000 (18:54 +0900)]
Added gst-omx.conf for building 64-bit

Change-Id: I3b1d389f121405129f78a5fe3808885f155f679a
Signed-off-by: Sejun Park <sejun79.park@samsung.com>
8 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.

8 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.

8 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.

8 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

8 years agoChanged plugin-name of omx 48/46648/1 tizen_3.0.m1_mobile tizen_3.0.m1_tv accepted/tizen/mobile/20150904.104531 accepted/tizen/tv/20150904.104807 accepted/tizen/wearable/20150904.105003 submit/tizen/20150904.063757 submit/tizen_common/20151023.083358 submit/tizen_common/20151026.085049 tizen_3.0.m1_mobile_release tizen_3.0.m1_tv_release tizen_3.0.m2.a1_mobile_release tizen_3.0.m2.a1_tv_release
Sejun Park [Mon, 24 Aug 2015 11:50:21 +0000 (20:50 +0900)]
Changed plugin-name of omx

Change-Id: I6a426f66b6e7902112d04bdf3dfa1b57d37a0243

8 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

8 years agoSending mpeg4 codec data to MFC. Now MFC is able to parse mpeg4 header data. 30/46130/1 accepted/tizen/mobile/20150821.092203 accepted/tizen/tv/20150821.092224 accepted/tizen/wearable/20150821.092231 submit/tizen/20150821.062522
Barun Kumar Singh [Mon, 17 Aug 2015 06:16:11 +0000 (11:46 +0530)]
Sending mpeg4 codec data to MFC. Now MFC is able to parse mpeg4 header data.
Signed-off-by: Barun Kumar Singh <barun.singh@samsung.com>
Change-Id: I5a37415505619627cb1f231516cc7e44f2686bb3

8 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 agoModify configuration for setting gstomx.conf 62/45062/1 accepted/tizen/mobile/20150803.235842 accepted/tizen/tv/20150803.235856 accepted/tizen/wearable/20150803.235905 submit/tizen/20150803.102336
Sejun Park [Fri, 31 Jul 2015 05:18:52 +0000 (14:18 +0900)]
Modify configuration for setting gstomx.conf

Change-Id: Ibc432bedef28da16acf3ddb96eb6258410a3e0bc

9 years agoFixed issue when operating with user mode 31/45031/1 accepted/tizen/mobile/20150731.005103 accepted/tizen/tv/20150731.005153 accepted/tizen/wearable/20150731.005242 submit/tizen/20150730.125423
Sejun Park [Thu, 30 Jul 2015 12:21:37 +0000 (21:21 +0900)]
Fixed issue when operating with user mode

Change-Id: I7289dfa6ddf5437f3f88fa8278916e26e941c2b6

9 years agoAdd dump func. for debuffing & Fix build error 31/44931/3
Sejun Park [Wed, 29 Jul 2015 12:18:54 +0000 (21:18 +0900)]
Add dump func. for debuffing & Fix build error

Change-Id: Ibbb59212d8b73e24f49417b71eb038232b45ac71
Signed-off-by: Sejun Park <sejun79.park@samsung.com>
9 years agoFixing "g_ptr_array_set_size" crash. 71/44071/2 submit/tizen/20150729.072849
Barun Kumar Singh [Thu, 16 Jul 2015 08:05:44 +0000 (13:35 +0530)]
Fixing "g_ptr_array_set_size" crash.
Increasing omx elements priority.
Signed-off-by: Barun Kumar Singh <barun.singh@samsung.com>
Change-Id: I388fa4d7bd3da9c60ed30fd4659815e5356a011b

9 years agoIncorporating review comments. 98/43798/2
Barun Kumar Singh [Tue, 14 Jul 2015 06:36:43 +0000 (12:06 +0530)]
Incorporating review comments.
Adding MMVideoBuffer support and fixing plane size calculation for H264
Signed-off-by: Barun Kumar Singh <barun.singh@samsung.com>
Change-Id: I7c7a85386a561956d1ea81119ec9b1ac48fc9b26

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 agoRemoving dependency of X11, dri2proto,libdri2, xfixes. 19/39719/1 submit/tizen/20150527.054122
Barun Kumar Singh [Thu, 21 May 2015 11:34:58 +0000 (17:04 +0530)]
Removing dependency of X11, dri2proto,libdri2, xfixes.
gbs build successful for wayland repository
Signed-off-by: Barun Kumar Singh <barun.singh@samsung.com>
Change-Id: I1c52142a6680db4e5649cf17e4a213950eae4db0

9 years agoFixing encoder plane size calculating. 44/39644/1 submit/tizen/20150520.110617
Barun Kumar Singh [Wed, 20 May 2015 09:11:38 +0000 (14:41 +0530)]
Fixing encoder plane size calculating.
Signed-off-by: Barun Kumar Singh <barun.singh@samsung.com>
Change-Id: I7a2eb58809b36ffbd585b8a35e33392acfdc6b9f

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 agoIncorporating MPEG2 review comments. 36/39536/2
Barun Kumar Singh [Mon, 18 May 2015 11:19:01 +0000 (16:49 +0530)]
Incorporating MPEG2 review comments.
Enabling h264 encoder.
Removing unnecessary commented code.
Signed-off-by: Barun Kumar Singh <barun.singh@samsung.com>
Change-Id: Ibe9ac74078bcb96d2b0c4b7f857dfe93b7b7dce0

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 ago Adding libtbm support. 97/37497/1
Barun Kumar Singh [Fri, 27 Mar 2015 09:26:22 +0000 (14:56 +0530)]
 Adding libtbm support.
 Signed-off-by : Barun Kumar Singh <barun.singh@samsung.com>
Change-Id: Idefb94949ee67844cf38524a99d27935c0530973

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 agoomx: Fix a missing g_free() in error path 30/23230/2 tizen_3.0.2014.q4_common tizen_3.0.2015.q1_common tizen_3.0.2015.q2_common tizen_3.0_ivi accepted/tizen/common/20141107.141938 accepted/tizen/ivi/20141112.060040 submit/tizen/20141106.013908 submit/tizen_mobile/20141120.000000 tizen_3.0_ivi_release
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

Change-Id: I333df2cc1197e2c04ca65f2f82889e9ce7c975d2
Signed-off-by: Kazunori Kobayashi <kkobayas@igel.co.jp>
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 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 agoAdded Samsung specific code. 27/23327/2
Andrey Shelest [Mon, 23 Jun 2014 16:09:39 +0000 (19:09 +0300)]
Added Samsung specific code.
Change-Id: Ibfd412781bd521ba3e15a5046ce0db660a02ca61

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