--- konversation/scripts/media~ 2006-10-06 18:43:29.000000000 +0200 +++ konversation/scripts/media 2006-12-23 12:34:34.000000000 +0100 @@ -44,7 +44,7 @@ ## If you add a new player, you must add it here or it won't get checked when in audio-only or video-only modes. playerRankings= { 'video' :['kaffeine', 'noatun', 'kdetv'], - 'audio' :['Amarok', 'JuK', 'Noatun', 'Kaffeine', 'kscd', 'XMMS', 'Yammi'] + 'audio' :['Amarok', 'JuK', 'Noatun', 'Kaffeine', 'kscd', 'Audacious','XMMS', 'Yammi'] } ## Title, album and artist fields to be quoted depending on contents @@ -265,6 +265,20 @@ except ImportError: XmmsPlayer=Player +class AudaciousPlayer(Player): + def __init__(self, display_name): + Player.__init__(self, display_name) + + def isRunning(self): + self.running = not os.system('audtool current-song') + return self.running + + def getData(self): + if self.isRunning() and not os.system('audtool playback-playing'): + # get the title of the currently playing track + return (self.reEncodeString(os.popen('audtool current-song').read().strip()),'','') + + def playing(playerList, mode=None): for i in playerList: s=i.get(mode) @@ -324,7 +338,7 @@ DCOPPlayer("Noatun",'noatun',"Noatun title",playerType='audio, video'), DCOPPlayer("Kaffeine","kaffeine","KaffeineIface title","KaffeineIface artist","KaffeineIface album",playerType='video, audio'), DCOPPlayer("KsCD","kscd","CDPlayer currentTrackTitle","CDPlayer currentArtist","CDPlayer currentAlbum"), -XmmsPlayer('XMMS'), +AudaciousPlayer('Audacious'), XmmsPlayer('XMMS'), DCOPPlayer("Yammi","yammi","YammiPlayer songTitle","YammiPlayer songArtist","YammiPlayer songAlbum"), DCOPPlayer("kdetv","kdetv","KdetvIface channelName",playerType='video'), ]