3737 mp3play = None
3838
3939
40- # Qt-Phonon
41- try :
42- from PyQt4 .phonon import Phonon
43- except ImportError :
44- Phonon = None
45-
46-
4740class Backend (object ):
4841 __metaclass__ = abc .ABCMeta
4942 def __init__ (self , parent , temp_dir ):
@@ -179,46 +172,6 @@ def close(self):
179172 self .stop ()
180173
181174
182- class PhononBackend (Backend ):
183- def __init__ (self , parent , temp_dir ):
184- self ._player = Phonon .createPlayer (Phonon .NoCategory )
185- self ._player .finished .connect (self ._onFinished )
186- self ._alive = set ()
187-
188- def _onFinished (self ):
189- self ._clean_tmp ()
190-
191- def _play (self ):
192- source = Phonon .MediaSource (self ._path )
193- self ._player .setCurrentSource (source )
194- self ._player .play ()
195-
196- def play (self , data ):
197- self ._player .stop ()
198- self ._clean_tmp ()
199- with NamedTemporaryFile (mode = 'w+b' , prefix = '' ,
200- suffix = '.tmp.mp3' , delete = False ) as f :
201- f .write (data )
202- self ._path = f .name
203- self ._alive .add (f .name )
204- QTimer .singleShot (0 , self ._play )
205-
206- def _clean_tmp (self ):
207- removed = []
208- for path in self ._alive :
209- try :
210- os .unlnk (path )
211- except :
212- pass
213- else :
214- removed .append (path )
215- self ._alive .difference_update (removed )
216-
217- def close (self ):
218- self ._player .stop ()
219- self ._clean_tmp ()
220-
221-
222175def create_soundplayer (parent , temp_dir ):
223176 backends = []
224177 if AppKit :
@@ -227,8 +180,6 @@ def create_soundplayer(parent, temp_dir):
227180 backends .append (WinMCIBackend )
228181 if gst :
229182 backends .append (GstreamerBackend )
230- if Phonon :
231- backends .append (PhononBackend )
232183 backends .append (NullBackend )
233184
234185 return backends [0 ](parent , temp_dir )
0 commit comments