6 years agoProperty refactoring
Vincent Penquerc'h [Wed, 19 Sep 2012 17:23:53 +0000 (17:23 +0000)]
Property refactoring

Since the majority of properties have very (but not quite!) similar
get and set methods, add some macros to generate them. This trims a
lot of copy/pasted code, removes unneeded differences between some
properties, and fixes a few bugs (such as forgetting to set a GValue
from the data received from the hardware, or having two properties
write different values to the same hardware parameter).

6 years agoomx_camera: add more missing ifdef guards for disabling pads
Vincent Penquerc'h [Wed, 19 Sep 2012 12:26:28 +0000 (12:26 +0000)]
omx_camera: add more missing ifdef guards for disabling pads

Also disable vidsrc by default, nothing uses it at the moment.

6 years agoDo not access freed memory
Vincent Penquerc'h [Wed, 19 Sep 2012 11:31:53 +0000 (11:31 +0000)]
Do not access freed memory

6 years agoFix race condition in freeing buffers
Vincent Penquerc'h [Wed, 19 Sep 2012 11:28:01 +0000 (11:28 +0000)]
Fix race condition in freeing buffers

Disabling a port can happen while one or more buffers are in
OMX waiting to be filled. We cannot free buffers then, as this
will cause OMX to assert when the buffer gets filled.
Marking those buffers to be freed as they are returned from OMX
does not work either, as OMX deadlocks if I try to free the
buffers from the FillBufferDone callback.
So we end up keeping track of the number of buffers currently
in OMX, and wait for all to be released before freeing them.

This fixes an occasional, but fairly frequent, crash on exit.

6 years agoomx_camera: disable thumbsrc pad
Vincent Penquerc'h [Tue, 18 Sep 2012 17:11:44 +0000 (17:11 +0000)]
omx_camera: disable thumbsrc pad

Nothing uses it, and it causes occasional errors from negotiation
as width/height get set to 1x1 as it's an ALWAYS pad which doesn't
actually get linked to anything.

6 years agoLog states on enter/leave of core functions that change state
Vincent Penquerc'h [Tue, 18 Sep 2012 15:41:00 +0000 (15:41 +0000)]
Log states on enter/leave of core functions that change state

Since we're supposed to wait for the state change to be performed,
it helps spot issues if states are logged at these times.

6 years agoRejig OMX config and parameter setter macros to ease debugging
Vincent Penquerc'h [Tue, 18 Sep 2012 15:39:32 +0000 (15:39 +0000)]
Rejig OMX config and parameter setter macros to ease debugging

Calls to these setters are now automatically logged, along with
any error. Also remove all the assertions after most such calls,
now folded into the macros.

6 years agoomx_camera: do not crash when OMX fails to initialize
Vincent Penquerc'h [Tue, 18 Sep 2012 11:31:28 +0000 (11:31 +0000)]
omx_camera: do not crash when OMX fails to initialize

This can happen more often that we'd like, and there's no need
to crash when this happens. Sadly, getting and setting properties
needs OMX to be initialized as ports are configured and queries
there, so OMX initialization can't be left till the NULL->READY
state change, so we early out in the instance init code when we
get an error from OMX init.

Also, do not assert when OMX fails to initialize, log errors and
trigger an element error where appropriate. This gets rid of
the spurious criticals and causes the camera element to fail to
link and avoid going much further (and crashing).

6 years agoomx_camera: fix prototype
Vincent Penquerc'h [Tue, 18 Sep 2012 11:30:50 +0000 (11:30 +0000)]
omx_camera: fix prototype

This is C, not C++, give a proper prototype with argument list.

6 years agoDo not push buffers on the async list when we're winding it down
Vincent Penquerc'h [Tue, 18 Sep 2012 10:52:32 +0000 (10:52 +0000)]
Do not push buffers on the async list when we're winding it down

This avoids a crash later on, as those buffers will have been freed.

6 years agoomx_camera: fix CAC property get/set
Vincent Penquerc'h [Mon, 17 Sep 2012 12:02:03 +0000 (12:02 +0000)]
omx_camera: fix CAC property get/set

This property is categorized as a 'config', and not a 'param',
by OMX, so use the correct set of getters/setters.

6 years agoMake stereo video capture work
Vincent Penquerc'h [Mon, 17 Sep 2012 10:40:08 +0000 (10:40 +0000)]
Make stereo video capture work

Chroma planes have a peculiar layout in stereo mode, so we need
to move chroma data around to match the expected layout.

Both stereo and, well, mono, work now, but since this fix is borne
out of experimentation, it may not be fully correct.

See comments in the code for more details.

6 years agoDo not confuse allocated and filled length
Vincent Penquerc'h [Fri, 14 Sep 2012 09:58:47 +0000 (09:58 +0000)]
Do not confuse allocated and filled length

While this will be the same for exactly sizes raw image buffers,
it may not be the same for overallocated buffers, and this can
apparently happen for stereo video capture, where we get less
data than was required for allocation, and where OMX checks we
pass the full allocated length.

6 years agoFix a "may be used uninitialized" warning
Vincent Penquerc'h [Thu, 13 Sep 2012 13:06:22 +0000 (13:06 +0000)]
Fix a "may be used uninitialized" warning

6 years agoomx_camera: add stereo mode setup
Vincent Penquerc'h [Thu, 13 Sep 2012 13:05:43 +0000 (13:05 +0000)]
omx_camera: add stereo mode setup

6 years agoomx_camera: fixate to double width when using stereo mode
Vincent Penquerc'h [Thu, 13 Sep 2012 13:04:51 +0000 (13:04 +0000)]
omx_camera: fixate to double width when using stereo mode

6 years agoomx_camera: simplify pool setup code
Vincent Penquerc'h [Thu, 13 Sep 2012 12:36:26 +0000 (12:36 +0000)]
omx_camera: simplify pool setup code

Since there is now one pool per pad, we don't need to
determine max size (and indeed max size would be very
large as the image port configured as JPEG output gets
configured with 8 MB buffers as the size of any actual
buffer is unknown at the time).

6 years agoomx_camera: fix leaks (and static const data static const while there)
Vincent Penquerc'h [Wed, 12 Sep 2012 14:43:52 +0000 (14:43 +0000)]
omx_camera: fix leaks (and static const data static const while there)

6 years agoomx_camera: send EOS event to all source pads where appropriate
Vincent Penquerc'h [Wed, 12 Sep 2012 14:27:20 +0000 (14:27 +0000)]
omx_camera: send EOS event to all source pads where appropriate

When the base class pauses task on EOS, it only sends an EOS event
to the source pad it knows about, and does not notify the derived
class. We still need to send an EOS event to the other source pads
as well, so use an event probe to detect when an EOS event is sent
to the main source pad, and send EOS events to the ohter pads when
this happens.

This fixes hangs on EOS.

6 years agoomx_camera: log negotiation messages with the pad being negotiated
Vincent Penquerc'h [Wed, 12 Sep 2012 09:57:02 +0000 (09:57 +0000)]
omx_camera: log negotiation messages with the pad being negotiated

6 years agoMinor cleanup
Vincent Penquerc'h [Wed, 12 Sep 2012 09:32:10 +0000 (09:32 +0000)]
Minor cleanup

6 years agoomx_camera: fix calculation of stride
Vincent Penquerc'h [Wed, 12 Sep 2012 08:12:53 +0000 (08:12 +0000)]
omx_camera: fix calculation of stride

6 years agoomx_camera: authenticate against DRI2 where possible
Vincent Penquerc'h [Tue, 11 Sep 2012 16:45:10 +0000 (16:45 +0000)]
omx_camera: authenticate against DRI2 where possible

This allows coexistence with gst-ducati.

6 years agoHandle failure to allocate a buffer without crashing
Vincent Penquerc'h [Tue, 11 Sep 2012 11:28:58 +0000 (11:28 +0000)]
Handle failure to allocate a buffer without crashing

6 years agoomx_camera: limit color formats to supported ones
Vincent Penquerc'h [Tue, 11 Sep 2012 10:46:00 +0000 (10:46 +0000)]
omx_camera: limit color formats to supported ones

Experimentation shows that OMX accepts NV12 and UYVY, but not
I420 nor YUY2, so reflect this in caps.

6 years agoomx_camera: fix zoom property
Vincent Penquerc'h [Tue, 11 Sep 2012 08:56:32 +0000 (08:56 +0000)]
omx_camera: fix zoom property

Change type (and range) from guint to float to match the attached
Photography interface, and add a couple missing lines (setting the
given GValue in set_property, and returning zoom level from OMX).

6 years agoFix buffer refcounting issues
Vincent Penquerc'h [Mon, 10 Sep 2012 15:47:58 +0000 (15:47 +0000)]
Fix buffer refcounting issues

The ordering of operations at the end is a bit tricky,
so comment abundantly, and should now unref every buffer
the correct amount - not too much, and not too little.

Also, allocate the img_src buffers using the pool (of
which we now have one per port, since the caps and size
may be different), as the port code now expects DRM
buffers only.

This fixes all the refcounting and crashes I know of
when using the img_src port, though not yet the hang
on EOS.

6 years agoomx_camera: negotiate caps for all non basesrc pads
Vincent Penquerc'h [Fri, 7 Sep 2012 10:10:10 +0000 (10:10 +0000)]
omx_camera: negotiate caps for all non basesrc pads

The basesrc class will only negotiate for its own pad, and we want
the other pads (eg, imgsrc) to also be negotiated.

This fixes an issue with wrong buffer sizes being used.

6 years agoFix image capture
Vincent Penquerc'h [Thu, 6 Sep 2012 13:58:13 +0000 (13:58 +0000)]
Fix image capture

For unclear reasons, setting the camera to start capturing has to
be delayed for it to work.

6 years agoSwitch to using drm buffers
Vincent Penquerc'h [Wed, 5 Sep 2012 12:22:40 +0000 (12:22 +0000)]
Switch to using drm buffers

This probably breaks others elements, but since they were removed
we don't care too much now. This also makes the code OMAP specific.
The omap_bo APIs could be moved to a separate layer if needed.
There are still issues in freeing a buffer at EOS, but it seems to
work with a simple capture pipeline at last. Probably a lot of
cases needing fixing.

6 years agoAdd missing USE_GSTOMXCAM_{IMG,THUMB}SRCPAD guards
Vincent Penquerc'h [Fri, 31 Aug 2012 11:47:28 +0000 (11:47 +0000)]

6 years agoRemove use of -strided pixel formats
Vincent Penquerc'h [Fri, 31 Aug 2012 11:46:48 +0000 (11:46 +0000)]
Remove use of -strided pixel formats

6 years agoDo not compare caps with NULL caps
Vincent Penquerc'h [Wed, 29 Aug 2012 11:11:44 +0000 (11:11 +0000)]
Do not compare caps with NULL caps

6 years agoPrint framerate in a friendly manner
Vincent Penquerc'h [Wed, 29 Aug 2012 11:11:20 +0000 (11:11 +0000)]
Print framerate in a friendly manner

6 years agoWarn when a symbol is not found in the dlopened library
Vincent Penquerc'h [Wed, 29 Aug 2012 10:24:52 +0000 (10:24 +0000)]
Warn when a symbol is not found in the dlopened library

6 years agoDo not cast GstBuffer** to GstBuffer*, it won't end well
Vincent Penquerc'h [Wed, 29 Aug 2012 10:10:17 +0000 (10:10 +0000)]
Do not cast GstBuffer** to GstBuffer*, it won't end well

6 years agoRemove libcheck use, use the gst version instead
Vincent Penquerc'h [Wed, 29 Aug 2012 09:47:29 +0000 (09:47 +0000)]
Remove libcheck use, use the gst version instead

Since we already depend on gst anyway, since libcheck was
optional, and since the tests did not test whether libcheck
had been found before using it, and thus failing to build.

6 years agoDisable all plugins bar the camera one
Vincent Penquerc'h [Wed, 29 Aug 2012 09:08:18 +0000 (09:08 +0000)]
Disable all plugins bar the camera one

6 years agoFixup build on blaze
Vincent Penquerc'h [Wed, 29 Aug 2012 09:06:06 +0000 (09:06 +0000)]
Fixup build on blaze

I have a library that seems different from what's expected,
in particular no pc file, a differently capitalized library,
and slightly different header names.

6 years agoomx_camera: report 4-frames latency
Alessandro Decina [Thu, 22 Mar 2012 14:53:41 +0000 (15:53 +0100)]
omx_camera: report 4-frames latency

6 years agoomx_camera: remove some QUERY_BUFFERS related dead code
Alessandro Decina [Thu, 22 Mar 2012 14:52:15 +0000 (15:52 +0100)]
omx_camera: remove some QUERY_BUFFERS related dead code

6 years agoomx_camera: store negotiated framerate
Alessandro Decina [Thu, 22 Mar 2012 14:48:36 +0000 (15:48 +0100)]
omx_camera: store negotiated framerate

6 years agoomx_camera: make non strided video/x-raw-yuv work
Alessandro Decina [Tue, 20 Dec 2011 15:43:09 +0000 (16:43 +0100)]
omx_camera: make non strided video/x-raw-yuv work

Only works with allocate-buffers=false

6 years agoomx_camera: Add missing GstPhotography properties
Luciana Fujii Pontello [Mon, 22 Aug 2011 23:06:35 +0000 (20:06 -0300)]
omx_camera: Add missing GstPhotography properties

Installed GstPhotography properties that were missing. These properties
don't change anything in omx_camera. They are implemented just to
conform with the interface.

6 years agoomx_camera: Always install GstPhotography properties
Luciana Fujii Pontello [Mon, 22 Aug 2011 21:14:32 +0000 (18:14 -0300)]
omx_camera: Always install GstPhotography properties

We need to install all GstPhotography properties always to avoid
warnings in gst-inspect.

6 years agoomx_camera: Keep device setting in NULL state
Luciana Fujii Pontello [Fri, 19 Aug 2011 12:48:10 +0000 (09:48 -0300)]
omx_camera: Keep device setting in NULL state

Device setting was lost in NULL state. The element now stores it's value
to keep the configuration despite state changes.

6 years agoport: change the value for the OMX_BUFFERFLAG_INVALIDTIME flag
Alessandro Decina [Tue, 18 Oct 2011 14:08:08 +0000 (16:08 +0200)]
port: change the value for the OMX_BUFFERFLAG_INVALIDTIME flag

From 0x00000100 to 0x00000800 as 0x00000100 is already assigned to

7 years agovc1dec: add vc1 decoder
Alessandro Decina [Thu, 29 Sep 2011 13:06:55 +0000 (15:06 +0200)]
vc1dec: add vc1 decoder

7 years agobasefilter: make inject_codec_data a vfunc
Alessandro Decina [Thu, 29 Sep 2011 13:03:19 +0000 (15:03 +0200)]
basefilter: make inject_codec_data a vfunc

For codecs that need to modify the codec data buffer

7 years agovideodec: don't abort if configuring nBufferCountActual fails
Alessandro Decina [Tue, 13 Sep 2011 15:37:09 +0000 (17:37 +0200)]
videodec: don't abort if configuring nBufferCountActual fails

7 years agoBundle timer-32k.h in util/
Alessandro Decina [Wed, 7 Sep 2011 16:14:52 +0000 (18:14 +0200)]
Bundle timer-32k.h in util/

7 years agoAdd hack to pass buffers with invalid timestamps through the decoder.
George Kiagiadakis [Wed, 7 Sep 2011 14:39:19 +0000 (17:39 +0300)]
Add hack to pass buffers with invalid timestamps through the decoder.

This is necessary when there is no timing information in the source.
If GST_CLOCK_TIME_NONE gets converted to an OMX timestamp and then back
to GstClockTime, the result is a timestamp a few hundred years in the
future, which confuses the sink.

7 years agoh264dec: workaround domx bug for baseline level11 files
Alessandro Decina [Fri, 2 Sep 2011 10:24:50 +0000 (12:24 +0200)]
h264dec: workaround domx bug for baseline level11 files

Setting OMX_IndexParamVideoAvc for baseline level11 files, results in domx
setting nBufferCountMin to 1 instead of 3. This commit workarounds the problem,
fixing hangs with some files.

7 years agobasevideodec: fix one last leak in capsnego
Alessandro Decina [Thu, 18 Aug 2011 10:24:52 +0000 (12:24 +0200)]
basevideodec: fix one last leak in capsnego

7 years agobasevideodec: remove code that should have been removed in the last commit. oops.
Alessandro Decina [Thu, 18 Aug 2011 10:22:15 +0000 (12:22 +0200)]
basevideodec: remove code that should have been removed in the last commit. oops.

7 years agobasevideodec: add rowstride field to yuv-strided caps and not to yuv
Alessandro Decina [Thu, 18 Aug 2011 09:48:39 +0000 (11:48 +0200)]
basevideodec: add rowstride field to yuv-strided caps and not to yuv

7 years agobasevideodec: maintain downstream caps order during negotiation
Alessandro Decina [Thu, 18 Aug 2011 09:47:05 +0000 (11:47 +0200)]
basevideodec: maintain downstream caps order during negotiation

...and fix a few caps leak in the process

7 years agocamera: fix autofocus setting through GstPhotography
Alessandro Decina [Wed, 10 Aug 2011 07:01:56 +0000 (09:01 +0200)]
camera: fix autofocus setting through GstPhotography

7 years agocamera: implement camerabin2's renegotiate event GLP1.4
Alessandro Decina [Thu, 4 Aug 2011 21:36:31 +0000 (23:36 +0200)]
camera: implement camerabin2's renegotiate event

7 years agompeg2dec: the component doesn't need codec_data in-stream
Alessandro Decina [Thu, 21 Jul 2011 11:26:59 +0000 (13:26 +0200)]
mpeg2dec: the component doesn't need codec_data in-stream

7 years agobasefilter: add inject_codec_data variable
Alessandro Decina [Thu, 21 Jul 2011 11:26:11 +0000 (13:26 +0200)]
basefilter: add inject_codec_data variable

inject_codec_data signals whether the component needs to have the codec_data
buffer from caps injected in the stream or not.

7 years agoomx: add GST_PLUGINS_BASE_CFLAGS since we link to -lgstvideo
Alessandro Decina [Thu, 21 Jul 2011 11:25:18 +0000 (13:25 +0200)]
omx: add GST_PLUGINS_BASE_CFLAGS since we link to -lgstvideo

7 years agoAdd support for mpeg2 decoder
Juan Yanez [Thu, 23 Jun 2011 20:38:33 +0000 (15:38 -0500)]
Add support for mpeg2 decoder

7 years agoport: fix flushing
Alessandro Decina [Tue, 19 Jul 2011 17:44:23 +0000 (19:44 +0200)]
port: fix flushing

Send OMX_CommandFlush and wait for it to be complete _before_ popping buffers
off port->queue.

7 years agoport: don't leak the EOS buffer
Alessandro Decina [Tue, 19 Jul 2011 17:43:46 +0000 (19:43 +0200)]
port: don't leak the EOS buffer

7 years agoRevert "hack for seek bug in OMX"
Alessandro Decina [Tue, 19 Jul 2011 17:36:08 +0000 (19:36 +0200)]
Revert "hack for seek bug in OMX"

This reverts commit 997ea08580840a3f0a3a753cd950d8deb38b3303.



7 years agoport: fix camera regression after last commit
Alessandro Decina [Tue, 19 Jul 2011 11:12:57 +0000 (13:12 +0200)]
port: fix camera regression after last commit

Looks like PortDisable isn't always synchronous so before calling OMX_FreeBuffer
on buffers, we need to wait for FBD callbacks.

7 years agoport: make sure to call OMX_FreeBuffer only once for each buffer.
Alessandro Decina [Wed, 13 Jul 2011 09:46:46 +0000 (11:46 +0200)]
port: make sure to call OMX_FreeBuffer only once for each buffer.

Fixes hangs calling OMX_FreeBuffer on already freed buffers.

7 years agoh264dec: Add support for reference frames configuration.
Joaquin Castellanos [Mon, 20 Jun 2011 14:47:02 +0000 (09:47 -0500)]
h264dec: Add support for reference frames configuration.

Signed-off-by: Daniel Diaz <>
7 years agoh264dec: Add support for AVC config from stream.
Joaquin Castellanos [Fri, 17 Jun 2011 20:17:11 +0000 (15:17 -0500)]
h264dec: Add support for AVC config from stream.

When an H.264 BaseProfile stream is detected, a reduced number of
2D TILER buffers are allocated by the mem-manager.

Signed-off-by: Daniel Diaz <>
7 years agoh264enc: Add Rate Control support property.
Joaquin Castellanos [Mon, 20 Jun 2011 15:09:09 +0000 (10:09 -0500)]
h264enc: Add Rate Control support property.

Signed-off-by: Daniel Diaz <>
7 years agotests: Add Image Capture scripts.
Daniel Diaz [Wed, 29 Jun 2011 21:06:58 +0000 (16:06 -0500)]
tests: Add Image Capture scripts.

Signed-off-by: Daniel Diaz <>
7 years agotests: Drop deprecated
Daniel Diaz [Wed, 29 Jun 2011 21:05:59 +0000 (16:05 -0500)]
tests: Drop deprecated

Signed-off-by: Daniel Diaz <>
7 years agoh264enc: set stream-format=byte-stream,alignment=au on caps
Alessandro Decina [Wed, 6 Jul 2011 21:32:19 +0000 (23:32 +0200)]
h264enc: set stream-format=byte-stream,alignment=au on caps

7 years agobase_video_dec: Forward GstQuery upstream
Edward Hervey [Wed, 6 Jul 2011 13:24:00 +0000 (15:24 +0200)]
base_video_dec: Forward GstQuery upstream

Avoids having duration queries failing...

7 years agoh264dec: set stream-format and alignment on the sink template
Alessandro Decina [Wed, 6 Jul 2011 06:16:36 +0000 (08:16 +0200)]
h264dec: set stream-format and alignment on the sink template

7 years agoh264enc: fix profile and level settings
Alessandro Decina [Mon, 13 Jun 2011 00:26:29 +0000 (02:26 +0200)]
h264enc: fix profile and level settings

Make it so that profile and level settings are 1) set by default
(G_PARAM_CONSTRUCT) 2) preserved across state changes and 3) don't cause
segfaults if they are changed too early.

Makes omx_camera ! omx_h264enc **notice you don't need to set random properties
here anymore** ! fakesink work. Goto beach.

7 years agoomx_camera: Implemented GstColorBalance interface
Luciana Fujii Pontello [Fri, 10 Jun 2011 01:55:13 +0000 (22:55 -0300)]
omx_camera: Implemented GstColorBalance interface

Implemented GstColorBalance interface in OmxCamera and fixed getters for
colorbalance properties that didn't return any value.

7 years agocamera: use allocate-buffers to configure allocation strategy on the output port
Alessandro Decina [Fri, 10 Jun 2011 12:55:05 +0000 (14:55 +0200)]
camera: use allocate-buffers to configure allocation strategy on the output port

7 years agocamera: set the default stride to 4096
Alessandro Decina [Fri, 10 Jun 2011 12:53:56 +0000 (14:53 +0200)]
camera: set the default stride to 4096

7 years agobasesrc: add allocate-buffers property
Alessandro Decina [Fri, 10 Jun 2011 12:52:26 +0000 (14:52 +0200)]
basesrc: add allocate-buffers property

When TRUE, the source will allocate buffers from the output port using
OMX_AllocateBuffer. The default is FALSE.

7 years agoomx_camera: Implemented autofocus setting
Luciana Fujii Pontello [Mon, 6 Jun 2011 23:33:17 +0000 (20:33 -0300)]
omx_camera: Implemented autofocus setting

Implemented gst_photography_set_autofocus method.

7 years agoomx_camera: Adding ev-compensation photography property
Luciana Fujii Pontello [Sat, 4 Jun 2011 04:53:27 +0000 (01:53 -0300)]
omx_camera: Adding ev-compensation photography property

Adding property ev-compensation as described in GstPhotography.

7 years agoomx_camera: Added GstPhotography property "flicker-mode"
Luciana Fujii Pontello [Thu, 2 Jun 2011 22:58:15 +0000 (19:58 -0300)]
omx_camera: Added GstPhotography property "flicker-mode"

Added property "flicker-mode" as well as getters and setters methods for
it, as described in GstPhotography interface.

7 years agoomx_camera: Add Photography property "white-balance"
Luciana Fujii Pontello [Wed, 1 Jun 2011 03:17:34 +0000 (00:17 -0300)]
omx_camera: Add Photography property "white-balance"

Property "white-balance" sets auto white balance mode in omx_camera as
declared by GstPhotography.

7 years agoomx_camera: Add GstPhotography property "scene-mode"
Luciana Fujii Pontello [Wed, 1 Jun 2011 03:08:07 +0000 (00:08 -0300)]
omx_camera: Add GstPhotography property "scene-mode"

Property "scene-mode" sets scene in omx_camera as declared by

7 years agoomx_camera: Add photography_get_capabilities method
Luciana Fujii Pontello [Tue, 31 May 2011 02:08:19 +0000 (23:08 -0300)]
omx_camera: Add photography_get_capabilities method

7 years agoomx_camera: Adding GstImplementsInterface
Luciana Fujii Pontello [Mon, 30 May 2011 20:25:19 +0000 (17:25 -0300)]
omx_camera: Adding GstImplementsInterface

7 years agoomx_camera: Implementing GstPhotography interface
Luciana Fujii Pontello [Tue, 31 May 2011 02:21:10 +0000 (23:21 -0300)]
omx_camera: Implementing GstPhotography interface

7 years agoconfigure: Add gst-plugins-bad dependency
Luciana Fujii Pontello [Sat, 28 May 2011 01:01:12 +0000 (22:01 -0300)]
configure: Add gst-plugins-bad dependency

7 years agocamera: configure ports to use the same buffer size
Alessandro Decina [Wed, 20 Apr 2011 11:54:21 +0000 (13:54 +0200)]
camera: configure ports to use the same buffer size

When using OMX_AllocateBuffer, it seems that all output ports need to be
configured to use the same buffer size else allocation fails.

7 years agovideodec: fix negotiation some more
Alessandro Decina [Fri, 3 Jun 2011 08:18:27 +0000 (10:18 +0200)]
videodec: fix negotiation some more

Return template caps in src_getcaps if omx hasn't been configured yet.
Don't set_caps() with caps from the _BUFFERS query.

7 years agovideodec: prefer x-raw-yuv-strided output to x-raw-yuv
Alessandro Decina [Thu, 2 Jun 2011 07:21:48 +0000 (09:21 +0200)]
videodec: prefer x-raw-yuv-strided output to x-raw-yuv

7 years agocamera: recreate ports after calling GstOmxBaseSrc::stop
Alessandro Decina [Wed, 1 Jun 2011 07:04:41 +0000 (09:04 +0200)]
camera: recreate ports after calling GstOmxBaseSrc::stop

Fixes segfaults setting the camera to playing->null->playing

7 years agoomxbasesrc: recreate out_port after g_omx_core_deinit
Alessandro Decina [Wed, 1 Jun 2011 07:03:06 +0000 (09:03 +0200)]
omxbasesrc: recreate out_port after g_omx_core_deinit

7 years agoResume ports in ready to paused to avoid issue in play-stop-play transition
Reynaldo H. Verdejo Pinochet [Sun, 29 May 2011 21:53:35 +0000 (17:53 -0400)]
Resume ports in ready to paused to avoid issue in play-stop-play transition

7 years agocamera: don't override setcaps on the vidsrc pad
Alessandro Decina [Fri, 20 May 2011 08:44:12 +0000 (10:44 +0200)]
camera: don't override setcaps on the vidsrc pad

The vidsrc pad can't negotiate, it's always slaved on the src pad.

7 years agoport: g_omx_port_free_buffers don't leak GstBuffers
Alessandro Decina [Thu, 19 May 2011 17:38:50 +0000 (19:38 +0200)]
port: g_omx_port_free_buffers don't leak GstBuffers

Don't leak GstBuffers when g_omx_port_free_buffers is called and buffer sharing
is in use.

7 years agocamera: allow changing the mode property in PLAYING
Alessandro Decina [Thu, 19 May 2011 17:12:05 +0000 (19:12 +0200)]
camera: allow changing the mode property in PLAYING

7 years agocamera: make all the pads have _ALWAYS presence.
Alessandro Decina [Thu, 19 May 2011 16:50:30 +0000 (18:50 +0200)]
camera: make all the pads have _ALWAYS presence.

Simplifies switching between capture modes at runtime.