All pastes #19005 Raw Edit

make gpe-nmf 0.21 remember the volume setting between tracks

public text v1 · immutable
#19005 ·published 2005-08-01 19:05 UTC
rendered paste body
diff -Nurd gpe-nmf-0.21.orig/backend/gstplayer.c gpe-nmf-0.21/backend/gstplayer.c
--- gpe-nmf-0.21.orig/backend/gstplayer.c	2005-04-20 21:50:41 +0200
+++ gpe-nmf-0.21/backend/gstplayer.c	2005-08-01 20:59:08 +0200
@@ -41,6 +41,8 @@
   p->source_elem = g_strdup (src);
   p->sink_elem = g_strdup (sink);
 
+  p->volume_value = 256;
+
   return p;
 }
 
@@ -321,6 +323,8 @@
 
   gst_bin_add_many (GST_BIN (p->thread), p->filesrc, p->decoder, p->volume, p->audiosink, NULL);
   gst_element_link_many (p->filesrc, p->decoder, p->volume, p->audiosink, NULL );
+
+  player_set_volume (p, p->volume_value);
     
   return TRUE;
 }
@@ -441,6 +445,8 @@
 {
   GValue value;
 
+  p->volume_value = v;
+
   memset (&value, 0, sizeof (value));
   g_value_init (&value, G_TYPE_FLOAT);
   g_value_set_float (&value, (float)v / 256);
diff -Nurd gpe-nmf-0.21.orig/backend/player.h gpe-nmf-0.21/backend/player.h
--- gpe-nmf-0.21.orig/backend/player.h	2005-04-19 22:59:18 +0200
+++ gpe-nmf-0.21/backend/player.h	2005-08-01 20:44:24 +0200
@@ -43,6 +43,8 @@
 
   char *source_elem;
   char *sink_elem;
+
+  int volume_value;
 };
 
 typedef struct player *player_t;