如何获取flac和ogg的音频文件元数据容器的数据

时间:2020-10-28 17:57:29

标签: linux file id3 flac vorbis

是否有命令告诉我哪种类型的元数据容器正在使用文件?

类似:command myfile.flacvorbis commentid3v2

1 个答案:

答案 0 :(得分:0)

警告:一个音频文件可以具有多个元数据容器。因此,找到vorbis评论并不意味着没有id3标签。提醒:flac和ogg应该与vorbis评论一起使用。

Vorbis评论

Flac

metaflac --list myfile.flac

它将为每个块打印很多信息。答案是这样:

METADATA block #2
  type: 4 (VORBIS_COMMENT)

要安装metaflac:sudo apt install flac

Ogg

vorbiscomment file.ogg

它将输出如下内容:

encoder=Lavc57.107.100 libvorbis
TRACKNUMBER=1
title=My file title
...

要安装:sudo apt install vorbis-tools

ID3

好吧,我发现最好的东西是一个Python库:mutagen。例如,在您的python文件中,您可以编写:

from mutagen.id3 import ID3NoHeaderError, ID3

try:
    tags = ID3("path/to/myfile.ogg")
    print("ID3 tags found: ", tags)
except ID3NoHeaderError:
    print("No ID3 tags")

具有ID3标签的文件的输出:ID3 tags found: {'TIT2': TIT2(encoding=<Encoding.UTF8: 3>, text=['my new title'])}。它也适用于flac文件。