platform/upstream/gstreamer.git
12 years agotaglist: no need to store the size of the tag list structure inside the structure
Tim-Philipp Müller [Thu, 14 Jun 2012 22:36:29 +0000 (23:36 +0100)]
taglist: no need to store the size of the tag list structure inside the structure

12 years agominiobject: expand docs a little
Wim Taymans [Fri, 15 Jun 2012 09:24:46 +0000 (11:24 +0200)]
miniobject: expand docs a little

Add blurb about qdata and weak refs.

12 years agominiobject: add qdata
Wim Taymans [Fri, 15 Jun 2012 08:44:24 +0000 (10:44 +0200)]
miniobject: add qdata

Keep track of qdata for miniobjects. Reuse the weak ref array for this because
we can.

12 years agominiobject: fix error in the weak ref handling
Wim Taymans [Fri, 15 Jun 2012 08:56:13 +0000 (10:56 +0200)]
miniobject: fix error in the weak ref handling

When 2 weak refs are added, the array is not resized big enough.
Simplify the weak ref handling code.
Free memory when we remove all weak refs.
Allow installing the same weak ref multiple times, like in gobject.

12 years agominiobject: remove the size field
Wim Taymans [Thu, 14 Jun 2012 15:11:11 +0000 (17:11 +0200)]
miniobject: remove the size field

The size field is used by subclasses to store the total allocated size of the
memory for this miniobject. Because miniobject doesn't really do anything with
this field we can move it to the subclasses.

12 years agomemory: make GstMemory a miniobject
Wim Taymans [Thu, 14 Jun 2012 14:30:12 +0000 (16:30 +0200)]
memory: make GstMemory a miniobject

12 years agotrace: always print miniobject refcount
Wim Taymans [Thu, 14 Jun 2012 14:27:26 +0000 (16:27 +0200)]
trace: always print miniobject refcount

12 years agomemory: fix copy function
Wim Taymans [Thu, 14 Jun 2012 13:40:43 +0000 (15:40 +0200)]
memory: fix copy function

Make the copy function map to ref because we can't safely copy the user_data.

12 years agomemory: make GstAllocator a miniobject
Wim Taymans [Thu, 14 Jun 2012 13:33:50 +0000 (15:33 +0200)]
memory: make GstAllocator a miniobject

12 years agogstfunnel: avoid access of freed pad
David Svensson Fors [Tue, 12 Jun 2012 11:26:35 +0000 (13:26 +0200)]
gstfunnel: avoid access of freed pad

Save the value of the pad's got_eos in gst_funnel_release_pad,
before calling gst_element_remove_pad. This is because
gst_element_remove_pad may free the pad.

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

12 years agoelement: fix pad transfer annotation from none to full
Vincent Penquerc'h [Thu, 14 Jun 2012 13:05:15 +0000 (14:05 +0100)]
element: fix pad transfer annotation from none to full

since the pad will be unreffed.

12 years agomessage: add the running-time to the async-done message
Wim Taymans [Wed, 13 Jun 2012 08:52:48 +0000 (10:52 +0200)]
message: add the running-time to the async-done message

Add the running-time of the buffer that caused the async operation to complete
to the async-done message.
Update bin to handle the new async-done message.

12 years agopipeline: use reset_time message to reset the start time
Wim Taymans [Wed, 13 Jun 2012 08:51:04 +0000 (10:51 +0200)]
pipeline: use reset_time message to reset the start time

Use the new RESET_TIME message to reset the start-time of the pipeline to the
requested time.
Make basesink request a new running-time when the flush-stop message tells it to
insteasd of waiting for preroll.

12 years agomessage: add a new message to reset time
Wim Taymans [Wed, 13 Jun 2012 08:16:27 +0000 (10:16 +0200)]
message: add a new message to reset time

Add a new message to reset the pipeline running_time. Currently reseting the
pipeline can only be requested in the async_done message which means that the
pipeline needs to be prerolled. It is better to move this to a separate message.

12 years agobin: always recurse into bins when doing state changes
Wim Taymans [Tue, 12 Jun 2012 15:11:51 +0000 (17:11 +0200)]
bin: always recurse into bins when doing state changes

Never skip the state change of a bin because it needs to update the base time of
its children when needed.

12 years agodocs: update for new datetime api
Tim-Philipp Müller [Tue, 12 Jun 2012 23:30:48 +0000 (00:30 +0100)]
docs: update for new datetime api

12 years agowin32: update .def file for latest API
Tim-Philipp Müller [Tue, 12 Jun 2012 23:28:00 +0000 (00:28 +0100)]
win32: update .def file for latest API

12 years agodocs: add new datetime API
Tim-Philipp Müller [Tue, 12 Jun 2012 23:25:24 +0000 (00:25 +0100)]
docs: add new datetime API

12 years agotests: add some basic unit tests for partial date time fields
Tim-Philipp Müller [Tue, 12 Jun 2012 23:21:32 +0000 (00:21 +0100)]
tests: add some basic unit tests for partial date time fields

12 years agodatetime: clean-ups and new API adjustments
Tim-Philipp Müller [Tue, 12 Jun 2012 22:52:02 +0000 (23:52 +0100)]
datetime: clean-ups and new API adjustments

Remove constructors we don't want:
gst_date_time_new_ymd_h() because we don't want to
support hour-only for now;
gst_date_time_new_ymd_hm() because we don't want to
add constructors with time info where the caller doesn't
have to think about what timezone the time is in.
Lots of compulsive clean-up. Docs fixes. Replace
has_minute() and has_hour() with has_time().

12 years agodatetime: allow GstDateTime where not all fields are set
Oleksij Rempel [Tue, 12 Jun 2012 20:35:42 +0000 (22:35 +0200)]
datetime: allow GstDateTime where not all fields are set

In order to deserialise and re-serialise dates and date times
from tags properly, we need to be able to express partial
dates (e.g. YYYY or YYYY-MM) and date times.

We only support partial date times where all the more
significant fields above the first unset field are set
(e.g. YYYY-00-DD is not supported).

Calling _get_foo() when foo is not set is not allowed
any more, callers need to check which fields are set
first.

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

12 years agomessage: fix up minor inconsistency in structure name of state-changed message
Tim-Philipp Müller [Tue, 12 Jun 2012 21:45:09 +0000 (22:45 +0100)]
message: fix up minor inconsistency in structure name of state-changed message

12 years agointrospection: add some missing annotations
Evan Nemerson [Tue, 12 Jun 2012 18:42:30 +0000 (11:42 -0700)]
introspection: add some missing annotations

12 years agobasesrc: handle flush events on the element as well
Wim Taymans [Tue, 12 Jun 2012 12:24:27 +0000 (14:24 +0200)]
basesrc: handle flush events on the element as well

Handle flush-start and flush-stop sent on the element as well and send them
downstream. Make sure to send a segment event after the flush stop.

12 years agochildproxy: add a few more comments
Stefan Sauer [Tue, 12 Jun 2012 09:05:05 +0000 (11:05 +0200)]
childproxy: add a few more comments

12 years agochildproxy: fix signal handler signatures in class
Stefan Sauer [Mon, 11 Jun 2012 18:34:00 +0000 (20:34 +0200)]
childproxy: fix signal handler signatures in class

When adding the name parameter, we forgot to add it here too.

12 years agochildproxy: use GstChildProxy instead of GObject on the public api
Stefan Sauer [Mon, 11 Jun 2012 08:59:49 +0000 (10:59 +0200)]
childproxy: use GstChildProxy instead of GObject on the public api

Fix usage and also cleanup gst_object api use on gobjects.

12 years agoelement: remove unused UNPARENTING flag
Wim Taymans [Mon, 11 Jun 2012 13:49:10 +0000 (15:49 +0200)]
element: remove unused UNPARENTING flag

12 years agobin: reorganize _remove_func to avoid races
Wim Taymans [Mon, 11 Jun 2012 13:41:58 +0000 (15:41 +0200)]
bin: reorganize _remove_func to avoid races

Make the gst_bin_remove_func more like the add_func. Check if the element we try
to remove from the bin has the bin as the parent and set the parent flag to NULL
immediately, this allows us to avoid concurrent remove operations without using
the UNPARENTING element flag. After we unparented the element from the bin, we
update the bin state and remove the element from the list. Finally we unlink
all the pads.

This avoids a race condition where the element could still claim to have the
bin as the parent while the bin didn't have a pointer to the element anymore.

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

12 years agotypefindelement: Only send caps when pad is being activated
Matej Knopp [Sun, 10 Jun 2012 16:48:00 +0000 (12:48 -0400)]
typefindelement: Only send caps when pad is being activated

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

12 years agogstelement: Start over if subclass removed the next pad too
Matej Knopp [Sun, 10 Jun 2012 16:41:12 +0000 (12:41 -0400)]
gstelement: Start over if subclass removed the next pad too

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

12 years agodatetime: remove fallback code for old GLibs
Tim-Philipp Müller [Sat, 9 Jun 2012 17:05:14 +0000 (18:05 +0100)]
datetime: remove fallback code for old GLibs

12 years agoscripts: add create-uninstalled-setup script
Tim-Philipp Müller [Sat, 9 Jun 2012 16:13:04 +0000 (17:13 +0100)]
scripts: add create-uninstalled-setup script

Little script that sets up things in ~/gst and clones
the main modules and prints some instructions.

From http://gstreamer.freedesktop.org/wiki/UninstalledSetup

12 years agoelements: Use gst_pad_set_caps() and don't ignore its return value
Sebastian Dröge [Fri, 8 Jun 2012 13:45:38 +0000 (15:45 +0200)]
elements: Use gst_pad_set_caps() and don't ignore its return value

12 years agobasesrc: Don't ignore the return value of gst_pad_set_caps() and call it after the...
Sebastian Dröge [Fri, 8 Jun 2012 13:41:17 +0000 (15:41 +0200)]
basesrc: Don't ignore the return value of gst_pad_set_caps() and call it after the vfunc

12 years agobasesink: Use gst_pad_set_caps() instead of the manual event fiddling
Sebastian Dröge [Fri, 8 Jun 2012 13:36:40 +0000 (15:36 +0200)]
basesink: Use gst_pad_set_caps() instead of the manual event fiddling

12 years agobasetransform: Don't return the return value of gst_pad_set_caps()
Sebastian Dröge [Fri, 8 Jun 2012 13:32:37 +0000 (15:32 +0200)]
basetransform: Don't return the return value of gst_pad_set_caps()

e.g. it returns FALSE if incompatible caps are set on the pad.

12 years agogstutils: Faster read macros
Edward Hervey [Wed, 6 Jun 2012 17:02:00 +0000 (19:02 +0200)]
gstutils: Faster read macros

On platforms that can do unaligned read/write, we can read/write much faster
by just casting.

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

12 years agocheck: Add a test for GST_READ_* macros
Edward Hervey [Thu, 7 Jun 2012 10:49:10 +0000 (12:49 +0200)]
check: Add a test for GST_READ_* macros

12 years agoUpdate common submodule
Edward Hervey [Fri, 8 Jun 2012 12:49:51 +0000 (14:49 +0200)]
Update common submodule

12 years agobasetransform: fix reconfigure
Wim Taymans [Thu, 7 Jun 2012 15:58:02 +0000 (17:58 +0200)]
basetransform: fix reconfigure

Use the pad methods to set and check the reconfigure flags
Clear the reconfigure flag before we negotiate so that we don't miss any
reconfigure events while negotiating

12 years agoBack to development
Sebastian Dröge [Thu, 7 Jun 2012 13:56:44 +0000 (15:56 +0200)]
Back to development

12 years agoRelease 0.11.92 RELEASE-0.11.92
Sebastian Dröge [Thu, 7 Jun 2012 13:56:17 +0000 (15:56 +0200)]
Release 0.11.92

12 years agoUpdate .po files
Sebastian Dröge [Thu, 7 Jun 2012 13:53:49 +0000 (15:53 +0200)]
Update .po files

12 years agobasesrc: release the object lock sooner
Wim Taymans [Thu, 7 Jun 2012 13:28:39 +0000 (15:28 +0200)]
basesrc: release the object lock sooner

Release the object lock before we get the time of the clock because that code
might take other locks.
Fix potential clock refcount error because we released the object lock but
didn't ref the clock.

12 years agobasesrc: remove 0.11 fixme
Wim Taymans [Thu, 7 Jun 2012 08:34:46 +0000 (10:34 +0200)]
basesrc: remove 0.11 fixme

We always require elements to have an unlock_stop vmethod.

12 years agoregistry: We name the registry after the target cpu
Edward Hervey [Wed, 6 Jun 2012 16:11:13 +0000 (18:11 +0200)]
registry: We name the registry after the target cpu

And not the host cpu

Conflicts:

gst/gstregistry.c

12 years agoAutomatic update of common submodule
Edward Hervey [Wed, 6 Jun 2012 16:18:18 +0000 (18:18 +0200)]
Automatic update of common submodule

From 1fab359 to 03a0e57

12 years agotests: fix unit test after event change
Wim Taymans [Wed, 6 Jun 2012 13:45:11 +0000 (15:45 +0200)]
tests: fix unit test after event change

Someone forgot to run make check before pushing...

12 years agogstadapter: Align the comment description with public api instead of internal one.
Sreerenj Balachandran [Wed, 6 Jun 2012 08:06:32 +0000 (11:06 +0300)]
gstadapter: Align the comment description with public api instead of internal one.

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

12 years agoelement: fix pad cleanup in dispose
Wim Taymans [Wed, 6 Jun 2012 13:29:49 +0000 (15:29 +0200)]
element: fix pad cleanup in dispose

In the dispose handler we first need to release all the request pads and then
remove the remaining pads. This is because it is possible that releasing the
request pad might also cleanly remove some of the other dynamic pads, like
what rtpsession does.

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

12 years agoevent: Don't make the TOC event a multi-sticky event
Sebastian Dröge [Wed, 6 Jun 2012 12:14:31 +0000 (14:14 +0200)]
event: Don't make the TOC event a multi-sticky event

Elements are supposed to merge upstream events.

12 years agoMake sure that unlinked pads do not cause a return false on latency events.
Havard Graff [Tue, 13 Oct 2009 15:24:34 +0000 (17:24 +0200)]
Make sure that unlinked pads do not cause a return false on latency events.

Context: Latency configuration should not be
messed up because of not-linked pads. In general,
one return FALSE on latency distribution causes
the "overall" pipeline latency configuration to
fail. This shows up as noise in logs (warning).

Conflicts:

gst/gstpad.c

12 years agoevent: add name to sticky_multi events
Wim Taymans [Wed, 6 Jun 2012 10:52:09 +0000 (12:52 +0200)]
event: add name to sticky_multi events

The name of the event is used to store multiple sticky events of a certain type
on a pad.

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

12 years agodesign: Also mention that the order of the filter caps is important
Sebastian Dröge [Wed, 6 Jun 2012 07:59:55 +0000 (09:59 +0200)]
design: Also mention that the order of the filter caps is important

12 years agoquery: improve docs
Wim Taymans [Wed, 6 Jun 2012 07:15:04 +0000 (09:15 +0200)]
query: improve docs

12 years agopad: only serialized events can't pass after EOS
Wim Taymans [Wed, 6 Jun 2012 07:13:11 +0000 (09:13 +0200)]
pad: only serialized events can't pass after EOS

Only serialized events can't be sent on pads that are EOS. Otherwise a seek
event would be refused as well.

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

12 years agodocs: talk about the filter caps
Wim Taymans [Tue, 5 Jun 2012 12:38:25 +0000 (14:38 +0200)]
docs: talk about the filter caps

12 years agotests: add unit test for tag list writability
Tim-Philipp Müller [Sat, 2 Jun 2012 15:44:59 +0000 (16:44 +0100)]
tests: add unit test for tag list writability

12 years agogst_tag_list_free -> gst_tag_list_unref
Tim-Philipp Müller [Sat, 2 Jun 2012 15:38:35 +0000 (16:38 +0100)]
gst_tag_list_free -> gst_tag_list_unref

12 years agodocs: expand taglist section in porting-to-0.11 docs a bit
Tim-Philipp Müller [Sat, 2 Jun 2012 15:29:45 +0000 (16:29 +0100)]
docs: expand taglist section in porting-to-0.11 docs a bit

12 years agodocs: update negotiation docs
Wim Taymans [Tue, 5 Jun 2012 09:28:38 +0000 (11:28 +0200)]
docs: update negotiation docs

Mention that the acceptcaps query does not have to be recursive

12 years agoqueue2: remove obsolete caps code
Wim Taymans [Tue, 5 Jun 2012 07:40:14 +0000 (09:40 +0200)]
queue2: remove obsolete caps code

12 years agoutils: improve debug
Wim Taymans [Tue, 5 Jun 2012 07:39:41 +0000 (09:39 +0200)]
utils: improve debug

12 years agotests: fix unit test
Wim Taymans [Tue, 5 Jun 2012 07:21:10 +0000 (09:21 +0200)]
tests: fix unit test

Before we can change the caps on a sinkpad with fixed caps we need to unfix the
pad caps.

12 years agopad: don't pause task on EOS
Wim Taymans [Tue, 5 Jun 2012 07:10:05 +0000 (09:10 +0200)]
pad: don't pause task on EOS

Elements should not rely on core to pause tasks on EOS.

12 years agopad: fix event type check
Wim Taymans [Tue, 5 Jun 2012 07:00:01 +0000 (09:00 +0200)]
pad: fix event type check

12 years agopad: fix 'res' may be used uninitialized in this function
Wim Taymans [Mon, 4 Jun 2012 14:19:26 +0000 (16:19 +0200)]
pad: fix 'res' may be used uninitialized in this function

12 years agofunnel: Fix unit test
Sebastian Dröge [Mon, 4 Jun 2012 11:00:53 +0000 (13:00 +0200)]
funnel: Fix unit test

12 years agovalve: Fix unit test
Sebastian Dröge [Mon, 4 Jun 2012 10:57:59 +0000 (12:57 +0200)]
valve: Fix unit test

12 years agopad: Don't accept any buffers or events after EOS
Sebastian Dröge [Mon, 4 Jun 2012 09:46:42 +0000 (11:46 +0200)]
pad: Don't accept any buffers or events after EOS

12 years agobaseparse: also perform state processing upon non-OK return
Mark Nauwelaerts [Mon, 4 Jun 2012 09:13:02 +0000 (11:13 +0200)]
baseparse: also perform state processing upon non-OK return

... since processing might still continue (if e.g. NOT_LINKED)
and then proper state (e.g. offset) needs to be maintained
(e.g. to arrange for a new frame setup).

12 years agopad: Always return errors for EOS events immediately
Sebastian Dröge [Mon, 4 Jun 2012 09:25:47 +0000 (11:25 +0200)]
pad: Always return errors for EOS events immediately

For non-EOS events things will error out later during data
flow but after EOS events no data flow is happening.

See bug #677340.

12 years agopad: Only forward caps events to a pad if it accepts the caps
Sebastian Dröge [Mon, 4 Jun 2012 07:27:35 +0000 (09:27 +0200)]
pad: Only forward caps events to a pad if it accepts the caps

Fixes bug #677335.

12 years agoRevert "pad: Return FALSE if pushing of sticky events failed"
Sebastian Dröge [Sat, 2 Jun 2012 18:01:01 +0000 (20:01 +0200)]
Revert "pad: Return FALSE if pushing of sticky events failed"

This reverts commit 0f924b922c712059d7752fc15b832551745ff27e.

Sticky events should always return TRUE when pushing and will
only cause failures during data flow later.

12 years agopad: fix variable-set-but-not-used compiler warning
Tim-Philipp Müller [Sat, 2 Jun 2012 15:18:46 +0000 (16:18 +0100)]
pad: fix variable-set-but-not-used compiler warning

12 years agopad: If pushing a sticky event failed, make sure to at least push any pending EOS...
Sebastian Dröge [Sat, 2 Jun 2012 14:55:07 +0000 (16:55 +0200)]
pad: If pushing a sticky event failed, make sure to at least push any pending EOS events

Otherwise a pipeline where one sticky event fails to be sent will
never forward EOS events downstream. This can cause pipelines to
wait forever for EOS on errors.

12 years agopad: Return FALSE if pushing of sticky events failed
Sebastian Dröge [Sat, 2 Jun 2012 14:02:07 +0000 (16:02 +0200)]
pad: Return FALSE if pushing of sticky events failed

Instead of just ignoring failure of pushing sticky events and
returning TRUE as if everything is fine.

12 years agoinputselector: Correctly get current running time when syncing to the segment information
Andre Moreira Magalhaes (andrunko) [Fri, 1 Jun 2012 14:34:16 +0000 (16:34 +0200)]
inputselector: Correctly get current running time when syncing to the segment information

Fixes bug #677263.

12 years agoAutomatic update of common submodule
Edward Hervey [Fri, 1 Jun 2012 08:28:30 +0000 (10:28 +0200)]
Automatic update of common submodule

From f1b5a96 to 1fab359

12 years agotests: Add funnel test to cover EOS event handling
Mike Ruprecht [Sat, 26 May 2012 03:58:57 +0000 (22:58 -0500)]
tests: Add funnel test to cover EOS event handling

Ported from f3b2dd6f in the 0.10 branch

12 years agofunnel: Only emit EOS event if all sinkpads have received one
Mike Ruprecht [Sat, 26 May 2012 03:52:33 +0000 (22:52 -0500)]
funnel: Only emit EOS event if all sinkpads have received one

If multiple sources are plugged into the funnel and one of the
sources emits an EOS, that event is propogated through the funnel
even though other sources connected to the funnel may still be
pushing data. This patch waits to send an EOS event until the
funnel has received an EOS event on each sinkpad.

Ported from d397ea97 in 0.10 branch.

12 years agotests: Fix invalid read when releasing request pads in funnel tests
Mike Ruprecht [Wed, 30 May 2012 00:24:25 +0000 (19:24 -0500)]
tests: Fix invalid read when releasing request pads in funnel tests

12 years agofunnel: Fix buffer leak
Mike Ruprecht [Wed, 30 May 2012 00:23:07 +0000 (19:23 -0500)]
funnel: Fix buffer leak

12 years agoinputselector: Don't try to sync on the segment if it has no TIME format
Andre Moreira Magalhaes (andrunko) [Thu, 31 May 2012 15:45:29 +0000 (17:45 +0200)]
inputselector: Don't try to sync on the segment if it has no TIME format

...and wait until it is actually configured and has a format before
trying to sync.

12 years agoinputselector: No need to broadcast the signal in flush-stop
Sebastian Dröge [Thu, 31 May 2012 15:03:54 +0000 (17:03 +0200)]
inputselector: No need to broadcast the signal in flush-stop

Everything stopped at this point already.

Conflicts:

plugins/elements/gstinputselector.c

12 years agoAutomatic update of common submodule
Sebastian Dröge [Thu, 31 May 2012 11:07:49 +0000 (13:07 +0200)]
Automatic update of common submodule

From 92b7266 to f1b5a96

12 years agoqueue2: Fix property name in the docs
Bastien Nocera [Thu, 31 May 2012 09:10:41 +0000 (10:10 +0100)]
queue2: Fix property name in the docs

temp-template, not temp-tmpl

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

12 years agoinputselector: Properly sync when changing streams
Andre Moreira Magalhaes (andrunko) [Mon, 28 May 2012 17:29:00 +0000 (14:29 -0300)]
inputselector: Properly sync when changing streams

This adds properties to use the clock time for deciding when
to drop buffers for inactive pads and a property to buffer all
not rendered buffers for the active pad to allow pad switching
without losing any buffers at all.

Conflicts:

plugins/elements/gstinputselector.c

12 years agoAutomatic update of common submodule
Sebastian Dröge [Wed, 30 May 2012 10:44:56 +0000 (12:44 +0200)]
Automatic update of common submodule

From ec1c4a8 to 92b7266

12 years agoAutomatic update of common submodule
Sebastian Dröge [Wed, 30 May 2012 09:18:39 +0000 (11:18 +0200)]
Automatic update of common submodule

From 3429ba6 to ec1c4a8

12 years agotaglist: add guards to make sure taglist is writable when modifying it
Tim-Philipp Müller [Tue, 29 May 2012 07:48:36 +0000 (08:48 +0100)]
taglist: add guards to make sure taglist is writable when modifying it

Now that taglists are refcounted we need to check if they're
writable before modifying them.

12 years agotaglist: avoid unnecessary string copying when registering tags
Tim-Philipp Müller [Mon, 28 May 2012 22:54:10 +0000 (23:54 +0100)]
taglist: avoid unnecessary string copying when registering tags

Add gst_tag_register_static() - no need to copy all those
string constants, whether translated or not.

API: gst_tag_register_static()

12 years agocheck: check for GLib-GIO criticals as well
Tim-Philipp Müller [Sun, 27 May 2012 23:08:56 +0000 (00:08 +0100)]
check: check for GLib-GIO criticals as well

12 years agogst_tag_list_free() -> gst_tag_list_unref()
Tim-Philipp Müller [Sun, 27 May 2012 23:08:18 +0000 (00:08 +0100)]
gst_tag_list_free() -> gst_tag_list_unref()

12 years agotaglist: make GstTagList a GstMiniObject
Tim-Philipp Müller [Sun, 27 May 2012 22:58:27 +0000 (23:58 +0100)]
taglist: make GstTagList a GstMiniObject

Which adds refcounting support, and other things.

12 years agocaps: log freeing of caps at same log level as creation, i.e. TRACE
Tim-Philipp Müller [Sun, 27 May 2012 19:31:30 +0000 (20:31 +0100)]
caps: log freeing of caps at same log level as creation, i.e. TRACE

12 years agomessage, event: update for tag lists not being structures any more
Tim-Philipp Müller [Sat, 26 May 2012 10:37:49 +0000 (11:37 +0100)]
message, event: update for tag lists not being structures any more

12 years agotaglist: make proper struct not just a GstStructure
Tim-Philipp Müller [Sun, 20 May 2012 23:31:29 +0000 (00:31 +0100)]
taglist: make proper struct not just a GstStructure

12 years agodebugutils: Fix static linking on OS X
Josep Torra [Fri, 25 May 2012 08:28:40 +0000 (10:28 +0200)]
debugutils: Fix static linking on OS X

The linking behaviour of external variables that are not initialized
in the compilation unit where they are defined is undefined. On OS X
this causes a linking failure when statically linking GStreamer.