Ticket #123: frameworkd_Milestone2_gstreamer-decodebin-ringtone_20080906-gismo.diff
| File frameworkd_Milestone2_gstreamer-decodebin-ringtone_20080906-gismo.diff, 1.6 KB (added by luca@…, 4 years ago) |
|---|
-
receiver.py
old new 154 154 self.player = pipeline = gst.Pipeline( "oeventd-pipeline" ) 155 155 filesrc = gst.element_factory_make( "filesrc", "source" ) 156 156 pipeline.add( filesrc ) 157 decoder = gst.element_factory_make( "siddec", "decoder" ) 157 decoder = gst.element_factory_make( "decodebin", "decoder" ) 158 decoder.connect( "new-decoded-pad", self.OnDynamicPad ) 158 159 pipeline.add( decoder ) 160 self.converter = gst.element_factory_make( "audioconvert", "converter" ) 161 pipeline.add( self.converter ) 159 162 sink = gst.element_factory_make( "alsasink", "sink" ) 160 163 pipeline.add( sink ) 161 164 filesrc.link( decoder ) 162 decoder.link( sink )165 self.converter.link( sink ) 163 166 bus = self.player.get_bus() 164 167 bus.add_signal_watch() 165 168 bus.connect( "message", self._onMessage ) 166 filesrc.set_property( "location", "/ usr/share/sounds/Arkanoid_PSID.sid" )169 filesrc.set_property( "location", "/root/Wes_Makepeace_-_War_Is_Hell.mp3" ) 167 170 pipeline.set_state(gst.STATE_PLAYING) 168 171 logger.info( 'playing ringtone' ) 169 172 self.ringing = True … … 183 186 else: 184 187 self._stop() 185 188 189 def OnDynamicPad( self, dbin, pad, islast ): 190 pad.link( self.converter.get_pad( "sink" ) ) 191 186 192 #----------------------------------------------------------------------------# 187 193 def factory( prefix, controller ): 188 194 #----------------------------------------------------------------------------#
