ext/Makefile.am: add rules to build shout2send (was removed by accident when this...
authorStéphane Loeuillet <gstreamer@leroutier.net>
Mon, 24 May 2004 12:08:34 +0000 (12:08 +0000)
committerStéphane Loeuillet <gstreamer@leroutier.net>
Mon, 24 May 2004 12:08:34 +0000 (12:08 +0000)
Original commit message from CVS:

* ext/Makefile.am:
add rules to build shout2send (was removed by accident
when this module was no more marked experimental/broken)

* ext/shout2/gstshout2.c:
* ext/shout2/gstshout2.h:
adding a "connection problem" signal to shout2send
(fixes #142954)

ChangeLog
common
ext/Makefile.am
ext/shout2/gstshout2.c
ext/shout2/gstshout2.h

index f56e01d..ba7e86b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2004-05-24  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
+
+       * ext/Makefile.am:
+         add rules to build shout2send (was removed by accident
+         when this module was no more marked experimental/broken)
+
+2004-05-24  Zaheer Abbas Merali <zaheerabbas@merali.org>
+
+       * ext/shout2/gstshout2.c:
+       * ext/shout2/gstshout2.h:
+         adding a "connection problem" signal to shout2send
+         (fixes #142954)
+
 2004-05-21  Thomas Vander Stichele  <thomas at apestaart dot org>
 
        * ext/kio/kioreceiver.cpp:
diff --git a/common b/common
index 5f51018..85747ad 160000 (submodule)
--- a/common
+++ b/common
@@ -1 +1 @@
-Subproject commit 5f51018de093a26d447de03e1ec6dd0377fc4c77
+Subproject commit 85747ad7d18dfc697845a457631f3877fda46906
index 821f87e..3bf26e9 100644 (file)
@@ -262,18 +262,24 @@ else
 SDL_DIR=
 endif
 
-if USE_SIDPLAY
-SIDPLAY_DIR=sidplay
-else
-SIDDPLAY_DIR=
-endif
-
 if USE_SHOUT
 SHOUT_DIR=shout
 else
 SHOUT_DIR=
 endif
 
+if USE_SHOUT2
+SHOUT2_DIR=shout2
+else
+SHOUT2_DIR=
+endif
+
+if USE_SIDPLAY
+SIDPLAY_DIR=sidplay
+else
+SIDDPLAY_DIR=
+endif
+
 if USE_SMOOTHWAVE
 SMOOTHWAVE_DIR=smoothwave
 else
@@ -385,6 +391,7 @@ SUBDIRS=\
        $(RAW1394_DIR) \
        $(SDL_DIR) \
        $(SHOUT_DIR) \
+       $(SHOUT2_DIR) \
        $(SIDPLAY_DIR) \
        $(SMOOTHWAVE_DIR) \
        $(SNAPSHOT_DIR) \
index efc1077..7e643cf 100644 (file)
@@ -38,6 +38,7 @@ unsigned int audio_format = 100;
 enum
 {
   /* FILL ME */
+  SIGNAL_CONNECTION_PROBLEM,
   LAST_SIGNAL
 };
 
@@ -82,7 +83,7 @@ static GstElementStateReturn gst_shout2send_change_state (GstElement * element);
 
 static GstElementClass *parent_class = NULL;
 
-/*static guint gst_shout2send_signals[LAST_SIGNAL] = { 0 }; */
+static guint gst_shout2send_signals[LAST_SIGNAL] = { 0, 0 };
 
 #define GST_TYPE_SHOUT_PROTOCOL (gst_shout2send_protocol_get_type())
 static GType
@@ -174,7 +175,12 @@ gst_shout2send_class_init (GstShout2sendClass * klass)
   g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_URL, g_param_spec_string ("url", "url", "url", NULL, G_PARAM_READWRITE));        /* CHECKME */
 
 
-
+  /* signals */
+  gst_shout2send_signals[SIGNAL_CONNECTION_PROBLEM] =
+      g_signal_new ("connection-problem", G_TYPE_FROM_CLASS (klass),
+      G_SIGNAL_RUN_CLEANUP, G_STRUCT_OFFSET (GstShout2sendClass,
+          connection_problem), NULL, NULL, g_cclosure_marshal_VOID__INT,
+      G_TYPE_NONE, 1, G_TYPE_INT);
   gobject_class->set_property = gst_shout2send_set_property;
   gobject_class->get_property = gst_shout2send_get_property;
 
@@ -222,7 +228,10 @@ gst_shout2send_chain (GstPad * pad, GstData * _data)
   ret = shout_send (shout2send->conn, GST_BUFFER_DATA (buf),
       GST_BUFFER_SIZE (buf));
   if (ret != SHOUTERR_SUCCESS) {
-    g_warning ("send error: %s...\n", shout_get_error (shout2send->conn));
+    GST_WARNING ("send error: %s...\n", shout_get_error (shout2send->conn));
+    g_signal_emit (G_OBJECT (shout2send),
+        gst_shout2send_signals[SIGNAL_CONNECTION_PROBLEM], 0,
+        shout_get_errno (shout2send->conn));
   }
 
   shout_sync (shout2send->conn);
index 81a2f91..128ce8e 100644 (file)
@@ -64,6 +64,9 @@ struct _GstShout2send {
 typedef struct _GstShout2sendClass GstShout2sendClass;
 struct _GstShout2sendClass {
   GstElementClass parent_class;
+
+  /* signal callbacks */
+  void (*connection_problem) (GstElement *element,guint errno);
 };
 
 /* Standard macros for defining types for this element.  */