from DiscMetadata import DiscMetadata, TrackMetadata import logging from musicbrainz2 import disc, model import musicbrainz2.webservice as ws from musicbrainz2.utils import extractUuid from tunepimp import tunepimp tp = tunepimp.tunepimp("MetaRipper", "0.0.1") import re DISC_NUM_REGEX = re.compile(r".*\s+\([Dd]isc (\d+)") def searchMbForDisc(device): d = disc.readDisc(device) cdid = d.id numTracks = d.getLastTrackNum() toc = {} toc["first_track"] = 1 toc["num_tracks"] = numTracks toc["length"] = d.sectors toc["offsets"] = [x for (x, y) in d.getTracks()] logging.debug("toc: %s" % str(toc)) logging.info("querying musicbrainz.org to see if this cd is on there...") q = ws.Query() rf = ws.ReleaseFilter(discId=cdid) releases = [result.getRelease() for result in q.getReleases(rf)] numFound = len(releases)
from DiscMetadata import DiscMetadata, TrackMetadata import logging from musicbrainz2 import disc, model import musicbrainz2.webservice as ws from musicbrainz2.utils import extractUuid from tunepimp import tunepimp tp = tunepimp.tunepimp('MetaRipper', '0.0.1') import re DISC_NUM_REGEX = re.compile(r".*\s+\([Dd]isc (\d+)") def searchMbForDisc(device): d = disc.readDisc(device) cdid = d.id numTracks = d.getLastTrackNum() toc = {} toc["first_track"] = 1 toc["num_tracks"] = numTracks toc["length"] = d.sectors toc["offsets"] = [x for (x, y) in d.getTracks()] logging.debug("toc: %s" % str(toc)) logging.info("querying musicbrainz.org to see if this cd is on there...") q = ws.Query() rf = ws.ReleaseFilter(discId=cdid) releases = [result.getRelease() for result in q.getReleases(rf)] numFound = len(releases) if numFound == 0:
def __init__(self, directory): self.directory = directory #self.tp = tunepimp.tunepimp(self.client, self.version, tunepimp.tpThreadNone) self.tp = tunepimp.tunepimp(self.client, self.version)
import sys from os import walk import os.path from tunepimp import tunepimp from musicbrainz2.utils import extractUuid from musicbrainz2.webservice import WebService, Query, WebServiceError, TrackFilter server = 'musicbrainz.org' username = '******' password = '******' batchSize = 20 #encoding = 'windows-1250' encoding = 'utf-8' __version__ = '0.0.1' tp = tunepimp.tunepimp('puid_submit.py', __version__, tunepimp.tpThreadRead | tunepimp.tpThreadAnalyzer) tp.setMusicDNSClientId('80eaa76658f99dbac1c58cc06aa44779'); files = [] for arg in sys.argv[1:]: if os.path.isdir(arg): for root, dirs, files2 in walk(arg): files.extend([os.path.join(root, file) for file in files2]) elif os.path.isfile(arg): files.append(arg) toSubmit = {} for file in files: file = file.decode(encoding) fileId = tp.addFile(file, 0)