--- receiver.py.ORG	2008-08-29 18:12:40.000000000 +0200
+++ receiver.py	2008-09-06 21:15:40.000000000 +0200
@@ -154,16 +154,19 @@
         self.player = pipeline = gst.Pipeline( "oeventd-pipeline" )
         filesrc = gst.element_factory_make( "filesrc", "source" )
         pipeline.add( filesrc )
-        decoder = gst.element_factory_make( "siddec", "decoder" )
+        decoder = gst.element_factory_make( "decodebin", "decoder" )
+        decoder.connect( "new-decoded-pad", self.OnDynamicPad )
         pipeline.add( decoder )
+        self.converter = gst.element_factory_make( "audioconvert", "converter" )
+        pipeline.add( self.converter )
         sink = gst.element_factory_make( "alsasink", "sink" )
         pipeline.add( sink )
         filesrc.link( decoder )
-        decoder.link( sink )
+        self.converter.link( sink )
         bus = self.player.get_bus()
         bus.add_signal_watch()
         bus.connect( "message", self._onMessage )
-        filesrc.set_property( "location", "/usr/share/sounds/Arkanoid_PSID.sid" )
+        filesrc.set_property( "location", "/root/Wes_Makepeace_-_War_Is_Hell.mp3" )
         pipeline.set_state(gst.STATE_PLAYING)
         logger.info( 'playing ringtone' )
         self.ringing = True
@@ -183,6 +186,9 @@
             else:
                 self._stop()
 
+    def OnDynamicPad( self, dbin, pad, islast ):
+        pad.link( self.converter.get_pad( "sink" ) )
+
 #----------------------------------------------------------------------------#
 def factory( prefix, controller ):
 #----------------------------------------------------------------------------#

