Exemplo n.º 1
0
    def tag(self, files, release,
            genre=None, strip_existing_tags=False, progress=None):

        files_and_tracks = zip(files, release.tracks)
        for file, track in files_and_tracks:

            if strip_existing_tags:
                id3.delete(file)
                apev2.delete(file)

            try:
                tag = id3.ID3(file)
            except id3.ID3NoHeaderError:
                tag = id3.ID3()

            tag.add(id3.TPE1(3, track.artist.name))
            tag.add(id3.TALB(3, track.release.title))
            tag.add(id3.TIT2(3, track.title))
            tag.add(id3.TDRC(3, track.release.earliestReleaseDate))
            tag.add(id3.TRCK(3, track.number_str()))

            if track.release.album_artist is not None:
                tag.add(id3.TPE2(3, track.release.album_artist))

            discset = track.release.discset
            if discset:
                disc_num = discset.number_str()

                tag.add(id3.TPOS(3, disc_num))
                if discset.desc:
                    tag.delall('COMM')
                    tag.add(id3.COMM(3, text=discset.desc,
                                     desc='', lang='eng'))

            if genre is not None:
                tag.add(id3.TCON(3, genre))

            tag.add(id3.UFID(owner='http://musicbrainz.org', data=track.uuid))

            tag.save(file)
            if progress is not None:
                progress(file, track)
Exemplo n.º 2
0
 def test_module_delete_empty(self):
     from mutagen.apev2 import delete
     delete(os.path.join("tests", "data", "emptyfile.mp3"))
Exemplo n.º 3
0
 def test_module_delete_empty(self):
     from mutagen.apev2 import delete
     delete(os.path.join("tests", "data", "emptyfile.mp3"))
Exemplo n.º 4
0
 def test_module_delete_empty(self):
     from mutagen.apev2 import delete
     delete(os.path.join(DATA_DIR, "emptyfile.mp3"))
Exemplo n.º 5
0
 def test_module_delete_empty(self):
     from mutagen.apev2 import delete
     delete(os.path.join(DATA_DIR, "emptyfile.mp3"))