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).
christian schaller [Thu, 6 Jan 2011 17:29:46 +0000 (17:29 +0000)]
Update spec file with latest changes and enable GIR
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().
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
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
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.
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
Wim Taymans [Wed, 5 Jan 2011 09:56:37 +0000 (10:56 +0100)]
design: more updates for the progress messages
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 :)
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
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
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.
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
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()
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
Tim-Philipp Müller [Fri, 31 Dec 2010 12:08:19 +0000 (12:08 +0000)]
inputselector: make pad's get_type function thread-safe
Tim-Philipp Müller [Fri, 31 Dec 2010 11:37:56 +0000 (11:37 +0000)]
coreelements: remove unused files
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.
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>
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>
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>
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.
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
Tim-Philipp Müller [Fri, 31 Dec 2010 00:48:55 +0000 (00:48 +0000)]
docs: add input-selector and output-selector to docs
Tim-Philipp Müller [Fri, 31 Dec 2010 00:45:54 +0000 (00:45 +0000)]
coreelements: GST_BOILERPLATE already sets parent_class
Tim-Philipp Müller [Fri, 31 Dec 2010 00:43:37 +0000 (00:43 +0000)]
input-selector, output-selector: minor clean-ups
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
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.
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
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
Stefan Kost [Mon, 1 Nov 2010 21:04:44 +0000 (23:04 +0200)]
inputselector: log times in human readable form
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,...).
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.
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.
Stefan Kost [Tue, 24 Aug 2010 08:50:47 +0000 (11:50 +0300)]
outputselector: move the debug init to the boilerplate macro
Stefan Kost [Tue, 24 Aug 2010 08:50:09 +0000 (11:50 +0300)]
inputselector: use GST_BOILERPLATE macro
Benjamin Otte [Mon, 22 Mar 2010 12:16:33 +0000 (13:16 +0100)]
Add -Wwrite-strings
and fix its warnings
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
Benjamin Otte [Thu, 18 Mar 2010 16:30:26 +0000 (17:30 +0100)]
gst_element_class_set_details => gst_element_class_set_details_simple
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.
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.
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.
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.
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.
Sebastian Dröge [Mon, 9 Nov 2009 10:47:15 +0000 (11:47 +0100)]
inputselector: Improve debugging
Merged from gst-plugins-base.
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.
Wim Taymans [Thu, 5 Nov 2009 12:29:55 +0000 (13:29 +0100)]
inputselector: use get_caps_reffed()
Stefan Kost [Tue, 3 Nov 2009 22:21:19 +0000 (00:21 +0200)]
inputselector: also add inline to the proto to fix the build
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.
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
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.
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.
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.
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.
Michael Smith [Tue, 27 Oct 2009 18:51:05 +0000 (11:51 -0700)]
Remove executable bits from non-executable files.
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.
Havard Graff [Mon, 31 Aug 2009 17:31:57 +0000 (19:31 +0200)]
outputselector: make GST_FORMAT_TIME the default segment format
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
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.
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.
Lasse Laukkanen [Mon, 1 Jun 2009 13:31:42 +0000 (16:31 +0300)]
output-selector: serialize setting and actual changing of new active pad
Lasse Laukkanen [Mon, 4 May 2009 09:29:54 +0000 (12:29 +0300)]
output-selector: unref latest buffer also when resending has been disabled
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
Wim Taymans [Thu, 4 Jun 2009 17:08:16 +0000 (19:08 +0200)]
inputselector: don't leak pads in iterator
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.
Stefan Kost [Thu, 28 May 2009 07:38:50 +0000 (10:38 +0300)]
selector: remove not needed instance var (previous commit).
Stefan Kost [Thu, 28 May 2009 07:12:58 +0000 (10:12 +0300)]
outputselector: implement pad_alloc on active pad.
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
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.
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.
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.
Sebastian Dröge [Wed, 11 Feb 2009 16:21:20 +0000 (17:21 +0100)]
inputselector: Fix compilation, activate_sinkpad() has no notify parameter
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.
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.
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
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
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Tim-Philipp Müller [Thu, 30 Dec 2010 00:46:02 +0000 (00:46 +0000)]
docs: add valve element to documentation
Tim-Philipp Müller [Thu, 30 Dec 2010 00:41:09 +0000 (00:41 +0000)]
valve: some minor clean-ups
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.
Tim-Philipp Müller [Thu, 30 Dec 2010 00:26:43 +0000 (00:26 +0000)]
tests: enable valve unit test
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
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.