platform/upstream/gstreamer.git
13 years agoinfo: avoid unnecessary malloc/free for each log function call on MSVC
Tim-Philipp Müller [Thu, 23 Sep 2010 11:49:59 +0000 (12:49 +0100)]
info: avoid unnecessary malloc/free for each log function call on MSVC

Avoid unnecessary malloc/free to get the file basename on MSVC to avoid
unnecessary overhead when doing GST_DEBUG=foo:5 or so (since it would be
done before the category log level filtering).

13 years agoUpdate spec file with latest changes and enable GIR
christian schaller [Thu, 6 Jan 2011 17:29:46 +0000 (17:29 +0000)]
Update spec file with latest changes and enable GIR

13 years agoobject: Fix creation of default name
David Schleef [Wed, 5 Jan 2011 20:59:48 +0000 (12:59 -0800)]
object: Fix creation of default name

Change the fixed allocation (!) to g_strdup_printf().

13 years agoGstElement: Add a more flexible way to get request pads.
Edward Hervey [Mon, 20 Dec 2010 12:30:43 +0000 (13:30 +0100)]
GstElement: Add a more flexible way to get request pads.

The new request_new_pad_full vmethod provides an additional caps field,
which allows elements to take better decision process.

Also, add a gst_element_request_pad() function to allow developers to be
able to specify which pad template they want a pad of.

Convert gstutils to use that new method instead of the old one when more
efficient.

This is useful for being able to request pads in a more flexible way,
especially when the element can provide pads whose caps depend on
runtime configuration and therefore can't provide pre-registered
pad templates.

API: GstElement::request_new_pad_full
API: gst_element_request_pad

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

13 years agoinputselector: remove "select-all" property
Tim-Philipp Müller [Wed, 5 Jan 2011 15:53:28 +0000 (15:53 +0000)]
inputselector: remove "select-all" property

select-all mode is a bit broken (e.g. newsegment event
handling), so remove that for now. The funnel element
in farsight provides similar functionality.

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

13 years agogst: remove safety check for GLib < 2.8
Tim-Philipp Müller [Wed, 5 Jan 2011 15:36:55 +0000 (15:36 +0000)]
gst: remove safety check for GLib < 2.8

Don't worry about accidentally using GLib < 2.8 at runtime anymore.

13 years agogstdatetime: Disable usage of GDateTime on MacOSX
Edward Hervey [Wed, 5 Jan 2011 10:26:13 +0000 (11:26 +0100)]
gstdatetime: Disable usage of GDateTime on MacOSX

GLib's GDateTime doesn't handle properly the gmt offset. Therefore
use our own internal version instead on MacOSX.

See bug #638666

13 years agodesign: more updates for the progress messages
Wim Taymans [Wed, 5 Jan 2011 09:56:37 +0000 (10:56 +0100)]
design: more updates for the progress messages

13 years agopwg: Fix link to GObject documentation
Edward Hervey [Tue, 4 Jan 2011 17:36:41 +0000 (18:36 +0100)]
pwg: Fix link to GObject documentation

Better have gnome.org than viagra :)

13 years agopluginloader: Always mark reception as complete after EXIT
Edward Hervey [Mon, 3 Jan 2011 19:32:23 +0000 (20:32 +0100)]
pluginloader: Always mark reception as complete after EXIT

Avoids waiting forever on gst_poll_wait when using the select
backend.

Fixes #637057

13 years agogstinfo: don't use printf extensions if GLib isn't using the system printf
Tim-Philipp Müller [Tue, 4 Jan 2011 00:48:15 +0000 (00:48 +0000)]
gstinfo: don't use printf extensions if GLib isn't using the system printf

Might help with https://bugzilla.gnome.org/show_bug.cgi?id=638599

13 years agogstpoll: Fix for (p)select backend
Edward Hervey [Mon, 3 Jan 2011 19:19:05 +0000 (20:19 +0100)]
gstpoll: Fix for (p)select backend

We need to reset the revents field of each pollfd when reading the results
from select else we'll end up with stray info from previous calls to
select.

13 years agogstvalue: make new gst_value_list_merge() work properly
Tim-Philipp Müller [Mon, 3 Jan 2011 01:06:06 +0000 (01:06 +0000)]
gstvalue: make new gst_value_list_merge() work properly

Fix freeing of partially-inited list value when both values
passed are equal and we want to return a single non-list
value as result. Fixes unit test. Also fix up docs a bit.

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

13 years agotags: don't produce duplicated entries when merging same value twice
Stefan Kost [Tue, 21 Dec 2010 21:03:12 +0000 (23:03 +0200)]
tags: don't produce duplicated entries when merging same value twice

Add a variant of gst_value_list_concat() that skips duplicates and use that when
merging taglists.

API: gst_value_list_merge()

13 years agobasesrc, basesink: add some FIXMEs for the type of the blocksize property
Tim-Philipp Müller [Sun, 2 Jan 2011 16:58:39 +0000 (16:58 +0000)]
basesrc, basesink: add some FIXMEs for the type of the blocksize property

14 years agoinputselector: make pad's get_type function thread-safe
Tim-Philipp Müller [Fri, 31 Dec 2010 12:08:19 +0000 (12:08 +0000)]
inputselector: make pad's get_type function thread-safe

14 years agocoreelements: remove unused files
Tim-Philipp Müller [Fri, 31 Dec 2010 11:37:56 +0000 (11:37 +0000)]
coreelements: remove unused files

14 years agoinputselector: Protected g_object_notify() calls for the active-pad with a recursive...
Sebastian Dröge [Fri, 31 Dec 2010 11:27:45 +0000 (12:27 +0100)]
inputselector: Protected g_object_notify() calls for the active-pad with a recursive mutex

This works around a thread safety problem in GLib < 2.26.0 and should
be removed when we depend on 2.26.0.

Fixes bug #607513.

14 years agotests: fix typo
Zhang Wanming [Fri, 31 Dec 2010 08:52:54 +0000 (16:52 +0800)]
tests: fix typo

Signed-off-by: Zhang Wanming <Wanming.Zhang@tieto.com>
14 years agogstfdsink: fix typo
Zhang Wanming [Fri, 31 Dec 2010 08:50:57 +0000 (16:50 +0800)]
gstfdsink: fix typo

Signed-off-by: Zhang Wanming <Wanming.Zhang@tieto.com>
14 years agodocs: fix typo
Zhang Wanming [Fri, 31 Dec 2010 08:50:17 +0000 (16:50 +0800)]
docs: fix typo

Signed-off-by: Zhang Wanming <Wanming.Zhang@tieto.com>
14 years agotests: remove output-selector test which needs elements from -base
Tim-Philipp Müller [Fri, 31 Dec 2010 01:09:40 +0000 (01:09 +0000)]
tests: remove output-selector test which needs elements from -base

Move it to -base instead.

14 years agochecks: enable input-selector and output-selector unit tests after move
Tim-Philipp Müller [Fri, 31 Dec 2010 00:59:53 +0000 (00:59 +0000)]
checks: enable input-selector and output-selector unit tests after move

14 years agodocs: add input-selector and output-selector to docs
Tim-Philipp Müller [Fri, 31 Dec 2010 00:48:55 +0000 (00:48 +0000)]
docs: add input-selector and output-selector to docs

14 years agocoreelements: GST_BOILERPLATE already sets parent_class
Tim-Philipp Müller [Fri, 31 Dec 2010 00:45:54 +0000 (00:45 +0000)]
coreelements: GST_BOILERPLATE already sets parent_class

14 years agoinput-selector, output-selector: minor clean-ups
Tim-Philipp Müller [Fri, 31 Dec 2010 00:43:37 +0000 (00:43 +0000)]
input-selector, output-selector: minor clean-ups

14 years agocoreelements: move input-selector and output-selector to core
Tim-Philipp Müller [Thu, 30 Dec 2010 18:57:13 +0000 (18:57 +0000)]
coreelements: move input-selector and output-selector to core

Moved to core from gst-plugins-bad.

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

14 years agooutput-selector-test: don't hardcode videosinks and use more colorspace conv.
Stefan Kost [Wed, 24 Nov 2010 10:22:01 +0000 (12:22 +0200)]
output-selector-test: don't hardcode videosinks and use more colorspace conv.

Use autovideosink instead of hardcoded sinks. Use an additional colorspace
converter between videotestsrc and timeoverlay.

14 years agooutputselector: Avoid losing the last_buffer when switching
Thiago Santos [Fri, 17 Sep 2010 12:52:12 +0000 (09:52 -0300)]
outputselector: Avoid losing the last_buffer when switching

This patch makes outputselector take an extra ref when pushing
the last_buffer to avoid it losing it during the switch function.

This makes resend-latest properly work if the active-pad is changed
during the switch function buffer pushing (on a pad probe, for example).

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

14 years agooutputselector: Recheck pending switch after pushing buffer
Thiago Santos [Fri, 17 Sep 2010 12:44:02 +0000 (09:44 -0300)]
outputselector: Recheck pending switch after pushing buffer

This patch makes output-selector always recheck if there's a
pending pad switch after pushing a buffer, preventing that
it pushes a buffer on the 'wrong' pad.

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

14 years agoinputselector: log times in human readable form
Stefan Kost [Mon, 1 Nov 2010 21:04:44 +0000 (23:04 +0200)]
inputselector: log times in human readable form

14 years agoinputselector: move reoccuring logs to LOG and remove a double info
Stefan Kost [Mon, 1 Nov 2010 20:40:36 +0000 (22:40 +0200)]
inputselector: move reoccuring logs to LOG and remove a double info

Less debug spew in DEBUG category. No need to log pad again if we use
GST_LOG_OBJECT(pad,...).

14 years agovarious (gst): add missing G_PARAM_STATIC_STRINGS flags
Stefan Kost [Tue, 19 Oct 2010 10:43:14 +0000 (13:43 +0300)]
various (gst): add missing G_PARAM_STATIC_STRINGS flags

Canonicalize property names as needed.

14 years agoinputselector: sync with copy in -base
Stefan Kost [Mon, 6 Sep 2010 08:03:07 +0000 (11:03 +0300)]
inputselector: sync with copy in -base

Use _get_caps_reffed to avoid copies.

14 years agooutputselector: move the debug init to the boilerplate macro
Stefan Kost [Tue, 24 Aug 2010 08:50:47 +0000 (11:50 +0300)]
outputselector: move the debug init to the boilerplate macro

14 years agoinputselector: use GST_BOILERPLATE macro
Stefan Kost [Tue, 24 Aug 2010 08:50:09 +0000 (11:50 +0300)]
inputselector: use GST_BOILERPLATE macro

14 years agoAdd -Wwrite-strings
Benjamin Otte [Mon, 22 Mar 2010 12:16:33 +0000 (13:16 +0100)]
Add -Wwrite-strings

and fix its warnings

14 years agoAdd -Wmissing-declarations -Wmissing-prototypes to configure flags
Benjamin Otte [Sun, 21 Mar 2010 20:39:18 +0000 (21:39 +0100)]
Add -Wmissing-declarations -Wmissing-prototypes to configure flags

And fix all warnings

14 years agogst_element_class_set_details => gst_element_class_set_details_simple
Benjamin Otte [Thu, 18 Mar 2010 16:30:26 +0000 (17:30 +0100)]
gst_element_class_set_details => gst_element_class_set_details_simple

14 years agoRevert "inputselector: Protect g_object_notify() with the object's mutex"
Sebastian Dröge [Mon, 25 Jan 2010 11:21:34 +0000 (12:21 +0100)]
Revert "inputselector: Protect g_object_notify() with the object's mutex"

This reverts commit 7e067615ffb5614f068f7753c10dde99afe49c3c, it's causing
deadlocks with playbin2.

14 years agoinputselector: Protect g_object_notify() with the object's mutex
Kipp Cannon [Sun, 24 Jan 2010 19:53:00 +0000 (20:53 +0100)]
inputselector: Protect g_object_notify() with the object's mutex

This works around the thread unsafety of g_object_notify()

Fixes bug #607513.

14 years agoinputselector: Remove useless variables and fix a uninitialized variable compiler...
Sebastian Dröge [Mon, 9 Nov 2009 10:49:15 +0000 (11:49 +0100)]
inputselector: Remove useless variables and fix a uninitialized variable compiler warnings

Merged from gst-plugins-base, dfd51aa82a9e1c9924375183796eab70e574a231.

14 years agoinputselector: Make sure that running_time->timestamp calculation never becomes negative
Sebastian Dröge [Mon, 9 Nov 2009 10:48:39 +0000 (11:48 +0100)]
inputselector: Make sure that running_time->timestamp calculation never becomes negative

Merged from gst-plugins-base, f3653854585864a09d35e037853407332ea6901f.

14 years agoinputselector: Use the start time (i.e. timestamp) as the last stop
Sebastian Dröge [Mon, 9 Nov 2009 10:48:00 +0000 (11:48 +0100)]
inputselector: Use the start time (i.e. timestamp) as the last stop

Using the end time makes it impossible to replace buffers, which is
a big problem for subtitles that could have very long durations.

Merged from gst-plugins-base, 27034be4611231cc55fa3d3e253baa40c6bff41d.

14 years agoinputselector: Improve debugging
Sebastian Dröge [Mon, 9 Nov 2009 10:47:15 +0000 (11:47 +0100)]
inputselector: Improve debugging

Merged from gst-plugins-base.

14 years agoRevert "inputselector: use get_caps_reffed()"
Wim Taymans [Thu, 5 Nov 2009 12:53:46 +0000 (13:53 +0100)]
Revert "inputselector: use get_caps_reffed()"

This reverts commit 49ec4f796a0e3f88a851708782c853baf4b05724.

We can't use this new function yet.

14 years agoinputselector: use get_caps_reffed()
Wim Taymans [Thu, 5 Nov 2009 12:29:55 +0000 (13:29 +0100)]
inputselector: use get_caps_reffed()

14 years agoinputselector: also add inline to the proto to fix the build
Stefan Kost [Tue, 3 Nov 2009 22:21:19 +0000 (00:21 +0200)]
inputselector: also add inline to the proto to fix the build

14 years agogst: Remove dead assignments and resulting unused variables
Edward Hervey [Tue, 3 Nov 2009 17:14:12 +0000 (18:14 +0100)]
gst: Remove dead assignments and resulting unused variables

Merged from gst-plugins-base, 8cd1b5209b68944e1be56ca8bb69e46d4abb7a34.

14 years agoinputselector: Use the same iterate internal links function as in gst-plugins-base
Sebastian Dröge [Tue, 3 Nov 2009 17:12:21 +0000 (18:12 +0100)]
inputselector: Use the same iterate internal links function as in gst-plugins-base

14 years agoinput-selector: Remove GST_DEBUG_FUNCPTR where they're pointless
Tim-Philipp Müller [Tue, 3 Nov 2009 17:11:13 +0000 (18:11 +0100)]
input-selector: Remove GST_DEBUG_FUNCPTR where they're pointless

There's not much point in using GST_DEBUG_FUNCPTR with GObject
virtual functions such as get_property, set_propery, finalize and
dispose, since they'll never be used by anyone anyway. Saves a
few bytes and possibly a sixteenth of a polar bear.

Merged from gst-plugins-base, 6f4c1ac58341ee189225d313ddfe9ae24a65c88c.

14 years agoinput-selector: Remove Ronald Bultje from Authors field
David Schleef [Tue, 3 Nov 2009 17:09:55 +0000 (18:09 +0100)]
input-selector: Remove Ronald Bultje from Authors field

Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.

Merged from gst-plugins-base, 0e9bc5125aca546d773ed1002df573dd8e2dc136.

14 years agoinputselector: set output caps before pushing
Wim Taymans [Tue, 3 Nov 2009 17:08:05 +0000 (18:08 +0100)]
inputselector: set output caps before pushing

Set the output caps on the srcpad before pushing the buffer because else core
will do a rather expensive check to see if we can actually accept those caps on
the srcpad.

Merged from gst-plugins-base, bdfb4b46d746ef298fcf44260879c342af4cafa3.

14 years agoinputselector: install an acceptcaps function
Wim Taymans [Tue, 3 Nov 2009 17:06:11 +0000 (18:06 +0100)]
inputselector: install an acceptcaps function

Install a custom acceptcaps function instead of using the default expensive
check. We accept whatever downstream accepts so we pass along the acceptcaps
call to the downstream peer.

Merged from gst-plugins-base, 5b72f2adf996739036e8d9b5f91005455d1fface.

14 years agoRemove executable bits from non-executable files.
Michael Smith [Tue, 27 Oct 2009 18:51:05 +0000 (11:51 -0700)]
Remove executable bits from non-executable files.

14 years agoinputselector: Use new single iterator for the internally linked pads
Sebastian Dröge [Fri, 25 Sep 2009 09:07:02 +0000 (11:07 +0200)]
inputselector: Use new single iterator for the internally linked pads

This fixes a deadlock and removes some useless code.

14 years agooutputselector: make GST_FORMAT_TIME the default segment format
Havard Graff [Mon, 31 Aug 2009 17:31:57 +0000 (19:31 +0200)]
outputselector: make GST_FORMAT_TIME the default segment format

14 years agoinputselector: Use iterate internal links instead of deprecated get internal links
Sebastian Dröge [Wed, 19 Aug 2009 15:05:32 +0000 (17:05 +0200)]
inputselector: Use iterate internal links instead of deprecated get internal links

14 years agooutputselector: check for pending srcpad in _get_property()
Tommi Myöhänen [Fri, 31 Jul 2009 08:27:03 +0000 (11:27 +0300)]
outputselector: check for pending srcpad in _get_property()

If there is a pending srcpad, return it instead of active srcpad
in gst_output_selector_get_property() function.

14 years agooutputselector: do the pad_alloc for the pad that is pending and have a fallback
Stefan Kost [Fri, 12 Jun 2009 07:14:27 +0000 (10:14 +0300)]
outputselector: do the pad_alloc for the pad that is pending and have a fallback

We should do the pad_alloc for the pending pad if any, as we will switch to that
pad on next _chain() call. Also do a fallback alloc, if there is no output yet to
not fail state transitions in dynamic pipelines.

14 years agooutput-selector: serialize setting and actual changing of new active pad
Lasse Laukkanen [Mon, 1 Jun 2009 13:31:42 +0000 (16:31 +0300)]
output-selector: serialize setting and actual changing of new active pad

14 years agooutput-selector: unref latest buffer also when resending has been disabled
Lasse Laukkanen [Mon, 4 May 2009 09:29:54 +0000 (12:29 +0300)]
output-selector: unref latest buffer also when resending has been disabled

14 years agooutput-selector: keep ref to buffer for resending only if explicitly requested
Lasse Laukkanen [Thu, 16 Apr 2009 14:32:03 +0000 (17:32 +0300)]
output-selector: keep ref to buffer for resending only if explicitly requested

14 years agoinputselector: don't leak pads in iterator
Wim Taymans [Thu, 4 Jun 2009 17:08:16 +0000 (19:08 +0200)]
inputselector: don't leak pads in iterator

14 years agoinputselector: Notify when the tags property of the selector sinkpads changes
Sebastian Dröge [Thu, 4 Jun 2009 06:56:29 +0000 (08:56 +0200)]
inputselector: Notify when the tags property of the selector sinkpads changes

First part of bug #584686.

14 years agoselector: remove not needed instance var (previous commit).
Stefan Kost [Thu, 28 May 2009 07:38:50 +0000 (10:38 +0300)]
selector: remove not needed instance var (previous commit).

14 years agooutputselector: implement pad_alloc on active pad.
Stefan Kost [Thu, 28 May 2009 07:12:58 +0000 (10:12 +0300)]
outputselector: implement pad_alloc on active pad.

14 years agoinput-selector: Forward segment events for the active pad immediately.
Jan Schmidt [Thu, 23 Apr 2009 10:04:46 +0000 (11:04 +0100)]
input-selector: Forward segment events for the active pad immediately.

When a segment event is received on the active pad, forward it downstream
immediately instead of deferring it until the next data buffer arrives. This
fixes problems with segment updates never being sent downstream, like those
needed for sparse streams, or for closing previously opened segments.

This fixes playback of DVD menus with a still video frame and an audio track,
for example.

Fixes: #577843
14 years agooutputselector: reset state when going to READY
Wim Taymans [Fri, 27 Mar 2009 10:20:02 +0000 (11:20 +0100)]
outputselector: reset state when going to READY

Reset the last-buffer, the pending pad and the segment when going to the READY
state.
Fixes #576712.

14 years agoselector: merge the tags
Wim Taymans [Tue, 24 Mar 2009 14:23:03 +0000 (15:23 +0100)]
selector: merge the tags

Merge the tags received on the input-selector sinkpads instead of only keeping
the last one we saw.

14 years agodocs: various doc fixes
Stefan Kost [Wed, 25 Feb 2009 09:45:05 +0000 (11:45 +0200)]
docs: various doc fixes

No short-desc as we have them in the element details.
Also keep things (Makefile.am and sections.txt) sorted.
Reword ambigous returns. No text after since please.

14 years agoinputselector: Fix compilation, activate_sinkpad() has no notify parameter
Sebastian Dröge [Wed, 11 Feb 2009 16:21:20 +0000 (17:21 +0100)]
inputselector: Fix compilation, activate_sinkpad() has no notify parameter

14 years agoinput-selector: Activate and notify pad before processing events.
Michael Smith [Wed, 11 Feb 2009 00:22:54 +0000 (16:22 -0800)]
input-selector: Activate and notify pad before processing events.

Events should trigger pad selection if we don't already have an
explicitly selected pad, so that events prior to first buffer don't get
lost.

14 years agoUnref event if we don't forward it, unref pads when done with them.
Michael Smith [Sat, 31 Jan 2009 02:27:03 +0000 (18:27 -0800)]
Unref event if we don't forward it, unref pads when done with them.

14 years agoplugins/elements/gstinputselector.c: Ensure we emit notify::active-pad when auto...
Michael Smith [Thu, 4 Dec 2008 17:51:37 +0000 (17:51 +0000)]
plugins/elements/gstinputselector.c: Ensure we emit notify::active-pad when auto-selecting a pad due to it having activit...

Original commit message from CVS:
* plugins/elements/gstinputselector.c:
Ensure we emit notify::active-pad when auto-selecting a pad
due to it having activity and us not having an existing active
pad. Fixes #563147

14 years agoplugins/elements/gstinputselector.c: Gracefully handle the cases when we dont' have...
Edward Hervey [Wed, 15 Oct 2008 17:45:37 +0000 (17:45 +0000)]
plugins/elements/gstinputselector.c: Gracefully handle the cases when we dont' have otherpad.

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_input_selector_event),
(gst_input_selector_query):
Gracefully handle the cases when we dont' have otherpad.
Fixes #556430

14 years agoplugins/elements/gstoutputselector.c: Choose right pad for sending events. Fixes...
Stefan Kost [Tue, 7 Oct 2008 13:14:40 +0000 (13:14 +0000)]
plugins/elements/gstoutputselector.c: Choose right pad for sending events. Fixes #555244

Original commit message from CVS:
* plugins/elements/gstoutputselector.c:
Choose right pad for sending events. Fixes #555244

14 years agoplugins/elements/gstinputselector.c: Reset the selector state when going to READY.
Wim Taymans [Mon, 8 Sep 2008 20:27:23 +0000 (20:27 +0000)]
plugins/elements/gstinputselector.c: Reset the selector state when going to READY.

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_selector_pad_reset),
(gst_input_selector_reset), (gst_input_selector_change_state):
Reset the selector state when going to READY.

14 years agoplugins/elements/gstinputselector.c: Reuse the get_linked_pads for both source and...
Wim Taymans [Mon, 1 Sep 2008 13:23:03 +0000 (13:23 +0000)]
plugins/elements/gstinputselector.c: Reuse the get_linked_pads for both source and sinkpads because they are the same.

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_input_selector_init),
(gst_input_selector_event), (gst_input_selector_query):
Reuse the get_linked_pads for both source and sinkpads because they are
the same.
Implement a custum event handler and get the internally linked pad
directly instead of relying on the default (slower) implementation.

14 years agoplugins/elements/gstinputselector.c: Implement the LATENCY query in a better way...
Wim Taymans [Wed, 27 Aug 2008 15:45:16 +0000 (15:45 +0000)]
plugins/elements/gstinputselector.c: Implement the LATENCY query in a better way by taking the latency of all sinkpads an...

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_input_selector_init),
(gst_input_selector_query):
Implement the LATENCY query in a better way by taking the latency of all
sinkpads and taking the min/max instead of just taking a random pad.

14 years agoplugins/elements/gstinputselector.c: Move the select-all logic into the activation...
Wim Taymans [Tue, 5 Aug 2008 09:05:35 +0000 (09:05 +0000)]
plugins/elements/gstinputselector.c: Move the select-all logic into the activation of the currently selected pad. We want...

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_selector_pad_bufferalloc),
(gst_selector_pad_chain), (gst_input_selector_getcaps),
(gst_input_selector_activate_sinkpad):
Move the select-all logic into the activation of the currently selected
pad. We want to remember the last pad with activity in select-all mode.
Fix the getcaps function, we can produce the union of the upstream caps
in select-all mode, not the intersection like proxy_getcaps() does.

14 years agooutput-selector: Use BOILERPLATE macro and update test to the latest api changes.
Stefan Kost [Thu, 19 Jun 2008 13:18:24 +0000 (13:18 +0000)]
output-selector: Use BOILERPLATE macro and update test to the latest api changes.

Original commit message from CVS:
* plugins/elements/gstoutputselector.c:
* tests/icles/output-selector-test.c:
Use BOILERPLATE macro and update test to the latest api changes.

14 years agoDo not use short_description in section docs for elements. We extract them from eleme...
Stefan Kost [Thu, 12 Jun 2008 14:49:18 +0000 (14:49 +0000)]
Do not use short_description in section docs for elements. We extract them from element details and there will be war...

Original commit message from CVS:
* ext/dc1394/gstdc1394.c:
* ext/ivorbis/vorbisdec.c:
* ext/jack/gstjackaudiosink.c:
* ext/metadata/gstmetadatademux.c:
* ext/mythtv/gstmythtvsrc.c:
* ext/theora/theoradec.c:
* gst-libs/gst/app/gstappsink.c:
* gst/bayer/gstbayer2rgb.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/rawparse/gstaudioparse.c:
* gst/rawparse/gstvideoparse.c:
* gst/rtpmanager/gstrtpbin.c:
* gst/rtpmanager/gstrtpclient.c:
* gst/rtpmanager/gstrtpjitterbuffer.c:
* gst/rtpmanager/gstrtpptdemux.c:
* gst/rtpmanager/gstrtpsession.c:
* gst/rtpmanager/gstrtpssrcdemux.c:
* plugins/elements/gstinputselector.c:
* plugins/elements/gstoutputselector.c:
* gst/videosignal/gstvideoanalyse.c:
* gst/videosignal/gstvideodetect.c:
* gst/videosignal/gstvideomark.c:
* sys/oss4/oss4-mixer.c:
* sys/oss4/oss4-sink.c:
* sys/oss4/oss4-source.c:
Do not use short_description in section docs for elements. We extract
them from element details and there will be warnings if they differ.
Also fixing up the ChangeLog order.

14 years agoplugins/elements/gstinputselector.c: Do g_object_notify() only when not holding the...
Wim Taymans [Thu, 20 Mar 2008 18:10:29 +0000 (18:10 +0000)]
plugins/elements/gstinputselector.c: Do g_object_notify() only when not holding the lock to get the property because othe...

Original commit message from CVS:
* plugins/elements/gstinputselector.c:
(gst_input_selector_set_active_pad), (gst_input_selector_switch):
Do g_object_notify() only when not holding the lock to get the property
because otherwise we run into a deadlock with the deep-notify handlers
that are possibly installed.

14 years agoplugins/elements/gstinputselector.c: Release the selector lock when pad alloc happens...
Wim Taymans [Thu, 20 Mar 2008 17:48:49 +0000 (17:48 +0000)]
plugins/elements/gstinputselector.c: Release the selector lock when pad alloc happens on a non selected pad.

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_selector_pad_class_init),
(gst_selector_pad_event), (gst_selector_pad_bufferalloc),
(gst_selector_pad_chain), (gst_input_selector_set_active_pad):
Release the selector lock when pad alloc happens on a non selected pad.

14 years agoplugins/elements/gstinputselector.c: Add pad property to configure behaviour of the...
Wim Taymans [Thu, 20 Mar 2008 17:07:07 +0000 (17:07 +0000)]
plugins/elements/gstinputselector.c: Add pad property to configure behaviour of the unselected pad, it can return OK or N...

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_selector_pad_class_init),
(gst_selector_pad_init), (gst_selector_pad_set_property),
(gst_selector_pad_get_property), (gst_selector_pad_event),
(gst_selector_pad_bufferalloc), (gst_selector_pad_chain),
(gst_input_selector_set_active_pad):
Add pad property to configure behaviour of the unselected pad, it can
return OK or NOT_LINKED, based on the use case.

14 years agoplugins/elements/gstinputselector.*: Figure out the locking a bit more.
Wim Taymans [Thu, 20 Mar 2008 16:48:46 +0000 (16:48 +0000)]
plugins/elements/gstinputselector.*: Figure out the locking a bit more.

Original commit message from CVS:
* plugins/elements/gstinputselector.c:
(gst_selector_pad_get_running_time), (gst_selector_pad_reset),
(gst_selector_pad_event), (gst_selector_pad_bufferalloc),
(gst_input_selector_wait), (gst_selector_pad_chain),
(gst_input_selector_class_init), (gst_input_selector_init),
(gst_input_selector_dispose), (gst_segment_set_start),
(gst_input_selector_set_active_pad),
(gst_input_selector_set_property),
(gst_input_selector_get_property),
(gst_input_selector_get_linked_pad),
(gst_input_selector_is_active_sinkpad),
(gst_input_selector_activate_sinkpad),
(gst_input_selector_request_new_pad),
(gst_input_selector_release_pad),
(gst_input_selector_change_state), (gst_input_selector_block),
(gst_input_selector_switch):
* plugins/elements/gstinputselector.h:
Figure out the locking a bit more.
Mark buffers with discont after switching.
Fix initial segment forwarding, make sure to only forward one segment
regardless of what the sequence of buffers/segments is. See #522203.
Improve flushing when blocked.
Return NOT_LINKED when a stream is not selected.
Not API change for the switch signal in the docs.
Fix start/time/accum values of the new segment.
Correctly unlock and flush a blocking selector when going to READY.

14 years agoplugins/elements/gstinputselector.c: Add lots of debugging.
Wim Taymans [Fri, 14 Mar 2008 17:22:21 +0000 (17:22 +0000)]
plugins/elements/gstinputselector.c: Add lots of debugging.

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_selector_pad_event),
(gst_selector_pad_bufferalloc), (gst_selector_pad_chain),
(gst_input_selector_class_init),
(gst_input_selector_set_active_pad),
(gst_input_selector_set_property),
(gst_input_selector_push_pending_stop):
Add lots of debugging.
Fix time member in the newsegment event.

14 years agoplugins/elements/gstinputselector.*: Various cleanups.
Wim Taymans [Thu, 13 Mar 2008 16:46:04 +0000 (16:46 +0000)]
plugins/elements/gstinputselector.*: Various cleanups.

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_selector_pad_class_init),
(gst_selector_pad_finalize), (gst_selector_pad_get_property),
(gst_selector_pad_event), (gst_input_selector_class_init),
(gst_input_selector_init), (gst_input_selector_set_active_pad),
(gst_input_selector_set_property),
(gst_input_selector_get_property),
(gst_input_selector_request_new_pad),
(gst_input_selector_release_pad),
(gst_input_selector_push_pending_stop),
(gst_input_selector_switch):
* plugins/elements/gstinputselector.h:
Various cleanups.
Added tags to the pads.
Select active pad based on the pad object instead of its name.
Fix refcount in set_active_pad.
Add property to get the number of pads.
* plugins/elements/gstoutputselector.c:
(gst_output_selector_class_init),
(gst_output_selector_set_property),
(gst_output_selector_get_property):
Various cleanups.
Select the active pad based on the pad object instead of its name.
Fix locking when setting the active pad.
* plugins/elements/gstselector-marshal.list:
* tests/check/elements/selector.c: (cleanup_pad),
(selector_set_active_pad), (run_input_selector_buffer_count):
Fixes for pad instead of padname for pad selection.

14 years agoplugins/elements/gstoutputselector.c: Fix changing to same pad twice before a chain...
Stefan Kost [Tue, 26 Feb 2008 12:01:37 +0000 (12:01 +0000)]
plugins/elements/gstoutputselector.c: Fix changing to same pad twice before a chain call.

Original commit message from CVS:
* plugins/elements/gstoutputselector.c:
Fix changing to same pad twice before a chain call.

14 years agoplugins/elements/gstinputselector.*: Added "select-all" property to make it work...
Stefan Kost [Mon, 25 Feb 2008 08:53:51 +0000 (08:53 +0000)]
plugins/elements/gstinputselector.*: Added "select-all" property to make it work like aggregator in 0.8.

Original commit message from CVS:
* plugins/elements/gstinputselector.c:
* plugins/elements/gstinputselector.h:
Added "select-all" property to make it work like aggregator in 0.8.
* plugins/elements/gstoutputselector.c:
Fix resend-latest behavoiur.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/selector.c:
Add unit tests for selector.

14 years agogst/multifile/gstmultifilesink.c: Add a fixme comment.
Stefan Kost [Thu, 7 Feb 2008 13:48:20 +0000 (13:48 +0000)]
gst/multifile/gstmultifilesink.c: Add a fixme comment.

Original commit message from CVS:
* gst/multifile/gstmultifilesink.c:
Add a fixme comment.
* plugins/elements/gstoutputselector.c:
Fix same leak as in input-selector.
* tests/icles/output-selector-test.c:
Improve the test.

14 years agoplugins/elements/gstinputselector.c: Don't leak event on pads that are not linked...
Wim Taymans [Fri, 1 Feb 2008 17:08:18 +0000 (17:08 +0000)]
plugins/elements/gstinputselector.c: Don't leak event on pads that are not linked. Fixes #512826.

Original commit message from CVS:
* plugins/elements/gstinputselector.c: (gst_selector_pad_event):
Don't leak event on pads that are not linked. Fixes #512826.

14 years agoReplace the switch plugin with the selector plugin. Add output- selector as the oppos...
Stefan Kost [Tue, 29 Jan 2008 07:38:31 +0000 (07:38 +0000)]
Replace the switch plugin with the selector plugin. Add output- selector as the opposite of input-selectoo (was switc...

Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-metadata.xml:
* docs/plugins/inspect/plugin-selector.xml:
* docs/plugins/inspect/plugin-soundtouch.xml:
* docs/plugins/inspect/plugin-switch.xml:
* plugins/elements/.cvsignore:
* plugins/elements/Makefile.am:
* plugins/elements/gstinputselector.c:
* plugins/elements/gstinputselector.h:
* plugins/elements/gstoutputselector.c:
* plugins/elements/gstoutputselector.h:
* plugins/elements/gstselector-marshal.list:
* plugins/elements/gstselector.c:
* plugins/elements/selector.vcproj:
* gst/switch/.cvsignore:
* gst/switch/Makefile.am:
* gst/switch/gstswitch-marshal.list:
* gst/switch/gstswitch.c:
* gst/switch/gstswitch.h:
* gst/switch/switch.vcproj:
* tests/icles/.cvsignore:
* tests/icles/Makefile.am:
* tests/icles/output-selector-test.c:
Replace the switch plugin with the selector plugin. Add output-
selector as the opposite of input-selectoo (was switch). Add a test
for output-selector. Add docs for the elements. The vcproj needs
update. Fixes #500142.

14 years agodocs: add valve element to documentation
Tim-Philipp Müller [Thu, 30 Dec 2010 00:46:02 +0000 (00:46 +0000)]
docs: add valve element to documentation

14 years agovalve: some minor clean-ups
Tim-Philipp Müller [Thu, 30 Dec 2010 00:41:09 +0000 (00:41 +0000)]
valve: some minor clean-ups

14 years agovalve: fix typo in property description
Tim-Philipp Müller [Thu, 30 Dec 2010 00:30:18 +0000 (00:30 +0000)]
valve: fix typo in property description

And rephrase while at it, to make it more concise.

14 years agotests: enable valve unit test
Tim-Philipp Müller [Thu, 30 Dec 2010 00:26:43 +0000 (00:26 +0000)]
tests: enable valve unit test

14 years agoelements: add new valve element to build
Tim-Philipp Müller [Thu, 30 Dec 2010 00:22:38 +0000 (00:22 +0000)]
elements: add new valve element to build

Moved from gst-plugins-bad

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

14 years agotests: fix valve unit test
Tim-Philipp Müller [Tue, 19 Oct 2010 22:40:36 +0000 (23:40 +0100)]
tests: fix valve unit test

gst_buffer_pad_alloc() needs simple caps or NULL caps,
ANY caps are not allowed.