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;