6 COVERS_LOCATION = os.getenv ("HOME") + "/.cache/media-art/"
7 THUMBS_LOCATION = os.getenv ("HOME") + "/.thumbnails/cropped/"
9 def getCoverArtFileName (album):
10 """Returns the cover art's filename that is formed from the album name."""
11 print "Calculating album art for " + album
12 album = unicode (album)
13 albumString=dropInsideContent(album,"[","]" )
14 albumString=dropInsideContent(albumString,"{","}" )
15 albumString=dropInsideContent(albumString,"(",")" )
16 albumString=albumString.strip('()_{}[]!@#$^&*+=|\\/"\'?<>~`')
17 albumString=albumString.lstrip(' ')
18 albumString=albumString.rstrip(' ')
19 albumString=dropInsideContent(albumString,"{","}" )
20 albumString=albumString.lower()
21 albumString=string.replace(albumString,"\t"," ")
22 albumString=string.replace(albumString," "," ")
26 albumString=unicodedata.normalize('NFKD',albumString).encode()
27 albumString=albumString.encode()
31 print "Trying latin-1"
32 albumString=albumString.encode('latin-1', 'ignore')
33 albumString=unicodedata.normalize('NFKD',albumString).encode("ascii")
34 albumString=str(albumString)
38 print "unknown" + str(e)
39 if len(albumString)==0: albumString=" "
41 albumMD5=md5.new(albumString).hexdigest()
42 emptyMD5=md5.new(" ").hexdigest()
43 albumArt=COVERS_LOCATION + "album-" + emptyMD5 + "-" + albumMD5 + ".jpeg"
44 print "Album art:" + albumArt
48 def getCoverArtThumbFileName (album):
49 artFile = getCoverArtFileName(album)
50 thumbFile = THUMBS_LOCATION + md5.new(artFile).hexdigest()+".jpeg"
53 def get_thumb_filename_for_path (path):
54 thumbnail = THUMBS_LOCATION + md5.new (path).hexdigest () + ".jpeg"
57 def dropInsideContent(s, startMarker, endMarker):
58 startPos=s.find(startMarker)
59 endPos=s.find(endMarker)
60 if startPos>0 and endPos>0 and endPos>startPos:
61 return s[0:startPos]+s[endPos+1:len(s)]