Fixes to make it compile without GNOME, and with a modern (>= 0.3) version of GStream...
authorDavid Schleef <ds@schleef.org>
Thu, 17 Jul 2003 04:16:42 +0000 (04:16 +0000)
committerDavid Schleef <ds@schleef.org>
Thu, 17 Jul 2003 04:16:42 +0000 (04:16 +0000)
Original commit message from CVS:
Fixes to make it compile without GNOME, and with a modern (>= 0.3)
version of GStreamer.  Now that I got it compiled, I want to delete
it.

gst/smoothwave/demo-osssrc.c
gst/smoothwave/gstsmoothwave.c

index 4807a3a..457900d 100644 (file)
@@ -1,4 +1,4 @@
-#include <gnome.h>
+#include <gtk/gtk.h>
 #include <gst/gst.h>
 
 extern gboolean _gst_plugin_spew;
@@ -13,36 +13,35 @@ int main(int argc,char *argv[]) {
   GstElement *src;
   GstElementFactory *wavefactory;
   GstElement *wave;
-
+  GtkWidget *wave_widget;
   GtkWidget *appwindow;
 
-  _gst_plugin_spew = TRUE;
-
   gst_init(&argc,&argv);
   gst_plugin_load("libsmoothwave.so");
-  gnome_init("Wave","0.0.1",argc,argv);
+  gtk_init(&argc,&argv);
 
-  bin = gst_bin_new("bin");
+  bin = gst_pipeline_new("bin");
 
-  srcfactory = gst_element_factory_find("audiosrc");
+  srcfactory = gst_element_factory_find("sinesrc");
   g_return_val_if_fail(srcfactory != NULL, -1);
   wavefactory = gst_element_factory_find("smoothwave");
   g_return_val_if_fail(wavefactory != NULL, -1);
 
   src = gst_element_factory_create(srcfactory,"src");
-  gtk_object_set(GTK_OBJECT(src),"bytes_per_read",(gulong)2048,NULL);
+  //g_object_set(G_OBJECT(src),"bytes_per_read",(gulong)2048,NULL);
   wave = gst_element_factory_create(wavefactory,"wave");
-  gtk_object_set(GTK_OBJECT(wave),"width",256,"height",100,NULL);
+  g_object_set(G_OBJECT(wave),"width",256,"height",100,NULL);
 
 
   gst_bin_add(GST_BIN(bin),GST_ELEMENT(src));
   gst_bin_add(GST_BIN(bin),GST_ELEMENT(wave));
 
-  gst_pad_connect(gst_element_get_pad(src,"src"),
+  gst_pad_link(gst_element_get_pad(src,"src"),
                   gst_element_get_pad(wave,"sink"));
 
-  appwindow = gnome_app_new("wave","Wave");
-  gnome_app_set_contents(GNOME_APP(appwindow),gst_util_get_pointer_arg(GTK_OBJECT(wave),"widget"));
+  appwindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+  g_object_get(G_OBJECT(wave),"widget",&wave_widget,NULL);
+  gtk_container_add(GTK_CONTAINER(appwindow), wave_widget);
   gtk_widget_show_all(appwindow);
 
   gst_element_set_state(GST_ELEMENT(bin),GST_STATE_READY);
@@ -55,7 +54,8 @@ int main(int argc,char *argv[]) {
   return 0;
 }
 
-gboolean idle_func(gpointer data) {
+gboolean idle_func(gpointer data)
+{
   gst_bin_iterate(GST_BIN(data));
   return TRUE;
 }
index e6a55fc..6b96dd9 100644 (file)
@@ -162,14 +162,16 @@ gst_smoothwave_chain (GstPad *pad, GstBuffer *buf)
   smoothwave = GST_SMOOTHWAVE(GST_OBJECT_PARENT (pad));
 
   /* first deal with audio metadata */
-/*  if (buf->meta) { */
-/*    if (smoothwave->meta != NULL) { */
-/*      /* FIXME: need to unref the old metadata so it goes away */ */
-/*    } */
-/*    /* we just make a copy of the pointer */ */
-/*    smoothwave->meta = (MetaAudioRaw *)(buf->meta); */
-/*    /* FIXME: now we have to ref the metadata so it doesn't go away */ */
-/*  } */
+#if 0
+  if (buf->meta) {
+    if (smoothwave->meta != NULL) {
+      /* FIXME: need to unref the old metadata so it goes away */
+    }
+    /* we just make a copy of the pointer */
+    smoothwave->meta = (MetaAudioRaw *)(buf->meta);
+    /* FIXME: now we have to ref the metadata so it doesn't go away */
+  }
+#endif
 
 /*  g_return_if_fail(smoothwave->meta != NULL); */
 
@@ -192,10 +194,12 @@ gst_smoothwave_chain (GstPad *pad, GstBuffer *buf)
 
   ptr = (guint32 *)smoothwave->imagebuffer;
   for (i=0;i<(smoothwave->width*smoothwave->height)/4;i++) {
-    if (*ptr)
-      *(ptr++) -= ((*ptr & 0xf0f0f0f0ul) >> 4) + ((*ptr & 0xe0e0e0e0ul) >> 5);
-    else
+    if (*ptr){
+      *ptr -= ((*ptr & 0xf0f0f0f0ul) >> 4) + ((*ptr & 0xe0e0e0e0ul) >> 5);
       ptr++;
+    }else{
+      ptr++;
+    }
   }
 
 /*  GST_DEBUG ("drawing"); */