diff -uNr --exclude='*.orig' --exclude='*.rej' nautilus-2.5.8/configure.in nautilus-2.5.8.patched/configure.in
--- nautilus-2.5.8/configure.in	2004-02-24 14:32:49.000000000 +0100
+++ nautilus-2.5.8.patched/configure.in	2004-03-02 18:08:31.100016816 +0100
@@ -21,6 +21,7 @@
 XML_REQUIRED=2.4.7
 STARTUP_NOTIFICATION_REQUIRED=0.5
 EXIF_REQUIRED=0.5.12
+GSTREAMER_REQUIRED=0.6.0
 
 AC_SUBST(ART_REQUIRED)
 AC_SUBST(BONOBO_ACTIVATION_REQUIRED)
@@ -40,6 +41,7 @@
 AC_SUBST(RSVG_REQUIRED)
 AC_SUBST(XML_REQUIRED)
 AC_SUBST(STARTUP_NOTIFICATION_REQUIRED)
+AC_SUBST(GSTREAMER_REQUIRED)
 
 dnl ===========================================================================
 
@@ -257,6 +259,53 @@
 
 dnl ==========================================================================
 
+dnl gstreamer checking
+
+AC_ARG_ENABLE(gstreamer,
+		AC_HELP_STRING([--enable-gstreamer],[use GStreamer for sound preview]),
+	[case "${enableval}" in
+	yes) ENABLE_GST=yes ;;
+        no)  ENABLE_GST=no ;;
+	*) AC_MSG_ERROR(bad value ${enableval} for --enable-gstreamer) ;;
+	esac],
+	[ENABLE_GST=no]) dnl Default value
+
+AC_MSG_CHECKING(for backend libraries)
+
+if test x$ENABLE_GST = xyes; then
+
+dnl Now we're ready to ask for gstreamer libs and cflags
+dnl And we can also ask for the right version of gstreamer
+	HAVE_GSTREAMER=no
+
+dnl start with 0.7
+	GST_MAJORMINOR=0.8
+	PKG_CHECK_MODULES(GST, \
+			gstreamer-gconf-$GST_MAJORMINOR >= $GSTREAMER_REQUIRED,
+			HAVE_GSTREAMER=yes,HAVE_GSTREAMER=no)
+
+dnl try 0.6
+	if test "x$HAVE_GSTREAMER" = "xno"; then
+		GST_MAJORMINOR=0.6
+		PKG_CHECK_MODULES(GST, \
+			gstreamer-gconf-$GST_MAJORMINOR >= $GSTREAMER_REQUIRED,
+			HAVE_GSTREAMER=yes,HAVE_GSTREAMER=no)
+	fi
+
+dnl Give error and exit if we don't have gstreamer
+	if test "x$HAVE_GSTREAMER" = "xno"; then
+		AC_MSG_ERROR(you need gstreamer development packages installed !)
+	fi
+
+	MM="gstreamer-libs-$GST_MAJORMINOR >= $GSTREAMER_REQUIRED gstreamer-gconf-$GST_MAJORMINOR >= $GSTREAMER_REQUIRED"
+
+	AC_MSG_RESULT(GStreamer)
+	AC_DEFINE(USE_GST_AUDIO_PREVIEW,1,[Define if you want to use the GStreamer media framework])
+
+fi
+
+dnl ==========================================================================
+
 dnl Turn on the additional warnings last, so -Werror doesn't affect other tests.
 
 AC_ARG_ENABLE(more-warnings,
@@ -333,7 +382,7 @@
 AC_SUBST(LIBNAUTILUS_EXTENSION_LIBS)
 
 dnl core nautilus (must list bonobo-activation and libbonobo because idldir does not respect "requires")
-CORE_MODULES="eel-2.0 librsvg-2.0 bonobo-activation-2.0 libbonobo-2.0 libbonoboui-2.0 esound gnome-desktop-2.0 $EXTRA_CORE_MODULES"
+CORE_MODULES="eel-2.0 librsvg-2.0 bonobo-activation-2.0 libbonobo-2.0 libbonoboui-2.0 esound gnome-desktop-2.0 $MM $EXTRA_CORE_MODULES"
 CORE_CFLAGS="`$PKG_CONFIG --cflags $CORE_MODULES` $x_cflags"
 AC_SUBST(CORE_CFLAGS)
 CORE_LIBS="`$PKG_CONFIG --libs $CORE_MODULES` $CDDA_LIBS $LIBJPEG $x_libs"
diff -uNr --exclude='*.orig' --exclude='*.rej' nautilus-2.5.8/src/file-manager/fm-icon-view.c nautilus-2.5.8.patched/src/file-manager/fm-icon-view.c
--- nautilus-2.5.8/src/file-manager/fm-icon-view.c	2004-02-13 11:50:10.000000000 +0100
+++ nautilus-2.5.8.patched/src/file-manager/fm-icon-view.c	2004-03-02 18:12:12.802312944 +0100
@@ -78,8 +78,13 @@
 #include 
 #include 
 
+#ifdef USE_GST_AUDIO_PREVIEW
+#include <gst/gst.h>
+#include <gst/gconf/gconf.h>
+#else
 #define USE_OLD_AUDIO_PREVIEW 1
 #define READ_CHUNK_SIZE 16384
+#endif /* USE_GST_AUDIO_PREVIEW */
 
 /* Paths to use when creating & referring to Bonobo menu items */
 #define MENU_PATH_STRETCH_ICON 			"/menu/Edit/Edit Items Placeholder/Stretch"
@@ -193,6 +198,10 @@
 static int preview_sound_auto_value;
 static gboolean gnome_esd_enab
