summaryrefslogtreecommitdiffstats
path: root/ext
diff options
context:
space:
mode:
Diffstat (limited to 'ext')
-rw-r--r--ext/smoothwave/demo-osssrc.c26
-rw-r--r--ext/smoothwave/gstsmoothwave.c26
2 files changed, 28 insertions, 24 deletions
diff --git a/ext/smoothwave/demo-osssrc.c b/ext/smoothwave/demo-osssrc.c
index 4807a3a4..457900d7 100644
--- a/ext/smoothwave/demo-osssrc.c
+++ b/ext/smoothwave/demo-osssrc.c
@@ -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;
}
diff --git a/ext/smoothwave/gstsmoothwave.c b/ext/smoothwave/gstsmoothwave.c
index e6a55fcd..6b96dd9e 100644
--- a/ext/smoothwave/gstsmoothwave.c
+++ b/ext/smoothwave/gstsmoothwave.c
@@ -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"); */