def metadata(self, filename) : debug("Considering "+filename) mi = MusicInfo() try : lookup = MbzTrackLookup(filename) mbzuri = lookup.getMbzTrackURI() mbzconvert = MbzURIConverter(mbzuri) af = AudioFile(urlencode(os.path.basename(filename))) mbz = Track(mbzconvert.getURI()) mbz.available_as = af mi.add(af); mi.add(mbz) self.succeeded+=1 except MbzLookupException, e: error(" - " + e.message)
def mbzQuery(self): query = CachedMBZQuery() debug(' - Trying to guess an ID for track \"' + str(self.title) + '\", artist \"' + str(self.artist) + '\", release \"' + str(self.album) + '\"') artist_filter = ws.ArtistFilter(name=str(self.artist)) try: artists = query.getArtists(filter=artist_filter) artist_mapping = [] release_mapping = [] track_mapping = [] if (self.album == None): debug("No release information, dropping release lookup") for artist in artists: artist_id = (MbzURIConverter(artist.artist.id)).getId() artist_mapping.append((artist.score, artist)) if (self.album != None): release_filter = ws.ReleaseFilter(query='(release:' + str(self.album) + ') ' + ' AND arid:' + artist_id) releases = query.getReleases(release_filter) for release in releases: release_id = (MbzURIConverter( release.release.id)).getId() release_mapping.append( ((release.score + artist.score) / 2, release)) track_filter = ws.TrackFilter( query='(track:' + str(self.title) + ') ' + ' AND reid:' + release_id) tracks = query.getTracks(track_filter) for track in tracks: track_mapping.append( ((track.score + release.score + artist.score) / 3, track)) else: track_filter = ws.TrackFilter(query='(track:' + str(self.title) + ') ' + ' AND arid:' + artist_id) tracks = query.getTracks(track_filter) for track in tracks: track_mapping.append( ((track.score + artist.score) / 2, track)) except ResponseError, e: raise MbzLookupException('Musicbrainz response error')
def metadata(self, filename): debug("Considering " + filename) mi = MusicInfo() try: lookup = MbzTrackLookup(filename) mbzuri = lookup.getMbzTrackURI() mbzconvert = MbzURIConverter(mbzuri) af = AudioFile(urlencode(os.path.basename(filename))) mbz = Track(mbzconvert.getURI()) mbz.available_as = af mi.add(af) mi.add(mbz) self.succeeded += 1 except MbzLookupException, e: error(" - " + e.message)
def metadata(self, filename) : debug("Considering "+filename) mi = MusicInfo() try : lookup = MbzTrackLookup(filename) mbzuri = lookup.getMbzTrackURI() mbzconvert = MbzURIConverter(mbzuri) af = AudioFile(urlencode(os.path.basename(filename))) # there is some bug with my os.path.basename settings? zitgisturi=mbzconvert.getURI() mbid=mbzconvert.getId() mbz = Track(zitgisturi) mbz.available_as = af #to link the musicbrainz ID with the local album collection mi.add(af); mi.add(mbz) self.succeeded+=1 except MbzLookupException, e: error(" - " + e.message)
def metadata(self, filename, true_md=None, just_URI=False) : debug("Considering "+filename) mi = MusicInfo() try : lookup = MbzTrackLookup(filename,true_md) mbzuri = lookup.getMbzTrackURI() mbzconvert = MbzURIConverter(mbzuri) if just_URI: return mbzconvert.getURI() if (filename.startswith("http://")): af = AudioFile(filename) else: af = AudioFile(urlencode(os.path.basename(filename))) mbz = Track(mbzconvert.getURI()) mbz.available_as = af mi.add(af); mi.add(mbz) self.succeeded+=1 except MbzLookupException, e: error(" - " + e.message)
def metadata(self, filename): debug("Considering " + filename) mi = MusicInfo() try: lookup = MbzTrackLookup(filename) mbzuri = lookup.getMbzTrackURI() mbzconvert = MbzURIConverter(mbzuri) af = AudioFile( urlencode(os.path.basename(filename)) ) # there is some bug with my os.path.basename settings? zitgisturi = mbzconvert.getURI() mbid = mbzconvert.getId() mbz = Track(zitgisturi) mbz.available_as = af #to link the musicbrainz ID with the local album collection mi.add(af) mi.add(mbz) self.succeeded += 1 except MbzLookupException, e: error(" - " + e.message)
print 'python trackuri.py <path of track> ([xml|n3])' print print ' - NOTE: without specified RDF format, the program will' print ' write in the Id3v2 UFID header the URI of the ' print ' corresponding manifestation' print sys.exit() if len(sys.argv)!=2 and len(sys.argv)!=3 : usage() elif len(sys.argv)==2 : try : lookup = MbzTrackLookup(sys.argv[1]) mbzuri = lookup.getMbzTrackURI() mbzconvert = MbzURIConverter(mbzuri) print print ' - ID3 tags' print print 'Artist: ', lookup.artist print 'Title: ', lookup.title print 'Album: ', lookup.album print print print ' - Zitgist URI' print print mbzconvert.getURI() print