msmith gst-plugins-bad: gst-plugins-bad/ gst-plugins-bad/gst/selector/
[email protected] Thu, 4 Dec 2008 09:51:51 -0800 (PST)
| Newsgroups | gmane.comp.video.gstreamer.cvs |
|---|---|
| Message-ID | <[email protected]> |
CVS Root: /cvs/gstreamer
Module: gst-plugins-bad
Changes by: msmith
Date: Thu Dec 04 2008 17:51:52 UTC
Log message:
* gst/selector/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
Modified files:
. : ChangeLog
gst/selector : gstinputselector.c
Links:
http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-plugins-bad/ChangeLog.diff?r1=1.3787&r2=1.3788
http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-plugins-bad/gst/selector/gstinputselector.c.diff?r1=1.15&r2=1.16
====Begin Diffs====
Index: ChangeLog
===================================================================
RCS file: /cvs/gstreamer/gst-plugins-bad/ChangeLog,v
retrieving revision 1.3787
retrieving revision 1.3788
diff -u -d -r1.3787 -r1.3788
--- ChangeLog 4 Dec 2008 13:28:43 -0000 1.3787
+++ ChangeLog 4 Dec 2008 17:51:36 -0000 1.3788
@@ -1,3 +1,10 @@
+2008-12-04 Michael Smith <[email protected]>
+
+ * gst/selector/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
2008-12-04 Sebastian Dröge <[email protected]>
* gst/mxf/mxfdemux.c:
Index: gstinputselector.c
RCS file: /cvs/gstreamer/gst-plugins-bad/gst/selector/gstinputselector.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- gstinputselector.c 15 Oct 2008 17:45:37 -0000 1.15
+++ gstinputselector.c 4 Dec 2008 17:51:37 -0000 1.16
@@ -455,6 +455,7 @@
GstInputSelector *sel;
GstFlowReturn result;
GstPad *active_sinkpad;
+ GstPad *prev_active_sinkpad;
GstSelectorPad *selpad;
sel = GST_INPUT_SELECTOR (gst_pad_get_parent (pad));
@@ -463,6 +464,7 @@
GST_DEBUG_OBJECT (pad, "received alloc");
GST_INPUT_SELECTOR_LOCK (sel);
+ prev_active_sinkpad = sel->active_sinkpad;
active_sinkpad = gst_input_selector_activate_sinkpad (sel, pad);
if (pad != active_sinkpad)
@@ -470,6 +472,9 @@
GST_INPUT_SELECTOR_UNLOCK (sel);
+ if (prev_active_sinkpad != active_sinkpad && pad == active_sinkpad)
+ g_object_notify (G_OBJECT (sel), "active-pad");
result = gst_pad_alloc_buffer (sel->srcpad, offset, size, caps, buf);
done:
@@ -518,6 +523,7 @@
GstFlowReturn res;
GstClockTime end_time, duration;
GstSegment *seg;
@@ -534,6 +540,7 @@
GST_DEBUG_OBJECT (pad, "getting active pad");
/* update the segment on the srcpad */
@@ -586,6 +593,9 @@
}
if (close_event)
gst_pad_push_event (sel->srcpad, close_event);
@@ -912,6 +922,7 @@
/* schedule a last_stop update if one isn't already scheduled, and a
segment has been pushed before. */
memcpy (&self->segment, &old->segment, sizeof (self->segment));
GST_DEBUG_OBJECT (self, "setting stop_time to %" G_GINT64_FORMAT,
stop_time);
gst_segment_set_stop (&self->segment, stop_time);
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-cvs-verbose mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gstreamer-cvs-verbose