mp3 文件元数据中的自定义键

Posted

技术标签:

【中文标题】mp3 文件元数据中的自定义键【英文标题】:Custom key in mp3 file metadata 【发布时间】:2017-07-19 21:46:03 【问题描述】:

我正在尝试散列一些 mp3 文件并将该散列值存储在 mp3 的元数据中。除了['author', 'album', 'date'] 的传统标签之外,有没有办法可以在元数据中添加自定义键/标签?

【问题讨论】:

Create new ID3 tag using python and eyed3的可能重复 我能够使用链接副本中的代码创建一个新标签,并将 file.tag.artist = u"MP3 Artist" 行更改为 file.tag.hash = u"<hash_value>" @downshift 当我执行initTag() 时,它会擦除​​我现有的标签,有没有办法在不擦除我的初始标签的情况下做到这一点? 抱歉,initTag() 行似乎不是必需的。删除该行,它应该保留当前标签的信息。 【参考方案1】:

如 cmets 中所述,eyeD3 可以做到这一点。自定义键/标签与其他预定义键/标签的工作方式相同。选择一个键/标签名称,引用并将其分配给您的值。

import eyed3

audiofile = eyed3.load('audio_file.mp3')
# add your hash key/tag/value

audiofile.tag.hash = u"ec457d0a974c48d5685a7efa03d137dc8bbde7e3" # example value
print audiofile.tag.hash # ec457d0a974c48d5685a7efa03d137dc8bbde7e3

确认其他元数据完好无损:

print audiofile.tag.artist # e.g. Henry Reed

希望这会有所帮助。

【讨论】:

以上是关于mp3 文件元数据中的自定义键的主要内容,如果未能解决你的问题,请参考以下文章

元数据库中的 SQL 自定义过滤器不显示使用 [[ ]] 的自定义字段

如何删除之前添加的 PNG 图像文件中的自定义信息?

是否可以将自定义元数据标签添加到音乐文件?

如何在 C# 的 mp3 文件中嵌入章节元数据?

如何在选中的自定义元框中设置单选按钮?

使用 tm_map 的自定义函数维护用户定义的元数据