我目前正在从事一个需要我处理 mpeg-2 文件的学校项目。目前,我正在使用诱变剂为我的 mpeg 文件提取元数据。但是,当我尝试获取标题、艺术家、专辑等的元数据时,它会显示以下错误。[Python代码欣赏]
如果我的输出如下:
mutagen.id3.ID3NoHeaderError: 'media/test.mpeg' 不以 ID3 标签开头
它表明没有所谓的容器来保存 ID3 标签,有人愿意解释一下为什么会这样吗?
当我使用 mp3 文件而不是 mpeg 时,它完美地工作。
以下是我的部分代码(硬代码):
from mutagen.id3 import ID3
file = "media/test.mpeg"
audio = ID3(file)
print "Artist: %s" % audio['TPE1'].text[0]
print "Track: %s" % audio["TIT2"].text[0]
print "Release Year: %s" % audio["TDRC"].text[0]
第二个问题是,当我尝试获取 mpeg 文件的持续时间时,它会返回错误的持续时间。
文件持续时间 = 21 秒
当我运行我的代码时,它显示持续时间:1124.5705721 秒
以下是我的部分代码(硬代码):
import mutagen
from mutagen.mp3 import MP3
from mutagen.mp3 import MPEGInfo
file = "media/test.mpeg"
audio = MP3(file)
print audio.info.length