1
2
3
4
5
6
7
8
9
10
11
12 import os
13 import dbus
14 from GenericPlayer import GenericAPI
15 import urllib
16 from urlparse import urlparse
17
19 __name__ = 'Songbird'
20 __version__ = '0.1'
21 __author__ = 'Whise'
22 __desc__ = 'API to the Songbird Music Player'
23
24 ns = "org.mozilla.songbird"
25 playerAPI = None
26 shellAPI = None
27
28 callback_fn = None
29
30
31
34
36 if self.ns in dbus_iface.ListNames(): return True
37 else: return False
38
40 proxy_obj1 = self.session_bus.get_object(self.ns, '/org/mozilla/songbird')
41
42 self.playerAPI = dbus.Interface(proxy_obj1, self.ns)
43
44 print self.playerAPI.getStatus()
46 try:
47 return self.playerAPI.getTitle()
48 except:
49 return ''
51 try:
52 return self.playerAPI.getAlbum()
53 except:
54 return ''
55
57 try:
58 return self.playerAPI.getArtist()
59 except:
60 return ''
61
62
63
64
66
67
68 coverFile = os.environ["HOME"] + "/.quodlibet/current.cover"
69 if os.path.isfile(coverFile):
70 return coverFile
71 else:
72 current = os.environ["HOME"] + "/.quodlibet/current"
73 f = open(current, "r")
74 tmp = f.readlines(200)
75 f.close()
76 for line in tmp:
77 if line.startswith('~filename'):
78 t = line.replace('~filename=','')
79 t = t.split('/')
80 coverFile = ''
81 for l in t:
82 if l.find('.') == -1:
83 coverFile = coverFile + l +'/'
84 coverFilefinal = coverFile + 'Folder.jpg'
85 if os.path.isfile(coverFilefinal):
86 return coverFilefinal
87 else:
88 coverFilefinal = coverFile + 'folder.jpg'
89 if os.path.isfile(coverFilefinal):
90 return coverFilefinal
91
92 else:
93 return ''
94
96 if self.get_title() != '': return True
97 else: return False
98
101
104
107
114
115
116
117
118
119
120
121
122
123
126