这个问题的原因是mutagen.py在编辑时更改了ID3标签帧的大小。解决方法是使用mutagen库的ID3删除功能来删除所有ID3标签并重新添加。以下是代码示例:
from mutagen.mp3 import MP3
from mutagen.id3 import ID3, TIT2, TPE1, TALB, TCON, TDRC, APIC, error
# 打开需要处理的MP3文件,例如:example.mp3
audio = MP3("example.mp3", ID3=ID3)
try:
# 删除ID3标签
audio.tags.delete()
# 新建ID3标签
audio.tags.add(TIT2(encoding=3, text=u"Title"))
audio.tags.add(TPE1(encoding=3, text=u"Artist"))
audio.tags.add(TALB(encoding=3, text=u"Album"))
audio.tags.add(TCON(encoding=3, text=u"Genre"))
audio.tags.add(TDRC(encoding=3, text=u"Year"))
# 保存标签
audio.save()
print("ID3 tags removed and added successfully.")
except error:
print("Error occured while processing ID3 tags.")
这个脚本首先打开一个MP3文件,然后使用ID3删除功能删除所有ID3标签。接下来,它使用TIT2,TPE1,TALB,TCON和TDRC标签添加了一个新的“Title”,“Artist”,“Album”,“Genre”和“Year”标签。最后,保存了修改并输出了成功或失败的消息。