python mp3 metadata id3 albumart

¿Cómo incrusta la carátula del álbum en un MP3 usando Python?



metadata id3 (5)

Parece que tienes que agregar un tipo especial de marco al MP3. Vea el sitio en las etiquetas ID3

También el tutorial para mutágeno implica que puede agregar etiquetas ID3 en mutágeno ver

He estado usando mutagen para leer y escribir etiquetas MP3, pero quiero ser capaz de incrustar la carátula del álbum directamente en el archivo.


He usado el módulo eyeD3 para hacer esto exactamente.

def update_id3(mp3_file_name, artwork_file_name, artist, item_title): #edit the ID3 tag to add the title, artist, artwork, date, and genre tag = eyeD3.Tag() tag.link(mp3_file_name) tag.setVersion([2,3,0]) tag.addImage(0x08, artwork_file_name) tag.setArtist(artist) tag.setDate(localtime().tm_year) tag.setTitle(item_title) tag.setGenre("Trance") tag.update()


Aquí es cómo agregar example.png como portada del álbum en example.mp3 con mutagen:

from mutagen.mp3 import MP3 from mutagen.id3 import ID3, APIC, error audio = MP3(''example.mp3'', ID3=ID3) # add ID3 tag if it doesn''t exist try: audio.add_tags() except error: pass audio.tags.add( APIC( encoding=3, # 3 is for utf-8 mime=''image/png'', # image/jpeg or image/png type=3, # 3 is for the cover image desc=u''Cover'', data=open(''example.png'').read() ) ) audio.save()


Una pequeña y agradable herramienta de CLI que me ayudó mucho a verificar lo que hice mientras desarrollaba Id3 es mid3v2, que es la versión mutagénica de id3v2. Viene incluido con la biblioteca de mutantes de Python. La fuente de esta pequeña herramienta también me dio muchas respuestas sobre cómo usar mutagen.


Solución posible

¿Estás tratando de incrustar imágenes en muchos archivos? Si es así, encontré un script (ver el enlace) que pasa por un conjunto de directorios, busca imágenes y las incrusta en archivos MP3. Esto fue útil para mí cuando realmente quería tener algo que ver en CoverFlow en mi (ahora difunto) iPhone.