Exemplo n.º 1
0
    def getMBTag(self, track):
        """Fuzzily match current value in tag using MusicBrainz."""

        tag = tagging.getTag(track.filePath, self.fieldName)
        if not tag:
            log("Unable to match because current tag is empty.")
            result = None           
        else:
            result = mb.askMB(self.fieldName, tag, track)
        
        return result
Exemplo n.º 2
0
    def getMBTagKnownData(self, track):
        """Query MB using known data and the current tag."""

        titleTag = tagging.getTag(track.filePath, "title")

        if not titleTag:
            log("The current tag is empty.")
            result = None

        elif not ("release" in track.metadata and "tracknumber" in track.metadata):
            log("The currently known data does not include the fields we need --" " the release and track number.")
            result = None

        else:
            # Here we're searching for a track.
            result = mb.askMB(self.fieldName, titleTag, track, ["release", "tracknumber", "artist"])

        return result
Exemplo n.º 3
0
    def getMBTagKnownData(self, track):
        """Query MB using known data and the current tag."""

        artistTag = tagging.getTag(track.filePath, "artist")

        if not artistTag:
            log("The current tag is empty.")
            result = None

        elif not "release" in track.metadata:
            log("The currently known data does not include the field we need --"
                " the release.")
            result = None

        else:
            result = mb.askMB(self.fieldName, artistTag, track,
                              ["release", "date", "tracktotal"])

        return result
Exemplo n.º 4
0
 def getMBTagKnownData(self, track):
     """Query MB using known data and the current tag."""
     
     artistTag = tagging.getTag(track.filePath, "artist")
     
     if not artistTag:
         log("The current tag is empty.")
         result = None
         
     elif not "release" in track.metadata:
         log("The currently known data does not include the field we need --"
             " the release.")
         result = None
         
     else:
         result = mb.askMB(self.fieldName, artistTag, track, 
                           ["release", "date", "tracktotal"])
     
     return result
Exemplo n.º 5
0
    def getMBTagKnownData(self, track):
        """Query MB using known data and the current tag."""

        releaseTag = tagging.getTag(track.filePath, "release")

        if not releaseTag:
            log("The current tag is empty.")
            result = None

        elif not ("artist" in track.metadata or "date" in track.metadata
                  or "title" in track.metadata):
            log("The currently known data does not include the fields we need --"
                " the artist or the date or the track titles.")
            result = None

        else:
            result = mb.askMB(self.fieldName, releaseTag, track,
                              ["artist", "date", "tracks", "tracktotal"])

        return result
Exemplo n.º 6
0
 def getMBTagKnownData(self, track):
     """Query MB using known data and the current tag."""
             
     releaseTag = tagging.getTag(track.filePath, "release")
     
     if not releaseTag:
         log("The current tag is empty.")
         result = None
         
     elif not ("artist" in track.metadata or
               "date" in track.metadata or
               "title" in track.metadata):
         log("The currently known data does not include the fields we need --"
             " the artist or the date or the track titles.")
         result = None
         
     else:
         result = mb.askMB(self.fieldName, releaseTag, track, 
                           ["artist", "date", "tracks", "tracktotal"])
     
     return result
Exemplo n.º 7
0
    def getMBTagKnownData(self, track):
        """Query MB using known data and the current tag."""

        tracknumberTag = tagging.getTag(track.filePath, "tracknumber")

        if not tracknumberTag:
            log("The current tag is empty.")
            result = None

        elif not "title" in track.metadata:
            log("The currently known data does not include the fields we need --"
                " the track title.")
            result = None

        else:
            result = mb.askMB(self.fieldName, tracknumberTag, track,
                              ["title", "artist", "release", "tracknumber"])
            if result:
                result = result.zfill(2)

        return result
Exemplo n.º 8
0
    def getMBTagKnownData(self, track):
        """Query MB using known data and the current tag."""

        titleTag = tagging.getTag(track.filePath, "title")

        if not titleTag:
            log("The current tag is empty.")
            result = None

        elif not ("release" in track.metadata
                  and "tracknumber" in track.metadata):
            log("The currently known data does not include the fields we need --"
                " the release and track number.")
            result = None

        else:
            # Here we're searching for a track.
            result = mb.askMB(self.fieldName, titleTag, track,
                              ["release", "tracknumber", "artist"])

        return result
Exemplo n.º 9
0
    def getMBTagKnownData(self, track):
        """Query MB using known data and the current tag."""
        
        tracknumberTag = tagging.getTag(track.filePath, "tracknumber")

        if not tracknumberTag:
            log("The current tag is empty.")
            result = None
            
        elif not "title" in track.metadata:
            log("The currently known data does not include the fields we need --"
                " the track title.")
            result = None
            
        else:
            result = mb.askMB(self.fieldName, tracknumberTag, track, 
                              ["title", "artist", "release", "tracknumber"])
            if result:
                result = result.zfill(2)
        
        return result
Exemplo n.º 10
0
 def getTag(self, track):
     """Return the current tag."""
     
     return tagging.getTag(track.filePath, self.fieldName) or None