[gst-cvs] CVS: gstreamer/gst/elements gstfakesrc.c,1.32,1.33 gststatistics.c,1.1,1.2

Erik Walthinsen omegahacker at users.sourceforge.net
Sat Oct 27 13:29:44 PDT 2001


Update of /cvsroot/gstreamer/gstreamer/gst/elements
In directory usw-pr-cvs1:/tmp/cvs-serv24873/elements

Modified Files:
	gstfakesrc.c gststatistics.c 
Log Message:
added taaz's threading patch, including queue events

Index: gstfakesrc.c
===================================================================
RCS file: /cvsroot/gstreamer/gstreamer/gst/elements/gstfakesrc.c,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- gstfakesrc.c	2001/10/17 10:21:24	1.32
+++ gstfakesrc.c	2001/10/27 20:28:31	1.33
@@ -679,8 +679,10 @@
     g_print("fakesrc: get      ******* (%s:%s)> (%d bytes, %llu) \n",
                GST_DEBUG_PAD_NAME (pad), GST_BUFFER_SIZE (buf), GST_BUFFER_TIMESTAMP (buf));
 
+  GST_DEBUG_ELEMENT (GST_CAT_DATAFLOW, src, "pre handoff emit\n");
   g_signal_emit (G_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF], 0,
                    buf, pad);
+  GST_DEBUG_ELEMENT (GST_CAT_DATAFLOW, src, "post handoff emit\n");
 
   return buf;
 }

Index: gststatistics.c
===================================================================
RCS file: /cvsroot/gstreamer/gstreamer/gst/elements/gststatistics.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- gststatistics.c	2001/10/24 22:42:40	1.1
+++ gststatistics.c	2001/10/27 20:28:31	1.2
@@ -37,7 +37,6 @@
 /* Statistics signals and args */
 enum {
   SIGNAL_UPDATE,
-  /* FILL ME */
   LAST_SIGNAL
 };
 
@@ -66,7 +65,7 @@
 static void gst_statistics_print		(GstStatistics *statistics);
 
 static GstElementClass *parent_class = NULL;
-static guint gst_statistics_signals[LAST_SIGNAL] = { 0 };
+static guint gst_statistics_signals[LAST_SIGNAL] = { 0, };
 
 static stats zero_stats = { 0, };
 
@@ -131,7 +130,7 @@
   gst_statistics_signals[SIGNAL_UPDATE] =
     g_signal_new ("update", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
                    G_STRUCT_OFFSET (GstStatisticsClass, update), NULL, NULL,
-                   g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 0);
+                   g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
 
   gobject_class->set_property = GST_DEBUG_FUNCPTR (gst_statistics_set_property);
   gobject_class->get_property = GST_DEBUG_FUNCPTR (gst_statistics_get_property);
@@ -283,10 +282,12 @@
 
   if (GST_IS_EVENT(buf)) {
     GstEvent *event = GST_EVENT (buf);
-    gst_element_set_state (GST_ELEMENT (statistics), GST_STATE_PAUSED);
     statistics->stats.events += 1;
-    if (statistics->update_on_eos && (GST_EVENT_TYPE(event) == GST_EVENT_EOS)) {
-      update = TRUE;
+    if (GST_EVENT_TYPE(event) == GST_EVENT_EOS) {
+      gst_element_set_state (GST_ELEMENT (statistics), GST_STATE_PAUSED);
+      if (statistics->update_on_eos) {
+        update = TRUE;
+      }
     }
     if (statistics->update_freq.events) {
       statistics->update_count.events += 1;
@@ -317,7 +318,9 @@
 
   if (update) {
     if (statistics->update) {
+      GST_DEBUG_ELEMENT (GST_CAT_DATAFLOW, statistics, "pre update emit\n");
       g_signal_emit (G_OBJECT (statistics), gst_statistics_signals[SIGNAL_UPDATE], 0);
+      GST_DEBUG_ELEMENT (GST_CAT_DATAFLOW, statistics, "post update emit\n");
     }
     if (!statistics->silent) {
       gst_statistics_print(statistics);





More information about the Gstreamer-commits mailing list