platform/upstream/gstreamer.git
12 years agoquery: add caps query
Wim Taymans [Mon, 14 Nov 2011 10:26:17 +0000 (11:26 +0100)]
query: add caps query

12 years agoquery: remove GST_QUERY_LAST
Tim-Philipp Müller [Mon, 14 Nov 2011 09:57:32 +0000 (09:57 +0000)]
query: remove GST_QUERY_LAST

12 years agofix docs
Wim Taymans [Mon, 14 Nov 2011 09:27:01 +0000 (10:27 +0100)]
fix docs

12 years agocontroller: remove functions to add/remove controlled properties
Stefan Sauer [Sat, 12 Nov 2011 08:29:30 +0000 (10:29 +0200)]
controller: remove functions to add/remove controlled properties

Make that implizit with attaching/detaching controlsources. This is a lot easier
and has less invalid state (controlled property without control source).

12 years agoplugins, tools: update for get_protocols() return value change
Tim-Philipp Müller [Sun, 13 Nov 2011 23:25:23 +0000 (23:25 +0000)]
plugins, tools: update for get_protocols() return value change

12 years agouri: clean up header files
Tim-Philipp Müller [Sun, 13 Nov 2011 23:14:15 +0000 (23:14 +0000)]
uri: clean up header files

Tabs to spaces.

12 years agourihandler: fix return type of get_protocols()
Tim-Philipp Müller [Sun, 13 Nov 2011 23:07:58 +0000 (23:07 +0000)]
urihandler: fix return type of get_protocols()

12 years agourihandler: fix return type of _get_uri_type()
Tim-Philipp Müller [Sun, 13 Nov 2011 20:56:02 +0000 (20:56 +0000)]
urihandler: fix return type of _get_uri_type()

Return a GstURIType and not a plain guint.

12 years agotests: update unit tests for URI handler API changes
Tim-Philipp Müller [Sun, 13 Nov 2011 17:45:19 +0000 (17:45 +0000)]
tests: update unit tests for URI handler API changes

12 years agoelements: update fd + file sources and sinks for GstUriHandler changes
Tim-Philipp Müller [Sun, 13 Nov 2011 17:44:57 +0000 (17:44 +0000)]
elements: update fd + file sources and sinks for GstUriHandler changes

12 years agourihandler: pass GError argument to gst_uri_handler_set_uri()
Tim-Philipp Müller [Sun, 13 Nov 2011 17:44:06 +0000 (17:44 +0000)]
urihandler: pass GError argument to gst_uri_handler_set_uri()

Also let gst_uri_handler_set_uri check already if the protocol
is supported, so that not every uri handler has to do that
itself.

12 years agourihandler: make _get_uri() return a copy
Tim-Philipp Müller [Sun, 13 Nov 2011 15:51:44 +0000 (15:51 +0000)]
urihandler: make _get_uri() return a copy

For thread-safety.

12 years agourihandler: remove "new-uri" signal
Tim-Philipp Müller [Sun, 13 Nov 2011 15:37:40 +0000 (15:37 +0000)]
urihandler: remove "new-uri" signal

No one but filesrc used that API. Should probably be replaced by
requiring an "uri" property instead, and then objects can do a
notify on that. Also removed interface structure padding, it's
not needed.

12 years agoMerge remote-tracking branch 'origin/master' into 0.11
Tim-Philipp Müller [Sun, 13 Nov 2011 13:23:09 +0000 (13:23 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11

Conflicts:
tools/gst-inspect.c

12 years agogst-inspect: print current value as default value
Tim-Philipp Müller [Sat, 12 Nov 2011 16:42:14 +0000 (16:42 +0000)]
gst-inspect: print current value as default value

Instead of printing separate 'Current' and 'Default' values
(the former obtained via g_object_get() and the latter from
the property GParamSpec), simply print the Current value as
the Default value. This is the right thing to do for almost
all elements and avoids confusion if a subclass of a base
class chooses a different default than the base class.

12 years agogst, controller: replace g_list_prepend + reverse with GQueue
Tim-Philipp Müller [Sat, 12 Nov 2011 14:55:07 +0000 (14:55 +0000)]
gst, controller: replace g_list_prepend + reverse with GQueue

12 years agodocs: fix typo in buffer docs
Tim-Philipp Müller [Sat, 12 Nov 2011 14:04:10 +0000 (14:04 +0000)]
docs: fix typo in buffer docs

12 years agobasetransform: fix caps unref in transform_caps filter subset check
René Stadler [Sat, 12 Nov 2011 00:54:44 +0000 (01:54 +0100)]
basetransform: fix caps unref in transform_caps filter subset check

I did not test this, but the code looked very wrong.

12 years agoquery: do not return a ref from parse_accept_caps
René Stadler [Sat, 12 Nov 2011 00:51:11 +0000 (01:51 +0100)]
query: do not return a ref from parse_accept_caps

Makes this exactly like gst_event_parse_caps. This is what current code
expects, so it fixes some leaks.

12 years ago.h: fix header files
Wim Taymans [Fri, 11 Nov 2011 16:17:43 +0000 (17:17 +0100)]
.h: fix header files

Ensure correct indentation and retab
Make sure all structure have padding

12 years ago.h: fix header files
Wim Taymans [Fri, 11 Nov 2011 15:52:41 +0000 (16:52 +0100)]
.h: fix header files

Ensure correct indentation and :retab.
Make sure all structures have padding
Fix up some old ABI additions.

12 years agodocs: fix invalid xml
Stefan Sauer [Fri, 11 Nov 2011 15:04:52 +0000 (17:04 +0200)]
docs: fix invalid xml

12 years agobuffer: avoid < -1 sizes
Wim Taymans [Fri, 11 Nov 2011 09:00:35 +0000 (10:00 +0100)]
buffer: avoid < -1 sizes

12 years agobuffer, memory: make size arguments where -1 is allowed signed
Tim-Philipp Müller [Fri, 11 Nov 2011 01:47:30 +0000 (01:47 +0000)]
buffer, memory: make size arguments where -1 is allowed signed

12 years agowin32: update .def file for latest API changes
Tim-Philipp Müller [Fri, 11 Nov 2011 01:44:16 +0000 (01:44 +0000)]
win32: update .def file for latest API changes

12 years agocontroller: merge controller into gstobject
Stefan Sauer [Thu, 10 Nov 2011 17:37:28 +0000 (19:37 +0200)]
controller: merge controller into gstobject

This make the controller even more lightweight (no extra object, no extra lock,
less indirections). For object that don't use the controller the only 'overhead'
is a 3 unused fields in the gst_object structure.

12 years agonetmeta: avoid using g[u]long in headers
Wim Taymans [Thu, 10 Nov 2011 17:58:35 +0000 (18:58 +0100)]
netmeta: avoid using g[u]long in headers

12 years agoadapter: remove flush from _unmap
Wim Taymans [Thu, 10 Nov 2011 17:18:24 +0000 (18:18 +0100)]
adapter: remove flush from _unmap

12 years agobasesrc: implement a default get_caps function
Wim Taymans [Thu, 10 Nov 2011 15:02:59 +0000 (16:02 +0100)]
basesrc: implement a default get_caps function

Don't rely on the return value of a vmethod to trigger the default
implementation but make a real defaul implementation of the method that the
subclass can chain up to.

12 years agogstbuffer: remove incorrect assertion
Vincent Penquerc'h [Thu, 10 Nov 2011 14:13:54 +0000 (14:13 +0000)]
gstbuffer: remove incorrect assertion

Offset and sizes have no bearing on each other here.

12 years agowin32: Update def files
Edward Hervey [Thu, 10 Nov 2011 12:59:28 +0000 (13:59 +0100)]
win32: Update def files

12 years agogst: More introspection annotations
Edward Hervey [Thu, 10 Nov 2011 12:53:33 +0000 (13:53 +0100)]
gst: More introspection annotations

12 years agogstmemory: Register a GBoxed GType
Edward Hervey [Thu, 10 Nov 2011 12:51:28 +0000 (13:51 +0100)]
gstmemory: Register a GBoxed GType

Allows using it from g-i

12 years agointrospection: Add --warn-all to introspection scanner
Edward Hervey [Thu, 10 Nov 2011 12:50:23 +0000 (13:50 +0100)]
introspection: Add --warn-all to introspection scanner

... and let's get fixing all those docs !

12 years agobasetransform: fix vmethods
Wim Taymans [Thu, 10 Nov 2011 12:38:58 +0000 (13:38 +0100)]
basetransform: fix vmethods

Make a default implementation of the transform_caps vmethod so that subclasses
can call into it.
Make a default implementation of transform_size.
Avoid doing something in the vmethod trampoline.

12 years agotests: only override when != NULL
Wim Taymans [Thu, 10 Nov 2011 12:37:12 +0000 (13:37 +0100)]
tests: only override when != NULL

Only override the methods in the unit tests when != NULL otherwise we might
override the default implementation.

12 years agopushsrc: make alloc method a vmethod
Wim Taymans [Thu, 10 Nov 2011 12:36:10 +0000 (13:36 +0100)]
pushsrc: make alloc method a vmethod

12 years agobasesink: reorder vmethod according to .h file
Wim Taymans [Thu, 10 Nov 2011 11:33:49 +0000 (12:33 +0100)]
basesink: reorder vmethod according to .h file

12 years agobasesink: improve comments
Wim Taymans [Thu, 10 Nov 2011 11:33:33 +0000 (12:33 +0100)]
basesink: improve comments

12 years agobasesrc: don't do things in the vmethod trampoline
Wim Taymans [Thu, 10 Nov 2011 11:33:10 +0000 (12:33 +0100)]
basesrc: don't do things in the vmethod trampoline

12 years agoelement: add a default set_clock implementation
Wim Taymans [Thu, 10 Nov 2011 11:09:57 +0000 (12:09 +0100)]
element: add a default set_clock implementation

Add a default set_clock implementation and avoid doing work in the vmethod
trampoline. This requires subclasses to chain up.

12 years agoelement: don't do anything in the vmethod trampoline
Wim Taymans [Thu, 10 Nov 2011 11:08:51 +0000 (12:08 +0100)]
element: don't do anything in the vmethod trampoline

Avoid doing stuff in the vmethod trampoline, just let the default
implementation of the method take care of things.

12 years agoelement: fix some docs
Wim Taymans [Thu, 10 Nov 2011 11:08:15 +0000 (12:08 +0100)]
element: fix some docs

12 years agoadapter: use gpointer for return types
Wim Taymans [Thu, 10 Nov 2011 10:42:26 +0000 (11:42 +0100)]
adapter: use gpointer for return types

12 years agoporting: update doc
Wim Taymans [Thu, 10 Nov 2011 10:12:36 +0000 (11:12 +0100)]
porting: update doc

12 years agopad: remove GstPadFixateCapsFunction
Wim Taymans [Thu, 10 Nov 2011 09:58:42 +0000 (10:58 +0100)]
pad: remove GstPadFixateCapsFunction

The fixate caps function was not used externally and we have vmethods in the
base classes where it is needed.
Update some docs.
simplify some fixate functions in the base classes. Also pass the untruncated
caps to the vmethod.

12 years agopad: don't store events on flushing pads
Wim Taymans [Wed, 9 Nov 2011 16:43:49 +0000 (17:43 +0100)]
pad: don't store events on flushing pads

check the flushing state of the pad before storing the event.

12 years agopad: make an ACCEPT_CAPS query
Wim Taymans [Wed, 9 Nov 2011 16:36:00 +0000 (17:36 +0100)]
pad: make an ACCEPT_CAPS query

Replace the acceptcaps function with a query.

12 years agopad: refuse events in flushing
Wim Taymans [Wed, 9 Nov 2011 16:25:30 +0000 (17:25 +0100)]
pad: refuse events in flushing

when we are flushing, don't store the event on the pad but simply return FALSE.
Don't deactivate the srcpad, we need it to be active in order to push the
caps. Downstream can change the scheduling mode of an active pad.

12 years agoelement: remove more query_types
Wim Taymans [Wed, 9 Nov 2011 16:19:12 +0000 (17:19 +0100)]
element: remove more query_types

12 years agoAndroid: build audio controller example
Stefan Sauer [Wed, 9 Nov 2011 10:05:59 +0000 (11:05 +0100)]
Android: build audio controller example

Add buildsystem hooks for building the audiocontroller example
with the NDK.

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
12 years agotests: pad: add tests for sticky caps handling
René Stadler [Wed, 9 Nov 2011 11:21:17 +0000 (12:21 +0100)]
tests: pad: add tests for sticky caps handling

test_sticky_caps_flushing is currently failing.

12 years agoupdate common
Wim Taymans [Wed, 9 Nov 2011 11:12:26 +0000 (12:12 +0100)]
update common

12 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 9 Nov 2011 11:03:28 +0000 (12:03 +0100)]
Merge branch 'master' into 0.11

12 years agoporting: update porting doc
Wim Taymans [Wed, 9 Nov 2011 11:02:12 +0000 (12:02 +0100)]
porting: update porting doc

12 years agoremove query types
Wim Taymans [Wed, 9 Nov 2011 10:47:10 +0000 (11:47 +0100)]
remove query types

It was not really useful

12 years agogstvalue: consider lists and ranges equal if they hold the same set
Vincent Penquerc'h [Tue, 8 Nov 2011 18:09:28 +0000 (18:09 +0000)]
gstvalue: consider lists and ranges equal if they hold the same set

This fixes caps operations when different elements advertise some
of their caps' properties differently (eg, for audio channels, either
a range from 1 to 2, or a list of 1 and 2).

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

12 years agotests: add a subset test for structure
Stefan Sauer [Wed, 9 Nov 2011 10:24:26 +0000 (11:24 +0100)]
tests: add a subset test for structure

12 years agopad: add more queries
Wim Taymans [Wed, 9 Nov 2011 10:22:36 +0000 (11:22 +0100)]
pad: add more queries

Add more query functions to prepare for doing more with queries

12 years agodocs: also fix wrong call order for controller in manual
Stefan Sauer [Fri, 28 Oct 2011 11:39:58 +0000 (13:39 +0200)]
docs: also fix wrong call order for controller in manual

12 years agopad: install query probes
Wim Taymans [Tue, 8 Nov 2011 16:32:11 +0000 (17:32 +0100)]
pad: install query probes

Fire query probes according to updated design doc.

12 years agopad: remove lock/unlock_full versions of stream-lock
Wim Taymans [Tue, 8 Nov 2011 14:51:48 +0000 (15:51 +0100)]
pad: remove lock/unlock_full versions of stream-lock

12 years agopad: add defines for query probes
Wim Taymans [Tue, 8 Nov 2011 14:48:34 +0000 (15:48 +0100)]
pad: add defines for query probes

12 years agopad: fix unit test
Wim Taymans [Tue, 8 Nov 2011 12:30:18 +0000 (13:30 +0100)]
pad: fix unit test

12 years agobuffer: update docs
Wim Taymans [Tue, 8 Nov 2011 12:13:55 +0000 (13:13 +0100)]
buffer: update docs

12 years agotest: port to 0.11
Wim Taymans [Tue, 8 Nov 2011 12:02:04 +0000 (13:02 +0100)]
test: port to 0.11

12 years agoMerge branch 'master' into 0.11
Wim Taymans [Tue, 8 Nov 2011 11:54:15 +0000 (12:54 +0100)]
Merge branch 'master' into 0.11

Conflicts:
gst/gstelement.h
gst/gstghostpad.c
gst/gstminiobject.c

12 years agopad: add pull mode probes
Wim Taymans [Tue, 8 Nov 2011 11:47:33 +0000 (12:47 +0100)]
pad: add pull mode probes

Allow probes to inspect the offset and size from a probe in pull mode and allow
the probe to modify the buffer.
Update design doc a little.

12 years agotests: pad: add test to verify flushing behaviour
René Stadler [Tue, 8 Nov 2011 11:22:21 +0000 (12:22 +0100)]
tests: pad: add test to verify flushing behaviour

Seems like a trivial case, but this was actually broken in 0.11 recently.

12 years agopad: Add GstPadProbeInfo
Wim Taymans [Tue, 8 Nov 2011 10:04:19 +0000 (11:04 +0100)]
pad: Add GstPadProbeInfo

Make a new GstPadProbeInfo structure and pass this in the probe callback. This
allows us to add more things later and also allow the callback to replace or
modify the passed object.

12 years agoevent: log creation of qos events at LOG level instead at INFO
Stefan Sauer [Tue, 8 Nov 2011 07:26:29 +0000 (08:26 +0100)]
event: log creation of qos events at LOG level instead at INFO

12 years agobuffer: improve parameter docs
Stefan Sauer [Mon, 7 Nov 2011 15:57:37 +0000 (16:57 +0100)]
buffer: improve parameter docs

12 years agodocs: fix Since: markers for API added after 0.10.35
Tim-Philipp Müller [Tue, 8 Nov 2011 00:32:36 +0000 (00:32 +0000)]
docs: fix Since: markers for API added after 0.10.35

12 years agowin32: update .def file for new API
Tim-Philipp Müller [Tue, 8 Nov 2011 00:15:49 +0000 (00:15 +0000)]
win32: update .def file for new API

API: gst_caps_is_strictly_equal()

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Mon, 7 Nov 2011 16:17:39 +0000 (17:17 +0100)]
Merge branch 'master' into 0.11

Conflicts:
gst/gstvalue.c

13 years agopad: rework pad probes
Wim Taymans [Mon, 7 Nov 2011 16:04:13 +0000 (17:04 +0100)]
pad: rework pad probes

Make a separate cookie to detect chancges in the list of probes and keeping
track of what hooks have been invoked yet.
Remove the requirement to have probes on srcpads in push mode and sinkpads in
pull mode.
Add some more debug.
Keep track of what callbacks got executed. If no callback is called and we are a
blocking pad, let the item pass. This allows you to block pads on selected
items only.
Explicitly have an UPSTREAM and DOWNSTREAM PadProbeType. This allows you to only
block the pad on upstream or downstream items.
Add convenience macros to only block on downstream/upstream items.

13 years agogstcaps: remove unneeded use of gint64
Vincent Penquerc'h [Thu, 27 Oct 2011 11:59:57 +0000 (12:59 +0100)]
gstcaps: remove unneeded use of gint64

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

13 years agogstvalue: quicker version of intersection when we do not need the result
Vincent Penquerc'h [Thu, 27 Oct 2011 11:24:13 +0000 (12:24 +0100)]
gstvalue: quicker version of intersection when we do not need the result

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

13 years agogststructure: simplify return statement in gst_structure_can_intersect
Vincent Penquerc'h [Thu, 27 Oct 2011 11:02:43 +0000 (12:02 +0100)]
gststructure: simplify return statement in gst_structure_can_intersect

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

13 years agogststructure: early out when we know a value cannot be a subset
Vincent Penquerc'h [Thu, 27 Oct 2011 10:41:30 +0000 (11:41 +0100)]
gststructure: early out when we know a value cannot be a subset

If two values can be ordered, but are unequal, they are
necessarily distinct, thus one cannot be a subset of the other.

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

13 years agogstvalue: quicker test for substraction emptiness
Vincent Penquerc'h [Thu, 27 Oct 2011 09:35:53 +0000 (10:35 +0100)]
gstvalue: quicker test for substraction emptiness

When we do not care about the actual resulting set,
but only whether it is empty of not, we can skip a fair bit
of GValue juggling.

Add a function that does so, since we cannot just pass NULL
to the existing API as it may be part of the API contract.

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

13 years agogststructure: rejig test ordering for speed
Vincent Penquerc'h [Thu, 27 Oct 2011 08:45:41 +0000 (09:45 +0100)]
gststructure: rejig test ordering for speed

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

13 years agodocs: mention more api changes in the porting guide
Stefan Sauer [Mon, 7 Nov 2011 11:28:22 +0000 (12:28 +0100)]
docs: mention more api changes in the porting guide

13 years agocaps: fix compilation
Wim Taymans [Mon, 7 Nov 2011 09:40:23 +0000 (10:40 +0100)]
caps: fix compilation

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Mon, 7 Nov 2011 09:01:27 +0000 (10:01 +0100)]
Merge branch 'master' into 0.11

Conflicts:
libs/gst/base/gstbasetransform.c

13 years agoRevert "controller: fix g_return statement"
Tim-Philipp Müller [Sun, 6 Nov 2011 00:07:10 +0000 (00:07 +0000)]
Revert "controller: fix g_return statement"

This reverts commit 593d2b297bd7b5ce9dbcdf2f1ae2b7624d94d6ae.

gst_controller_set_disabled () returns a void.

13 years agodocs: remove refs to removed API
Tim-Philipp Müller [Sat, 5 Nov 2011 12:10:29 +0000 (12:10 +0000)]
docs: remove refs to removed API

13 years agocontroller: the object needs a ref to the controller for the convenience api
Stefan Sauer [Fri, 4 Nov 2011 20:37:45 +0000 (21:37 +0100)]
controller: the object needs a ref to the controller for the convenience api

Add a hack to ensure the object will have a ref to the controller once we
create it. Fixes the audio example (that uses the controller api directly).

13 years agocontroller: fix g_return statement
Stefan Sauer [Fri, 4 Nov 2011 20:37:21 +0000 (21:37 +0100)]
controller: fix g_return statement

13 years agocontroller: logging tweaks
Stefan Sauer [Fri, 4 Nov 2011 20:35:55 +0000 (21:35 +0100)]
controller: logging tweaks

Don't log in _new before we have the log category. Use _OBJECT variants.

13 years agogst: fix some compiler warnings
Tim-Philipp Müller [Sat, 5 Nov 2011 01:27:54 +0000 (01:27 +0000)]
gst: fix some compiler warnings

gstobject.c: In function 'gst_object_has_active_automation':
gstobject.c:1076:3: error: 'return' with no value, in function returning non-void
gstcontroller.c: In function 'gst_controller_is_active':
gstcontroller.c:509:3: error: 'return' with no value, in function returning non-void

13 years agocontroller: add api to check for active controllers (needed for e.g. volume)
Stefan Sauer [Fri, 4 Nov 2011 19:50:58 +0000 (20:50 +0100)]
controller: add api to check for active controllers (needed for e.g. volume)

13 years agocontroller: remove obsolete comments from api transition
Stefan Sauer [Fri, 4 Nov 2011 19:32:32 +0000 (20:32 +0100)]
controller: remove obsolete comments from api transition

13 years agocontroller: fix tests after move and API changes
Stefan Sauer [Fri, 4 Nov 2011 13:00:24 +0000 (14:00 +0100)]
controller: fix tests after move and API changes

13 years agocontroller: port to new controller api
Stefan Sauer [Fri, 4 Nov 2011 10:42:34 +0000 (11:42 +0100)]
controller: port to new controller api

13 years agocontroller: update docs for controller move
Stefan Sauer [Fri, 4 Nov 2011 10:39:25 +0000 (11:39 +0100)]
controller: update docs for controller move

13 years agocontroller: move to core/gstobject
Stefan Sauer [Fri, 4 Nov 2011 10:34:11 +0000 (11:34 +0100)]
controller: move to core/gstobject

Move the controller to gstobject as a simple delegate. The controller and
controlsource are not classes in core. The controlsources stay separate as a lib
for now. This way we can avoid the qdata lookups.

Also remove controller_init(). There is no more need to link to controller for
elements.

Also sanitize the API. We now have functions to add properties like we had
methods to remove that. That avoids then ref count hacks we had in _new.

13 years agodocs: small clarification
Stefan Sauer [Thu, 3 Nov 2011 17:23:13 +0000 (18:23 +0100)]
docs: small clarification

13 years agodocs: missing rename iface->interface in the docs
Stefan Sauer [Thu, 3 Nov 2011 17:22:16 +0000 (18:22 +0100)]
docs: missing rename iface->interface in the docs

13 years agobin: fix the iterator copy
Wim Taymans [Fri, 4 Nov 2011 18:17:06 +0000 (19:17 +0100)]
bin: fix the iterator copy