linux - 如何获取 flac 和 ogg 的音频文件元数据容器的数据
问题描述
是否有命令告诉我什么类型的元数据容器正在使用文件?
像:command myfile.flac
说:vorbis comment
或id3v2
。
解决方案
警告:一个音频文件可以有多个元数据容器。所以找到 vorbis 评论并不意味着没有 id3 标签。提醒:flac 和 ogg 应该与 vorbis 注释一起使用。
Vorbis 评论
弗拉克
metaflac --list myfile.flac
它将为每个块打印很多信息。这是答案:
METADATA block #2
type: 4 (VORBIS_COMMENT)
要安装 metaflac:sudo apt install flac
.
奥格
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 文件。
推荐阅读
- java - org.joda.time.DateTime.now 分辨率
- sql - 填充现有表中开始日期和结束日期之间的行
- python - Python Selenium - 通过 aria-label 或其他自定义字段查找和单击元素
- angular - 不带参数的双破折号 (--) 与带参数的双破折号之间的区别(例如:--no-watch)
- amazon-web-services - AWS CloudFormation 忽略现有资源
- python - 将华氏温度转换为摄氏温度 Python
- xml - 从 XML Schema 中移除命名空间支持
- html - 如何调整图像css的高度
- javascript - 为什么我分配给 Javascript 提取的返回值的数组包含甚至没有出现在响应中的数据?
- python - 如何从字典值字符串中提取最小的多个数字