APEv1 标签标识符是啥?
Posted
技术标签:
【中文标题】APEv1 标签标识符是啥?【英文标题】:What is the APEv1 tag identifier?APEv1 标签标识符是什么? 【发布时间】:2017-04-30 22:27:57 【问题描述】:我一直在清理我的 MP3 收藏,并使用 taglib-sharp 从我的收藏中大量删除了所有 ID3v1.x/ID3v2.x 标签,因此我可以使用一个程序自动重新标记它们。无论如何,如果文件中有任何 APEv1 和 APEv2 标签,我需要能够删除它们。它们很少与 MP3 一起使用,但可以。
我需要知道 APEv1 的标签标识符是什么,它位于文件的末尾。我在网上搜索过,一无所获。
附带说明,对于 APEv2,标签标识符是“APETAGEX”,位于文件的开头。
谢谢。
【问题讨论】:
en.m.wikipedia.org/wiki/APE_tag 【参考方案1】:根据APEv1 spec,APEv1 和 APEv2 之间的唯一区别是 APEv1 没有标头,因此必须始终位于文件末尾或紧接在 ID3v1 标记之前。
页脚/页眉长度为 32 个字节,以 APETAGEX
开头,因此检查文件末尾是否存在 APE 标记将涉及读取 Length - 32
处的 8 个字节并检查该 ASCII 字符串,或者Length - 32 - 128
如果有 ID3v1 标签(或者如果文件中有页脚 APEv2 和 ID3v2 标签,则位置完全不同,因为在这种情况下确实没有严格的先例)。
也就是说,taglib-sharp 应该能够使用file.RemoveTags(TagTypes.Ape)
删除页脚 APEv1 标签
【讨论】:
感谢您解决这个问题。我以为 taglib 会处理它,但我不完全确定。感谢您提供的重要信息。 +1 @NeilSiegfried 如果这对您有用,您可以投票/接受答案吗?【参考方案2】:根据APE tag - Wikipedia 没有实际的标签,但是数据被附加到文件的末尾。
APEv1
APEv1 标签是为 Monkey's Audio 设计的 格式。[2]在 MP3 文件中,APE 标签存储在文件的最后 文件,文件正文中没有内联声明。该软件 处理对标签的写入和访问,并且不干扰 MP3 的内容。
【讨论】:
以上是关于APEv1 标签标识符是啥?的主要内容,如果未能解决你的问题,请参考以下文章