检测 mp3 文件的 id3v2 标签的编码

检测 mp3 文件的 id3v2 标签的编码

我正在尝试检测标签的编码。使用eyeD3 file.mp3 有关文件的输出信息,但是我的 c++ 程序将无法读取的垃圾内容打印为某些 mp3 文件的标题,我认为这是由于编码造成的。

有没有办法找到标签的编码?

答案1

根据标准(第 4.2.2 节)

文本框架用编码字节标记。

  • $00 – ISO-8859-1(LATIN-1,对于小于 0x80 的值,与 ASCII 相同)。
  • $01 – UCS-2(带有 BOM 的 UTF-16 编码 Unicode),在 ID3v2.2 和 ID3v2.3 中。
  • $02 – ID3v2.4 中,UTF-16BE 编码的 Unicode(无 BOM)。
  • $03 – ID3v2.4 中的 UTF-8 编码 Unicode。

答案2

您可以使用中期3v2,它带有诱变剂

在基于 Debian 的系统(如 Ubuntu 等)上,使用以下命令安装

sudo apt install python3-mutagen

列出标签及其编码:

mid3v2 --list-raw "$Your_File"

为了避免列出嵌入图片等的十六进制转储,您可以通过管道将输出限制为文本字段grep

mid3v2 --list-raw "$Your_File" | grep '^T'

相关内容