2010-10-28 18 views
9

Al igual que la pregunta: ¿Alguien tiene un buen ejemplo del uso de la biblioteca Mutagen python ID3 para escribir archivos mp3?¿Alguien tiene buenos ejemplos del uso de mutagen para escribir archivos?

Estoy buscando, en particular, agregar información de número de disco/pista, pero también serían útiles algunos ejemplos para editar el título y el artista.

Saludos, /YGA

+1

¿Hay algún problema con el tutorial de Mutagen? http://code.google.com/p/mutagen/wiki/Tutorial – pafcu

Respuesta

5

¿Lo puedes ver los ejemplos en la web. Algunos de estos deberían ayudarte.

[Editar:]

Mutágeno tutorial es bastante bueno, por lo tanto, no añadir más información. dir() proporciona la mayoría de los detalles.

Para el ajuste de la cubierta del álbum de MP3 usando mutágeno

Incorporación de letras usando mutágeno

Un ejemplo

from mutagen.mp3 import MP3 
from mutagen.easyid3 import EasyID3 
import mutagen.id3 

filename = 'xxx.mp3' 

# Example which shows how to automatically add tags to an MP3 using EasyID3 

mp3file = MP3(filename, ID3=EasyID3) 

try: 
    mp3file.add_tags(ID3=EasyID3) 
except mutagen.id3.error: 
    print("has tags") 

mp3file['title'] = 'Newly tagged' 
mp3file.save() 
print(mp3file.pprint()) 
+0

... pero ese ejemplo solo tiene lectura. – YGA

11

Tomado de un guión que hice hace un tiempo para incrustar letras en archivos MP3:

http://code.activestate.com/recipes/577138-embed-lyrics-into-mp3-files-using-mutagen-uslt-tag/

La parte pertinente es:

from mutagen.mp3 import MP3 
from mutagen.id3 import ID3NoHeaderError 
from mutagen.id3 import ID3, TIT2, TALB, TPE1, TPE2, COMM, USLT, TCOM, TCON, TDRC 

# create ID3 tag if not present 
try: 
    tags = ID3(fname) 
except ID3NoHeaderError: 
    print "Adding ID3 header;", 
    tags = ID3() 

tags["TIT2"] = TIT2(encoding=3, text=title) 
tags["TALB"] = TALB(encoding=3, text=u'mutagen Album Name') 
tags["TPE2"] = TPE2(encoding=3, text=u'mutagen Band') 
tags["COMM"] = COMM(encoding=3, lang=u'eng', desc='desc', text=u'mutagen comment') 
tags["TPE1"] = TPE1(encoding=3, text=u'mutagen Artist') 
tags["TCOM"] = TCOM(encoding=3, text=u'mutagen Composer') 
tags["TCON"] = TCON(encoding=3, text=u'mutagen Genre') 
tags["TDRC"] = TDRC(encoding=3, text=u'2010') 
tags["TRCK"] = TRCK(encoding=3, text=u'track_number') 

tags.save(fname) 
3

Una forma sencilla de hacerlo :

from mutagen.easyid3 import EasyID3 
audio = EasyID3(mp3_filename_import) 
audio['title'] = "Title" 
audio['artist'] = "Artist" 
audio['album'] = "Album" 
audio['composer'] = "" # empty 
audio.save() 

Si las etiquetas no aparecen, cambie la última línea a:

audio.save(v2_version=3) 
Cuestiones relacionadas