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

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

13 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

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

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

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

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

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

13 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

13 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 !

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

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

13 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

13 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

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

13 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

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

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

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

13 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

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

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

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

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

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

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

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

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

13 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

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

13 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

13 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

13 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

13 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

13 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

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

13 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

13 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

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

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

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

13 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

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

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

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

13 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

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

13 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

13 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

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Fri, 4 Nov 2011 18:11:19 +0000 (19:11 +0100)]
Merge branch 'master' into 0.11

Conflicts:
gst/gstbin.c

13 years agobasetransform: Only use the cached transform on strictly equal caps
Sjoerd Simons [Thu, 3 Nov 2011 15:36:59 +0000 (15:36 +0000)]
basetransform: Only use the cached transform on strictly equal caps

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

13 years agocaps: Add gst_caps_is_strictly_equal
Sjoerd Simons [Thu, 3 Nov 2011 15:35:32 +0000 (15:35 +0000)]
caps: Add gst_caps_is_strictly_equal

13 years agotests: fix tests
Wim Taymans [Fri, 4 Nov 2011 17:47:10 +0000 (18:47 +0100)]
tests: fix tests

Since blocks are not on both directions, we need to check in the block callback
if we are not blocking on an upstream event and let it pass.

13 years agopad: make probes work on all pads
Wim Taymans [Fri, 4 Nov 2011 17:19:14 +0000 (18:19 +0100)]
pad: make probes work on all pads

fixes #644907

13 years agointrospection: add Value annotations for GST_SECOND, GST_MSECOND, GST_USECOND, GST_NS...
Peteris Krisjanis [Sat, 15 Oct 2011 19:52:25 +0000 (22:52 +0300)]
introspection: add Value annotations for GST_SECOND, GST_MSECOND, GST_USECOND, GST_NSECOND constants

gobject-introspection won't parse them properly otherwise.

Still need to force the right type though (either GstClockTime or
guint64), but Type: xyz has no effect for me here, so someone with
a newer g-i needs to test this.

Some other defines are also missing, e.g. GST_CLOCK_TIME_NONE.

13 years agoconfigure: suppress unused variable warnings if gst debugging is disabled
Tim-Philipp Müller [Fri, 4 Nov 2011 00:03:05 +0000 (00:03 +0000)]
configure: suppress unused variable warnings if gst debugging is disabled

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

13 years agoconfigure: fix typo around GLIB_EXTRA_CFLAGS in GST_ALL_CXXFLAGS
Tim-Philipp Müller [Fri, 4 Nov 2011 00:02:07 +0000 (00:02 +0000)]
configure: fix typo around GLIB_EXTRA_CFLAGS in GST_ALL_CXXFLAGS

13 years agoqueue: use statically allocated GQueue
Tim-Philipp Müller [Thu, 3 Nov 2011 23:08:52 +0000 (23:08 +0000)]
queue: use statically allocated GQueue

13 years agobin: use statically allocated GQueue
Tim-Philipp Müller [Thu, 3 Nov 2011 22:58:50 +0000 (22:58 +0000)]
bin: use statically allocated GQueue

Because we can.

13 years agocollectpads2: use flags enum instead of guint in structure
Tim-Philipp Müller [Thu, 3 Nov 2011 22:51:57 +0000 (22:51 +0000)]
collectpads2: use flags enum instead of guint in structure

13 years agoqueue2: use statically allocated GQueue
Tim-Philipp Müller [Thu, 3 Nov 2011 08:47:20 +0000 (08:47 +0000)]
queue2: use statically allocated GQueue

13 years agofix request pad
Wim Taymans [Thu, 3 Nov 2011 16:49:45 +0000 (17:49 +0100)]
fix request pad

Make all request pads take _%u in the template.
Fix up unit tests.

13 years agodef: update defs
Wim Taymans [Thu, 3 Nov 2011 15:49:48 +0000 (16:49 +0100)]
def: update defs

13 years agonet: add net address metadata
Wim Taymans [Thu, 3 Nov 2011 15:46:35 +0000 (16:46 +0100)]
net: add net address metadata

13 years agonettime: clean up header
Wim Taymans [Thu, 3 Nov 2011 13:26:12 +0000 (14:26 +0100)]
nettime: clean up header

13 years agotask: don't use lock/unlock_full
Wim Taymans [Thu, 3 Nov 2011 13:14:54 +0000 (14:14 +0100)]
task: don't use lock/unlock_full

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 3 Nov 2011 10:30:52 +0000 (11:30 +0100)]
Merge branch 'master' into 0.11

Conflicts:
gst/gstghostpad.c

13 years agopad: small cleanup
Wim Taymans [Wed, 2 Nov 2011 11:37:15 +0000 (12:37 +0100)]
pad: small cleanup

13 years agoghostpad: Don't cache internal proxy pad target
Nicolas Dufresne [Tue, 25 Oct 2011 21:26:50 +0000 (17:26 -0400)]
ghostpad: Don't cache internal proxy pad target

The internal proxy pad target is simply a cache of the internal proxy pad
peer. This patch uses the well implement GstPad peer handling to obtain the
target. This fixes issues with target not being set in both direction when
two ghostpads are linked together (empty bin).

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

13 years agoutils: remove _found_tags_ API
Wim Taymans [Wed, 2 Nov 2011 11:06:47 +0000 (12:06 +0100)]
utils: remove _found_tags_ API

remove gst_element_found_tags() and gst_element_found_tags_for_pad(), they are
nothing more than a wrapper around gst_pad_push_event()

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 2 Nov 2011 09:29:04 +0000 (10:29 +0100)]
Merge branch 'master' into 0.11

Conflicts:
common
configure.ac

13 years agobuffer: improve docs
Wim Taymans [Sun, 30 Oct 2011 20:33:11 +0000 (21:33 +0100)]
buffer: improve docs

13 years agoevent: make GstSegment argument const
Wim Taymans [Sat, 29 Oct 2011 07:43:04 +0000 (09:43 +0200)]
event: make GstSegment argument const

13 years agodocs: remove metatiming from docs
Wim Taymans [Sat, 29 Oct 2011 07:41:08 +0000 (09:41 +0200)]
docs: remove metatiming from docs