platform/upstream/gstreamer.git
12 years agofilesrc: minor cosmetic changes
Tim-Philipp Müller [Sun, 25 Dec 2011 12:29:46 +0000 (12:29 +0000)]
filesrc: minor cosmetic changes

Rename woffset variable, maintain separate bytes_read in addition
to length variable.

12 years agopipeline: only have a top-level pipeline do pipeline management
Mark Nauwelaerts [Fri, 2 Dec 2011 13:10:32 +0000 (14:10 +0100)]
pipeline: only have a top-level pipeline do pipeline management

Fixes #665390.

12 years agowin32: add new collectpads2 function to .def file
Tim-Philipp Müller [Mon, 19 Dec 2011 20:57:44 +0000 (20:57 +0000)]
win32: add new collectpads2 function to .def file

12 years agocollectpads2: add convenience clipping function
Mark Nauwelaerts [Fri, 16 Dec 2011 16:59:22 +0000 (17:59 +0100)]
collectpads2: add convenience clipping function

... which also converts to running time; useful for typical muxer.

12 years agobasetransform: do not delay sparse stream newsegment updates
Mark Nauwelaerts [Mon, 19 Dec 2011 16:38:18 +0000 (17:38 +0100)]
basetransform: do not delay sparse stream newsegment updates

12 years agobasetransform: suggestion compatible with upstream is not much of a suggestion
Mark Nauwelaerts [Mon, 19 Dec 2011 11:33:18 +0000 (12:33 +0100)]
basetransform: suggestion compatible with upstream is not much of a suggestion

... in that upstream is already complying with that suggestion.

Fixes #666174.

12 years agocollectpads2: delay collecting buffer if a pad newly set waiting
Mark Nauwelaerts [Thu, 15 Dec 2011 13:31:05 +0000 (14:31 +0100)]
collectpads2: delay collecting buffer if a pad newly set waiting

... as commented; make code correspond to it (again).

12 years agocontroller: user the parent_class vars from G_DEFINE_TYPE
Stefan Sauer [Thu, 15 Dec 2011 15:06:30 +0000 (16:06 +0100)]
controller: user the parent_class vars from G_DEFINE_TYPE

12 years agofilesrc: do not mistake short reads for EOS
Vincent Penquerc'h [Mon, 12 Dec 2011 13:05:36 +0000 (13:05 +0000)]
filesrc: do not mistake short reads for EOS

While local filesystems will usually not cause short reads,
this may happen on seekable files on some remote filesystems.
Instead, loop till we get the requested amount of data, or
an actual EOS (ie, 0 bytes).

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

12 years agobaseparse: Clear queued frames with other queues
Matej Knopp [Mon, 14 Nov 2011 01:26:31 +0000 (02:26 +0100)]
baseparse: Clear queued frames with other queues

12 years agoglib-compat: Add license boilerplate for LGPL
Sebastian Dröge [Mon, 12 Dec 2011 10:54:56 +0000 (11:54 +0100)]
glib-compat: Add license boilerplate for LGPL

12 years agopo: update translations
Tim-Philipp Müller [Sat, 10 Dec 2011 01:16:05 +0000 (01:16 +0000)]
po: update translations

12 years agopreset: allow applications to specify an extra preset dir
Stefan Sauer [Wed, 7 Dec 2011 15:01:07 +0000 (16:01 +0100)]
preset: allow applications to specify an extra preset dir

An extra application preset dir help to organize presets created for special
purposes. Fixes #660760
API: gst_preset_set_app_dir(), gst_preset_get_app_dir()

12 years agobasetransform: Fix code path to come up with possible caps if incompatible caps are...
Sebastian Dröge [Thu, 8 Dec 2011 17:00:00 +0000 (18:00 +0100)]
basetransform: Fix code path to come up with possible caps if incompatible caps are provided to buffer_alloc()

Previous code could almost never work and this should be slightly
better.

12 years agobasetransform: Fall back to upstream provided caps if suggested caps are not supporte...
Sebastian Dröge [Thu, 8 Dec 2011 16:21:30 +0000 (17:21 +0100)]
basetransform: Fall back to upstream provided caps if suggested caps are not supported by the sinkpad

12 years agobasetransform: Fall back to upstream provided caps if fixation of suggested caps...
Sebastian Dröge [Thu, 8 Dec 2011 16:07:05 +0000 (17:07 +0100)]
basetransform: Fall back to upstream provided caps if fixation of suggested caps failed

12 years agobasetransform: Refactor gst_base_transform_buffer_alloc() code
Sebastian Dröge [Thu, 8 Dec 2011 16:02:28 +0000 (17:02 +0100)]
basetransform: Refactor gst_base_transform_buffer_alloc() code

Don't check if upstream provided caps are compatible with upstream
and don't try to fixate these caps. They must be fixated in any case.

12 years agobaseparse: do not use a byte value instead of a time value when bisecting
Vincent Penquerc'h [Wed, 7 Dec 2011 17:57:49 +0000 (17:57 +0000)]
baseparse: do not use a byte value instead of a time value when bisecting

This fixes FLAC seeking on some FLAC files.

12 years agoselector: Push newsegment events before any buffers are pushed in the unit test
Sebastian Dröge [Wed, 7 Dec 2011 10:04:42 +0000 (11:04 +0100)]
selector: Push newsegment events before any buffers are pushed in the unit test

12 years agoinputselector: Don't send a NEWSEGMENT event if a buffer arrived before the segment...
Sebastian Dröge [Wed, 7 Dec 2011 10:01:49 +0000 (11:01 +0100)]
inputselector: Don't send a NEWSEGMENT event if a buffer arrived before the segment was configured

12 years agooutputselector: Don't send last segment/buffer when no segment was configured yet
Sebastian Dröge [Wed, 7 Dec 2011 10:01:31 +0000 (11:01 +0100)]
outputselector: Don't send last segment/buffer when no segment was configured yet

12 years agobasetransform: If suggested caps are not compatible with upstream try to come up...
Sebastian Dröge [Wed, 7 Dec 2011 08:50:40 +0000 (09:50 +0100)]
basetransform: If suggested caps are not compatible with upstream try to come up with compatible caps

Fixes bug #662199.

12 years agoindexfactory: fix memory leak
Tim-Philipp Müller [Tue, 6 Dec 2011 23:52:53 +0000 (23:52 +0000)]
indexfactory: fix memory leak

Introduced by commit bd302bb6 pluginfeature: avoid duplicating feature->name

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

12 years agofakesink: Make event/buffer verbose output consistent with identity
Sebastian Dröge [Tue, 6 Dec 2011 13:55:15 +0000 (14:55 +0100)]
fakesink: Make event/buffer verbose output consistent with identity

12 years agoidentity: Print buffer flags in the verbose output
Sebastian Dröge [Tue, 6 Dec 2011 13:55:11 +0000 (14:55 +0100)]
identity: Print buffer flags in the verbose output

12 years agofakesrc: Make event/buffer verbose output consistent with identity and print buffer...
Sebastian Dröge [Tue, 6 Dec 2011 13:53:47 +0000 (14:53 +0100)]
fakesrc: Make event/buffer verbose output consistent with identity and print buffer flags

12 years agocheck: allow non-joinable threads in private g_thread_create() copy
Tim-Philipp Müller [Sun, 4 Dec 2011 21:19:04 +0000 (21:19 +0000)]
check: allow non-joinable threads in private g_thread_create() copy

Looks like some tests use non-joinable threads after all.

12 years agoSuppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly
Tim-Philipp Müller [Sun, 4 Dec 2011 14:38:26 +0000 (14:38 +0000)]
Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly

GStaticRecMutex is part of our API/ABI, not much we can do here in 0.10.

12 years agoWork around deprecated thread API in glib master
Tim-Philipp Müller [Sun, 4 Dec 2011 13:35:38 +0000 (13:35 +0000)]
Work around deprecated thread API in glib master

Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We can't change most of
these in 0.10 because they're part of our API and ABI.

12 years agobenchmarks: g_thread_create() is deprecated in GLib master, use g_thread_try_new...
Tim-Philipp Müller [Sun, 4 Dec 2011 13:09:53 +0000 (13:09 +0000)]
benchmarks: g_thread_create() is deprecated in GLib master, use g_thread_try_new() instead

12 years agonet: initialise GError variables to NULL
Tim-Philipp Müller [Sun, 4 Dec 2011 13:04:35 +0000 (13:04 +0000)]
net: initialise GError variables to NULL

12 years agog_thread_init() is deprecated in glib master
Tim-Philipp Müller [Sat, 3 Dec 2011 17:40:53 +0000 (17:40 +0000)]
g_thread_init() is deprecated in glib master

It's not needed any longer.

12 years agotagsetter: update for thread API deprecations in glib master
Tim-Philipp Müller [Sat, 3 Dec 2011 16:02:36 +0000 (16:02 +0000)]
tagsetter: update for thread API deprecations in glib master

12 years agotaglist: update for thread API deprecations in glib master
Tim-Philipp Müller [Sat, 3 Dec 2011 15:36:58 +0000 (15:36 +0000)]
taglist: update for thread API deprecations in glib master

12 years agog_thread_create() is deprecated in GLib master, use g_thread_try_new() instead
Tim-Philipp Müller [Sat, 3 Dec 2011 13:58:51 +0000 (13:58 +0000)]
g_thread_create() is deprecated in GLib master, use g_thread_try_new() instead

12 years agoidentity: unlock clock wait when appropriate
Mark Nauwelaerts [Fri, 2 Dec 2011 12:19:38 +0000 (13:19 +0100)]
identity: unlock clock wait when appropriate

... notably FLUSH and state change to READY.

12 years agobus: use GST_MESSAGE_SOURCE_NAME() which also takes care of src=NULL.
Stefan Sauer [Thu, 1 Dec 2011 15:25:07 +0000 (16:25 +0100)]
bus: use GST_MESSAGE_SOURCE_NAME() which also takes care of src=NULL.

12 years agobasetransform: Always intersect the suggested sink caps with the peer caps
Sebastian Dröge [Wed, 30 Nov 2011 12:59:46 +0000 (13:59 +0100)]
basetransform: Always intersect the suggested sink caps with the peer caps

This makes sure that we get correct and complete caps. The suggested caps
could be incomplete, e.g. video/x-raw-rgb without any fields, and by
intersecting with the peer caps we get something usable.

Fixes bug #662199.

12 years agoevent: warn and fail instead of creating newsegment events in GST_FORMAT_UNDEFINED
Tim-Philipp Müller [Wed, 30 Nov 2011 00:24:32 +0000 (00:24 +0000)]
event: warn and fail instead of creating newsegment events in GST_FORMAT_UNDEFINED

12 years agogstelement: add gst_element_class_add_pad_template_from_static
Vincent Penquerc'h [Mon, 28 Nov 2011 12:30:15 +0000 (12:30 +0000)]
gstelement: add gst_element_class_add_pad_template_from_static

This function helps ensure the pad template is unreffed
without having to complicate the calling code.

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

12 years agoqueue2: fix refactoring of draining-on-eos, munge flow return to FLOW_OK
Tim-Philipp Müller [Mon, 28 Nov 2011 01:10:20 +0000 (01:10 +0000)]
queue2: fix refactoring of draining-on-eos, munge flow return to FLOW_OK

12 years agoqueue2: add bufferlist support
Tim-Philipp Müller [Thu, 3 Nov 2011 10:34:49 +0000 (10:34 +0000)]
queue2: add bufferlist support

We want to maintain buffer lists if possible.

12 years agoqueue2: split out draining of queue on FLOW_UNEXPECTED into separate function
Tim-Philipp Müller [Thu, 3 Nov 2011 13:02:36 +0000 (13:02 +0000)]
queue2: split out draining of queue on FLOW_UNEXPECTED into separate function

12 years agoqueue2: pass item type enum to _enqueue instead of simple isbuffer boolean
Tim-Philipp Müller [Thu, 3 Nov 2011 08:55:20 +0000 (08:55 +0000)]
queue2: pass item type enum to _enqueue instead of simple isbuffer boolean

Avoids some unnecessary GST_IS_EVENT()

12 years agowarnings: avoid set-but-unused warnings with load-save disabled
Stefan Sauer [Sun, 27 Nov 2011 19:36:31 +0000 (20:36 +0100)]
warnings: avoid set-but-unused warnings with load-save disabled

12 years agouri: fix wrong G_GNUC_MALLOC
Tim-Philipp Müller [Sat, 26 Nov 2011 19:45:48 +0000 (19:45 +0000)]
uri: fix wrong G_GNUC_MALLOC

_get_protocols() points to const memory in 0.10
despite the non-const return value.

12 years agolibs: sprinkle some G_GNUC_MALLOC
Tim-Philipp Müller [Sat, 26 Nov 2011 18:58:38 +0000 (18:58 +0000)]
libs: sprinkle some G_GNUC_MALLOC

Maybe gcc can do something clever with that, or at least
warn us if we don't save the return value somewhere.

12 years agogst: sprinkle some G_GNUC_MALLOC
Tim-Philipp Müller [Sat, 26 Nov 2011 18:57:44 +0000 (18:57 +0000)]
gst: sprinkle some G_GNUC_MALLOC

Maybe gcc can do something clever with that, or at least
warn us if we don't save the return value somewhere.

12 years agobuffer: add gst_buffer_{set,get}_qdata()
Tim-Philipp Müller [Wed, 16 Nov 2011 01:04:45 +0000 (01:04 +0000)]
buffer: add gst_buffer_{set,get}_qdata()

Allows people/us to attach arbitrary metadata to buffers.

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

API: gst_buffer_set_qdata()
API: get_buffer_get_qdata()

12 years agopad: Remove g_warning() if pad accepted caps that are not a subset of the pad caps
Sebastian Dröge [Thu, 24 Nov 2011 10:15:29 +0000 (11:15 +0100)]
pad: Remove g_warning() if pad accepted caps that are not a subset of the pad caps

This check is correct but unfortunately it's impossible to implement
in a threadsafe way because the caps could have changed in the meantime.

Fixes bug #659606.

12 years agomultiqueue: check filled state of queues even if another one is empty
Vincent Penquerc'h [Mon, 3 Oct 2011 11:34:20 +0000 (12:34 +0100)]
multiqueue: check filled state of queues even if another one is empty

This will avoid a case where overrun is never signalled if some
stream never produces any data, causing playbin2 to not end preroll.

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

12 years agobaseparse: Return template caps instead of other side's peer caps if get_sink_caps...
Sebastian Dröge [Wed, 23 Nov 2011 12:42:56 +0000 (13:42 +0100)]
baseparse: Return template caps instead of other side's peer caps if get_sink_caps vfunc is not implemented

Using gst_pad_proxy_get_caps() breaks backwards compatibility with old
parsers because it will propagate the other side's fields like "parsed"
and "framed" and also breaks parser/converters.

Fixes bug #664221.

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

13 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

13 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>
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 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 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 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 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 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 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 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 agoadapter: simplify gst_adapter_take_list()
Tim-Philipp Müller [Tue, 1 Nov 2011 14:17:21 +0000 (14:17 +0000)]
adapter: simplify gst_adapter_take_list()

Use a stack-allocated GQueue to assemble our GList.

13 years agoconfigure: make GLIB_EXTRA_CFLAGS overwritable
Tim-Philipp Müller [Mon, 31 Oct 2011 17:45:44 +0000 (17:45 +0000)]
configure: make GLIB_EXTRA_CFLAGS overwritable

Make 'make GLIB_EXTRA_CFLAGS=...' work.

13 years agofilter: deprecate gst_filter_run()
Tim-Philipp Müller [Sun, 30 Oct 2011 21:54:36 +0000 (21:54 +0000)]
filter: deprecate gst_filter_run()

It's not really used outside of core at all, and has
serious namespace issues. If anyone feels the need to
revive this one, please use a less generic name space.

API: deprecate gst_filter_run()
API: deprecate GstFilterFunc

13 years agoregistry: don't use soon-to-be-deprecated gst_filter_run()
Tim-Philipp Müller [Sun, 30 Oct 2011 21:39:36 +0000 (21:39 +0000)]
registry: don't use soon-to-be-deprecated gst_filter_run()

Lines-of-code savings are negligible anyway.

13 years agopluginfeature: deprecate gst_plugin_feature_type_name_filter()
Tim-Philipp Müller [Sun, 30 Oct 2011 21:21:59 +0000 (21:21 +0000)]
pluginfeature: deprecate gst_plugin_feature_type_name_filter()

It's only used internally anyway and the helper struct
has namespace issues.

API: deprecated gst_plugin_feature_type_name_filter()
API: deprecated GstTypeNameData

13 years agotaglist: add to_string and new_from_string functions
Tim-Philipp Müller [Sun, 30 Oct 2011 09:58:16 +0000 (09:58 +0000)]
taglist: add to_string and new_from_string functions

We want to make GstTagList opaque and not have people use
GstStructure API on it.

API: gst_tag_list_to_string()
API: gst_tag_list_new_from_string()

13 years agotaglist: avoid pointless tag name -> quark lookups
Tim-Philipp Müller [Sun, 30 Oct 2011 00:46:22 +0000 (01:46 +0100)]
taglist: avoid pointless tag name -> quark lookups

We never get a tag name quark from a caller, it's always a
string, from which we'll try to look up our tag info in the
hash table, so change the hash table key from quark to string.
Avoids a bunch of pointless string => quark lookup in the
global quark table. We need to do an extra string => quark
conversion now when we copy a taglist, but in that case we're
in a slow path anyway.

13 years agotaglist: add gst_tag_list_is_equal()
Tim-Philipp Müller [Sat, 29 Oct 2011 23:44:44 +0000 (00:44 +0100)]
taglist: add gst_tag_list_is_equal()

API: gst_tag_list_is_equal()

13 years agostructure: identical structures are definitely equal
Tim-Philipp Müller [Sat, 29 Oct 2011 22:52:22 +0000 (23:52 +0100)]
structure: identical structures are definitely equal

13 years agobasetransform: Also fush the cache when changing the upstream caps suggestion
Sjoerd Simons [Fri, 28 Oct 2011 09:53:32 +0000 (11:53 +0200)]
basetransform: Also fush the cache when changing the upstream caps suggestion

13 years agobasetransform: Add debug output when returning a cached transform
Sjoerd Simons [Fri, 28 Oct 2011 09:50:23 +0000 (11:50 +0200)]
basetransform: Add debug output when returning a cached transform

13 years agocollectpads2: Fix refcount handling if a buffer was dropped due to clipping
Sebastian Dröge [Fri, 28 Oct 2011 08:54:19 +0000 (10:54 +0200)]
collectpads2: Fix refcount handling if a buffer was dropped due to clipping

13 years agocollectpads2: Merge the clip and prepare_buffer function into one
Sebastian Dröge [Fri, 28 Oct 2011 08:37:21 +0000 (10:37 +0200)]
collectpads2: Merge the clip and prepare_buffer function into one

13 years agocollectpads2: Merge clipping API from old collectpads
Sebastian Dröge [Fri, 28 Oct 2011 08:17:06 +0000 (10:17 +0200)]
collectpads2: Merge clipping API from old collectpads

13 years agobasesink: make default query function name show up in gst-inspect
Tim-Philipp Müller [Fri, 28 Oct 2011 08:19:29 +0000 (09:19 +0100)]
basesink: make default query function name show up in gst-inspect

13 years agocollectpads2: avoid hanging in case of sparse newsegment events
Mark Nauwelaerts [Tue, 27 Sep 2011 13:48:52 +0000 (15:48 +0200)]
collectpads2: avoid hanging in case of sparse newsegment events

... in the extent that a non-waiting pad (so indicated by newsegment)
turns out to provide the best buffer, which is then forced to waiting
for book-keeping purposes, but that should only be temporary.

See bug #415754.

13 years agocollectpads2: Use G_DEFINE_TYPE instead of GST_BOILERPLATE
Sebastian Dröge [Fri, 28 Oct 2011 07:38:35 +0000 (09:38 +0200)]
collectpads2: Use G_DEFINE_TYPE instead of GST_BOILERPLATE

13 years agocollectpads2: Add to the documentation
Sebastian Dröge [Fri, 28 Oct 2011 07:35:50 +0000 (09:35 +0200)]
collectpads2: Add to the documentation

13 years agowin32: Add new collectpads2 API
Sebastian Dröge [Fri, 28 Oct 2011 07:26:11 +0000 (09:26 +0200)]
win32: Add new collectpads2 API

13 years agobase: Add collectpads2
Sebastian Dröge [Fri, 28 Oct 2011 07:18:55 +0000 (09:18 +0200)]
base: Add collectpads2

This handles muxing of sparse/subtitle streams and has
lots of cleanup. Still missing is special support for
live streams but this can be added later without breaking
API/ABI.

Based on the version from the videomixer plugin.
https://bugzilla.gnome.org/show_bug.cgi?id=415754

13 years agobasetransform: Fix refcount leak
Jan Schmidt [Thu, 27 Oct 2011 12:08:14 +0000 (23:08 +1100)]
basetransform: Fix refcount leak

Don't leak peercaps and a ref to the basetransform when returning
the cached caps.

13 years agocontroller: fix wrong order of calls in the docs.
Stefan Sauer [Thu, 27 Oct 2011 08:38:10 +0000 (10:38 +0200)]
controller: fix wrong order of calls in the docs.

13 years agoevent: clarify docs for step event
Stefan Sauer [Wed, 26 Oct 2011 10:23:07 +0000 (12:23 +0200)]
event: clarify docs for step event