platform/upstream/gstreamer.git
14 years agodocs: small docs updates
Wim Taymans [Tue, 19 Jan 2010 15:39:38 +0000 (16:39 +0100)]
docs: small docs updates

14 years agogstpad: directly set the caps when pushing buffer with different caps.
Thijs Vermeir [Tue, 19 Jan 2010 13:07:23 +0000 (14:07 +0100)]
gstpad: directly set the caps when pushing buffer with different caps.

This check is not necesarry as we are not negotiating anymore. And it can
be wrong if upstream can't produce this caps anymore, but downstream can
process them fine.

14 years agominiobject: The GValue collection function can not assume that the destination is...
Sebastian Dröge [Mon, 18 Jan 2010 12:57:29 +0000 (13:57 +0100)]
miniobject: The GValue collection function can not assume that the destination is initialized

...and it will usually be either filled by zeroes or random values.

Fixes bug #607283.

14 years agobasetransform: Only use suggested caps in buffer allocation if a size was suggested too
Sebastian Dröge [Sat, 16 Jan 2010 20:52:06 +0000 (21:52 +0100)]
basetransform: Only use suggested caps in buffer allocation if a size was suggested too

14 years agostructure: remove superfluous guard against NULL
Tim-Philipp Müller [Sat, 16 Jan 2010 19:41:29 +0000 (19:41 +0000)]
structure: remove superfluous guard against NULL

All callers of this static function already check for NULL-ness
themselves, so no need to do it again (and if we do it, we should
probably do so before dereferencing the pointer for the first time).

14 years agostructure: micro-optimise some getters
Tim-Philipp Müller [Thu, 17 Dec 2009 19:45:31 +0000 (19:45 +0000)]
structure: micro-optimise some getters

Avoid checking the GType of the value twice (once on our side and
once in g_value_get_*()) by by-passing g_value_get() and accessing
the GValue structure directly.

14 years agomessage: update docs a little
Wim Taymans [Fri, 15 Jan 2010 17:36:07 +0000 (18:36 +0100)]
message: update docs a little

14 years agodocs: minor release docs update
Tim-Philipp Müller [Fri, 15 Jan 2010 00:46:23 +0000 (00:46 +0000)]
docs: minor release docs update

14 years agobasetransform: Handle buffers with NULL caps correctly
Sebastian Dröge [Thu, 14 Jan 2010 19:19:05 +0000 (20:19 +0100)]
basetransform: Handle buffers with NULL caps correctly

This means that the caps didn't change so don't try to handle
the NULL caps as the new caps.

14 years agodocs: Move field specific Since markers at the same line
Sebastian Dröge [Thu, 14 Jan 2010 09:44:16 +0000 (10:44 +0100)]
docs: Move field specific Since markers at the same line

Fixes gobject-introspection warnings about Since being defined multiple times.

14 years agofaq: remove revision history that no one updates or cares about anyway
Tim-Philipp Müller [Wed, 13 Jan 2010 10:17:03 +0000 (10:17 +0000)]
faq: remove revision history that no one updates or cares about anyway

14 years agofaq: fix link to gst-uninstalled on cgit
Tim-Philipp Müller [Wed, 13 Jan 2010 09:32:59 +0000 (09:32 +0000)]
faq: fix link to gst-uninstalled on cgit

Fix link to gst-uninstalled now that it's been moved, and fix a typo
while we're at it. Also add a new section to 'Building GStreamer from
git' that points to the 'How do I develop against an uninstalled copy
of GStreamer' section.

14 years agodocs: we're in git since a while
Stefan Kost [Wed, 13 Jan 2010 08:32:46 +0000 (10:32 +0200)]
docs: we're in git since a while

14 years agoscripts: move gst-uninstalled from docs/faq to scripts
Stefan Kost [Wed, 13 Jan 2010 08:31:26 +0000 (10:31 +0200)]
scripts: move gst-uninstalled from docs/faq to scripts

Don't include the long gst-uninstalled script in verbatim in the faq anymore
(there is a link to cgit). Dist the script under its new location.

14 years agoregistry: avoid some more unnecessary malloc/frees
Tim-Philipp Müller [Tue, 12 Jan 2010 21:34:03 +0000 (21:34 +0000)]
registry: avoid some more unnecessary malloc/frees

14 years agoregistry: avoid some unnecessary strdup/free when reading the binary registry
Tim-Philipp Müller [Tue, 12 Jan 2010 20:21:32 +0000 (20:21 +0000)]
registry: avoid some unnecessary strdup/free when reading the binary registry

Strings in the binary registry are NUL-terminated, so we can just use them
directly if we only need them temporarily, and avoid unnecessary mallocs
and frees.

14 years agotypefindelement: use new typefind function
Wim Taymans [Tue, 12 Jan 2010 16:38:32 +0000 (17:38 +0100)]
typefindelement: use new typefind function

Refactor a little.
Use the new typefind helper function that uses the extension to speed up
typefinding.

14 years agotypefind: add a new method that also uses the file extension
Wim Taymans [Tue, 12 Jan 2010 16:34:39 +0000 (17:34 +0100)]
typefind: add a new method that also uses the file extension

Add a method to perform get_range typefinding that also uses the
uri/location extension as an extra hint. It will first try to call the
typefind functions of the factories that handle the given extension. The result
is that in the common case, we only call one typefind function, which speeds up
the typefinding a lot.

14 years agodocs: update QoS documeent
Wim Taymans [Mon, 11 Jan 2010 13:58:11 +0000 (14:58 +0100)]
docs: update QoS documeent

Add some ideas about a new QoS message.

See also #322947

14 years agotee: make release_pad threadsafe
Håvard Graff [Mon, 11 Jan 2010 10:38:32 +0000 (11:38 +0100)]
tee: make release_pad threadsafe

Protect the ->removed field with the object lock as well. Take the DYN lock
earlier so that we can mark the pad removed and avoid a race in pad_alloc.

Fixes #606435

14 years agobus: whitespace fixes
Wim Taymans [Fri, 11 Dec 2009 16:46:42 +0000 (17:46 +0100)]
bus: whitespace fixes

14 years agoutils: defer getting the classes until we actualy need them
Stefan Kost [Sun, 10 Jan 2010 19:49:25 +0000 (21:49 +0200)]
utils: defer getting the classes until we actualy need them

This function has a lot of early returns. Give them soem more benefit.

14 years agoutils: avoid extra hop in gst_element_link
Stefan Kost [Sun, 10 Jan 2010 19:40:24 +0000 (21:40 +0200)]
utils: avoid extra hop in gst_element_link

No need to call gst_element_link_pads_filtered with filter=NULL, which would
call gst_element_link_pads() in that way. Call it directly to save a call and
expensive gobject type checks.

14 years agocheck: remove some cruft from header file
Tim-Philipp Müller [Sun, 10 Jan 2010 17:39:55 +0000 (17:39 +0000)]
check: remove some cruft from header file

Remove some cruft from the gstcheck header file that's not needed
any longer now that we ship with our own copy of libcheck.

14 years agopwg: remove empty midi section
Stefan Kost [Thu, 7 Jan 2010 15:41:26 +0000 (17:41 +0200)]
pwg: remove empty midi section

14 years agoMerge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gstreamer
Christian Schaller [Thu, 7 Jan 2010 13:48:24 +0000 (13:48 +0000)]
Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gstreamer

14 years agoUpdate spec file
Christian Schaller [Thu, 7 Jan 2010 13:47:50 +0000 (13:47 +0000)]
Update spec file

14 years agopo: update for new translated strings
Tim-Philipp Müller [Wed, 6 Jan 2010 20:08:48 +0000 (20:08 +0000)]
po: update for new translated strings

14 years agodocs: minor documentation fixes for recently-added tags
Tim-Philipp Müller [Wed, 6 Jan 2010 20:06:47 +0000 (20:06 +0000)]
docs: minor documentation fixes for recently-added tags

Mention the type of the tag in the gtk-doc blurb, so people know
which accessor API to use, and fix up the doc blurbs to match the
actual tag define.

14 years agotags: fix up translated strings for some new tags
Tim-Philipp Müller [Wed, 6 Jan 2010 20:04:15 +0000 (20:04 +0000)]
tags: fix up translated strings for some new tags

Fix up translated strings for some recently-added tags to match the
existing strings: we want short mnemonic-like strings here that start
with a lower case letter.

14 years agoregistry: deprecate useless gst_registry_xml_{read|write}_cache()
Tim-Philipp Müller [Wed, 6 Jan 2010 19:19:40 +0000 (19:19 +0000)]
registry: deprecate useless gst_registry_xml_{read|write}_cache()

The only reason these two functions are still around is that at some
point in the past they were in a public header, so we can't really
remove them now even though they should have been private all along
(and aren't really particularly useful). Since these are just empty
stubs now that do nothing but return FALSE and will be removed in
0.11 anyway, we may just as well deprecate them formally.

14 years agodocs: add Since markers to task pool docs and document task function
Tim-Philipp Müller [Wed, 6 Jan 2010 19:18:53 +0000 (19:18 +0000)]
docs: add Since markers to task pool docs and document task function

14 years agoconfigure: move SHAVE_INIT behind all checks
Tim-Philipp Müller [Wed, 6 Jan 2010 18:50:43 +0000 (18:50 +0000)]
configure: move SHAVE_INIT behind all checks

Move SHAVE_INIT behind all other checks, in particular AG_GST_CHECK_CHECKS.
This should fix problems with header checking and checking for localtime_r,
which causes compilation errors with clean checkouts where common/shave has
not been created yet when those checks are run. It seems like SHAVE_INIT
changes the environment so that checks depending on a compiler need shave
to exist at that point, which will fail if AC_OUTPUT hasn't created it yet.

Fixes #605930.

14 years agocheck: patch internal check copy some more so that failures actually fail
Tim-Philipp Müller [Tue, 5 Jan 2010 01:35:41 +0000 (01:35 +0000)]
check: patch internal check copy some more so that failures actually fail

Include unistd.h so that _POSIX_VERSION is actually defined when
it should be defined. Without that, stuff like fail_if(1) doesn't
actually fail, presumably because other parts of the code do include
unistd.h and then have _POSIX_VERSION defined.

Fixes #604565 even more.

14 years agodocs: add missing returns: tag
Stefan Kost [Mon, 4 Jan 2010 22:09:10 +0000 (00:09 +0200)]
docs: add missing returns: tag

14 years agomultiqueue: set iterate_interal_links function on source pad
Mark Nauwelaerts [Wed, 30 Dec 2009 21:56:57 +0000 (22:56 +0100)]
multiqueue: set iterate_interal_links function on source pad

14 years agobuffer: remove unneeded casts
Wim Taymans [Sun, 27 Dec 2009 18:33:25 +0000 (19:33 +0100)]
buffer: remove unneeded casts

14 years agobuffer: remove subbuffer subclass
Wim Taymans [Wed, 2 Dec 2009 18:47:46 +0000 (19:47 +0100)]
buffer: remove subbuffer subclass

Move the parent buffer pointer into the GstBuffer struct so that we can
remove the subbuffer class and type. This is interesting because it allows us to
more naturally implement methods to get the real type and parent
of a subbuffer (See #545501).
It should also be slightly faster because there is no extra object hierarchy to
initialize and free.

14 years agocollectpads: don't keep buffers reffed longer than needed
Wim Taymans [Thu, 24 Dec 2009 18:25:52 +0000 (19:25 +0100)]
collectpads: don't keep buffers reffed longer than needed

Make sure we take ownership of the buffer early without increasing its refcount
when we go in the collect function. This reduces the amount of copies needed in
order to make the buffer writable in most cases.

14 years agominiobject: avoid unneeded casts
Wim Taymans [Thu, 24 Dec 2009 16:22:46 +0000 (17:22 +0100)]
miniobject: avoid unneeded casts

14 years agocollectpads: avoid doing subbuffers when we can
Wim Taymans [Thu, 24 Dec 2009 15:53:15 +0000 (16:53 +0100)]
collectpads: avoid doing subbuffers when we can

In some cases we can avoid allocating a subbuffer and instead simply ref
the buffer. Callers should perform _make_metadata_writable() in all
cases now.

14 years agocollectpads: add ability to install clipping functions
Wim Taymans [Thu, 24 Dec 2009 14:25:14 +0000 (15:25 +0100)]
collectpads: add ability to install clipping functions

Add a method to install a clipping function that is called when a buffer is
received. Users of collectpads can then perform clipping on the incomming
buffers.

Also retab the header file a little.

See #590265

14 years agodocs: add some more buffer2 ideas
Wim Taymans [Thu, 24 Dec 2009 14:13:49 +0000 (15:13 +0100)]
docs: add some more buffer2 ideas

14 years agoavoid some more type checks
Wim Taymans [Thu, 24 Dec 2009 13:40:54 +0000 (14:40 +0100)]
avoid some more type checks

14 years agopipeline: avoid some type checks
Wim Taymans [Thu, 24 Dec 2009 13:22:52 +0000 (14:22 +0100)]
pipeline: avoid some type checks

Avoid type checks when we can
Don't need to peek the parent_class, the boilerplate does that for us.

14 years agolaunch: also print leaked objects
Wim Taymans [Wed, 23 Dec 2009 20:39:20 +0000 (21:39 +0100)]
launch: also print leaked objects

Make the -T option also print the leaked objects

14 years agotrace: include type name in leaked objects
Wim Taymans [Wed, 23 Dec 2009 20:37:51 +0000 (21:37 +0100)]
trace: include type name in leaked objects

When we are dealing with a GObject, print the type name along with
the pointer for easier debugging.

14 years agopad: Fix problem with destroy callback not being called
Wim Taymans [Wed, 23 Dec 2009 20:20:14 +0000 (21:20 +0100)]
pad: Fix problem with destroy callback not being called

When we unblock a pad with the same user_data, the destroy callback is not
called. This leads to refcounting leaks that cannot be avoided. Instead always
call the destroy notify whenever we install a new pad block.
In particular, this fixes a nasty pad leak in decodebin2.

Also update the unit test to have more accurate comments and test the required
behaviour.

14 years agotee: small cleanups, use some G_LIKELY
Wim Taymans [Tue, 22 Dec 2009 21:52:02 +0000 (22:52 +0100)]
tee: small cleanups, use some G_LIKELY

14 years agotee: Don't crash if there is no source pad
Olivier Crête [Tue, 22 Dec 2009 20:29:26 +0000 (15:29 -0500)]
tee: Don't crash if there is no source pad

14 years agoAutomatic update of common submodule
Mark Nauwelaerts [Mon, 21 Dec 2009 18:11:45 +0000 (19:11 +0100)]
Automatic update of common submodule

From 47cb23a to 14cec89

14 years agogsttaglist: Adds new tags
Thiago Santos [Mon, 21 Dec 2009 14:58:12 +0000 (11:58 -0300)]
gsttaglist: Adds new tags

Adds the following new tags:
GST_TAG_SHOW_NAME
GST_TAG_SHOW_SORTNAME
GST_TAG_SHOW_EPISODE_NUMBER
GST_TAG_SHOW_SEASON_NUMBER
GST_TAG_LYRICS
GST_TAG_COMPOSER_SORTNAME
GST_TAG_GROUPING

Fixes #599759

14 years agoconfigure: always call our check checks for the SUBUNIT conditional
Tim-Philipp Müller [Sat, 19 Dec 2009 14:27:05 +0000 (14:27 +0000)]
configure: always call our check checks for the SUBUNIT conditional

The SUBUNIT conditional needs to be set even if check is disabled. Also
remove a FIXME that is not needed any longer / after all.

14 years agocheck: patch internal check copy so it works with our build system
Руслан Ижбулатов [Fri, 18 Dec 2009 21:28:35 +0000 (21:28 +0000)]
check: patch internal check copy so it works with our build system

Fixes #604565.

14 years agocheck: update autotools and docs stuff for new check version
Руслан Ижбулатов [Fri, 18 Dec 2009 21:26:01 +0000 (21:26 +0000)]
check: update autotools and docs stuff for new check version

14 years agocheck: update internal libcheck to 0.9.8
Tim-Philipp Müller [Thu, 17 Dec 2009 20:09:48 +0000 (20:09 +0000)]
check: update internal libcheck to 0.9.8

14 years agofilesrc: printf format fixes
Mark Nauwelaerts [Tue, 15 Dec 2009 17:55:38 +0000 (18:55 +0100)]
filesrc: printf format fixes

14 years agodocs: link bus and tasks
Stefan Kost [Mon, 14 Dec 2009 14:22:16 +0000 (16:22 +0200)]
docs: link bus and tasks

Add a link from bus section docs to the task docs. Add a paragraph to task docs
to tell about messages and the bus.

14 years agodocs: add more docs around GstState and GstStateChange
Stefan Kost [Mon, 14 Dec 2009 13:11:42 +0000 (15:11 +0200)]
docs: add more docs around GstState and GstStateChange

Take reviewed docs from docs/design/part-state to have that more prominent
inside the api docs. Add a few sentences to link things better together.

14 years agodocs: review and fix spelling
Stefan Kost [Mon, 14 Dec 2009 13:11:14 +0000 (15:11 +0200)]
docs: review and fix spelling

14 years agogstelementfactory: set object name earlier if applicable
Stefan Kost [Mon, 14 Dec 2009 09:05:41 +0000 (11:05 +0200)]
gstelementfactory: set object name earlier if applicable

Setting an object name is nice for proper debug logging. Ideally this would
still happens earlier (.e.g when pads are added to an element, its not yet set).

14 years agogstobject: add fixme-0.11 comment
Stefan Kost [Mon, 14 Dec 2009 09:07:25 +0000 (11:07 +0200)]
gstobject: add fixme-0.11 comment

14 years agocomment: small comment correction
Stefan Kost [Tue, 8 Dec 2009 09:30:39 +0000 (11:30 +0200)]
comment: small comment correction

14 years agobin: never skip a state change to PLAYING
Wim Taymans [Fri, 11 Dec 2009 15:26:00 +0000 (16:26 +0100)]
bin: never skip a state change to PLAYING

Never skip the state change to playing, even if the element is already in the
right state. We need this because we also distribute the base_time while doing
the state change and skipping this step would leave some elements without a new
base_time.

Fixes #600313

14 years agobasesink: add some more debugging
Wim Taymans [Fri, 11 Dec 2009 15:19:18 +0000 (16:19 +0100)]
basesink: add some more debugging

14 years agotee: release pads in dispose
Havard Graff [Tue, 8 Dec 2009 16:21:47 +0000 (17:21 +0100)]
tee: release pads in dispose

Make sure to release all request-pads in the dispose-method, in case of a
shutdown-race, where a pad-alloc is about to happen.

Fixes #604091

14 years agoelement: use NULL instead of 0 for pointers
Wim Taymans [Wed, 9 Dec 2009 12:27:22 +0000 (13:27 +0100)]
element: use NULL instead of 0 for pointers

14 years agotools: Move gst_tools_print_version() for the remaining tools
Sebastian Dröge [Wed, 9 Dec 2009 06:25:31 +0000 (07:25 +0100)]
tools: Move gst_tools_print_version() for the remaining tools

14 years agotools: Move gst_tools_print_version call to avoid warning from new GLib.
Ole André Vadla Ravnås [Thu, 3 Dec 2009 11:31:19 +0000 (12:31 +0100)]
tools: Move gst_tools_print_version call to avoid warning from new GLib.

g_setprgname is implicitly called by g_option_context_new() with a check
to see if it's been set already.

Fixes bug #604093.

14 years agoutils: Fix proxy_setcaps to only iterate pads of other direction
Sebastian Dröge [Tue, 8 Dec 2009 15:40:57 +0000 (16:40 +0100)]
utils: Fix proxy_setcaps to only iterate pads of other direction

14 years agoutils: fix proxy_getcaps
Wim Taymans [Tue, 8 Dec 2009 15:21:41 +0000 (16:21 +0100)]
utils: fix proxy_getcaps

Make it return the padtemplate caps on errors and no parent.
Only intersect pads of the oposite direction of the source pad.

14 years agoutils: Rename proxy iterator fold functions to have a more meaningful name
Sebastian Dröge [Tue, 8 Dec 2009 15:14:28 +0000 (16:14 +0100)]
utils: Rename proxy iterator fold functions to have a more meaningful name

14 years agoutils: If one intersection gave empty caps don't continue iterating over the other...
Sebastian Dröge [Tue, 8 Dec 2009 15:09:02 +0000 (16:09 +0100)]
utils: If one intersection gave empty caps don't continue iterating over the other pads

14 years agobasesink: Allow update NEWSEGMENT events after EOS
Sebastian Dröge [Tue, 8 Dec 2009 14:24:43 +0000 (15:24 +0100)]
basesink: Allow update NEWSEGMENT events after EOS

This allows demuxers to update the segment stop of an already
finished stream. This might be needed if some stream goes to
EOS before the duration of the longest stream is known to properly
set the segment stop of all streams to the same value in the end.

14 years agoUse plain casting instead of typechecking
Wim Taymans [Mon, 7 Dec 2009 19:52:22 +0000 (20:52 +0100)]
Use plain casting instead of typechecking

14 years agogstvalue: Use fast gst_value_list_{size|get_value} macro accessors
Edward Hervey [Mon, 7 Dec 2009 08:45:00 +0000 (09:45 +0100)]
gstvalue: Use fast gst_value_list_{size|get_value} macro accessors

gst_value_list_size and gst_value_list_get_value will do a series of
extra checks due to being public methods.
When we use them from within gstvalue.c we can directly use them without
the extra checks.

14 years agogsturi: Don't use g_signal_emit_by_name, use the signal ID directly
Edward Hervey [Mon, 7 Dec 2009 08:44:06 +0000 (09:44 +0100)]
gsturi: Don't use g_signal_emit_by_name, use the signal ID directly

14 years agotee: avoid expensive typechecks, and avoid getting ref to parent.
Edward Hervey [Wed, 18 Nov 2009 08:01:35 +0000 (09:01 +0100)]
tee: avoid expensive typechecks, and avoid getting ref to parent.

Speeds up tee processing 2 to 5 times.

14 years agogstobject: Avoid double strdup when setting NULL names.
Edward Hervey [Thu, 12 Nov 2009 08:07:03 +0000 (09:07 +0100)]
gstobject: Avoid double strdup when setting NULL names.

Instead of chaining up to gst_object_set_name (which does typechecking
and strdup's the name again), just use the already allocated new
name.

14 years agopwg: make the enum example (based on videotestsrc) actually match videotestsrc
Peter van Hardenberg [Fri, 4 Dec 2009 20:16:32 +0000 (12:16 -0800)]
pwg: make the enum example (based on videotestsrc) actually match videotestsrc

14 years agobin: Ignore state change failures from children that were removed from the bin already
Sebastian Dröge [Fri, 4 Dec 2009 15:28:27 +0000 (16:28 +0100)]
bin: Ignore state change failures from children that were removed from the bin already

Fixes bug #584441.

14 years agoregistry: Use GMappedFile for reading the registry
Sebastian Dröge [Fri, 4 Dec 2009 14:00:44 +0000 (15:00 +0100)]
registry: Use GMappedFile for reading the registry

Fixes bug #603787.

14 years agoregistry: Substitute deprecated GLib symbol: g_mapped_file_free
Javier Jardón [Thu, 3 Dec 2009 18:48:11 +0000 (19:48 +0100)]
registry: Substitute deprecated GLib symbol: g_mapped_file_free

Use g_mapped_file_unref if Glib >= 2.22 is available

Fixes bug #560442.

14 years agobasesrc: Shut down the pad task when the initial seek fails.
Jan Schmidt [Fri, 27 Nov 2009 19:16:15 +0000 (20:16 +0100)]
basesrc: Shut down the pad task when the initial seek fails.

Set the pad flushing and stop the pad task when the initial seek fails
during activation. Avoids racy calls into the _create() function when
BaseSrc::stop() has already run.

Fixes: #603059

Also, fix some misspelled comments.

14 years agopo: update .po files after string changes
Tim-Philipp Müller [Thu, 3 Dec 2009 20:55:37 +0000 (20:55 +0000)]
po: update .po files after string changes

(The queue2 strings could use some tidying up)

14 years agofilesink, filesrc: printf format fixes
Tim-Philipp Müller [Thu, 3 Dec 2009 20:53:25 +0000 (20:53 +0000)]
filesink, filesrc: printf format fixes

gstfilesink.c:399: error: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’
gstfilesink.c:399: error: format ‘%d’ expects type ‘int’, but argument 9 has type ‘gsize’
gstfilesrc.c:588: error: format ‘%08llx’ expects type ‘long long unsigned int’, but argument 8 has type ‘off_t’

14 years agotee: add special case for only one pad conected
Stefan Kost [Thu, 3 Dec 2009 14:44:28 +0000 (16:44 +0200)]
tee: add special case for only one pad conected

It is not easy to setup a tee on the fly, thus apps need to add them always if
they might need them. This changes the code so, that if only one src-pad is
active, we push buffers directly. In the normal code path all buffers are pushed
with an extra ref, that forces followup inplace elements to copy the data.

14 years agotee: only message once per received buffer
Stefan Kost [Thu, 3 Dec 2009 14:11:59 +0000 (16:11 +0200)]
tee: only message once per received buffer

Avoids checking for each source pad. The messages would be almost identical
anyway.

14 years agodrafts: planning
Stefan Kost [Thu, 3 Dec 2009 13:27:21 +0000 (15:27 +0200)]
drafts: planning

14 years agotee: remove unused offset member
Stefan Kost [Thu, 3 Dec 2009 14:05:03 +0000 (16:05 +0200)]
tee: remove unused offset member

14 years agotee: only notify alloc-pad property if changed.
Stefan Kost [Thu, 3 Dec 2009 14:02:35 +0000 (16:02 +0200)]
tee: only notify alloc-pad property if changed.

14 years agoevent: fix docs for _copy()
Wim Taymans [Wed, 2 Dec 2009 12:29:28 +0000 (13:29 +0100)]
event: fix docs for _copy()

14 years agotools: Fix check for Windows
David Schleef [Wed, 2 Dec 2009 06:37:51 +0000 (22:37 -0800)]
tools: Fix check for Windows

14 years agoMake gcc inline assembly conditional on gcc
David Schleef [Wed, 2 Dec 2009 02:09:04 +0000 (18:09 -0800)]
Make gcc inline assembly conditional on gcc

14 years agoqueue: Register debug funcptr only once.
Edward Hervey [Tue, 1 Dec 2009 18:29:25 +0000 (19:29 +0100)]
queue: Register debug funcptr only once.

Makes creating queue elements 3-4 times faster and avoids contention on the
global funcptr lock.

14 years agobasesrc/basesink: Register debug funcptr only once.
Edward Hervey [Tue, 1 Dec 2009 18:27:47 +0000 (19:27 +0100)]
basesrc/basesink: Register debug funcptr only once.

Makes basesrc/basesink initialization 3-4 times faster and avoids
contention on the global funcptr lock

14 years agogstghostpad: Register debug funcptr only once.
Edward Hervey [Tue, 1 Dec 2009 16:54:56 +0000 (17:54 +0100)]
gstghostpad: Register debug funcptr only once.

This makes ghostpad/proxypad creation 5 times faster and avoids contention
over the global funcptr lock.

I also moved the two class init down in the code to avoid having to forward
declare all the various functions.

14 years agogstpad: Only register debug funcptr once.
Edward Hervey [Tue, 1 Dec 2009 16:54:14 +0000 (17:54 +0100)]
gstpad: Only register debug funcptr once.

This makes pad initialization 2 times faster and without any contention
over the debug funcptr global lock.

14 years agogstinfo: API: Add GST_DEBUG_REGISTER_FUNCPTR method.
Edward Hervey [Tue, 1 Dec 2009 16:53:03 +0000 (17:53 +0100)]
gstinfo: API: Add GST_DEBUG_REGISTER_FUNCPTR method.

This is a variant of GST_DEBUG_FUNCPTR which does not return anything.

14 years agoAutomatic update of common submodule
Tim-Philipp Müller [Tue, 1 Dec 2009 15:05:34 +0000 (15:05 +0000)]
Automatic update of common submodule

From 87bf428 to 47cb23a