将所有标签从一个 FLAC 文件复制到另一个文件?

将所有标签从一个 FLAC 文件复制到另一个文件?

有没有一种方法可以使用命令行工具将所有标签从一个 FLAC 文件无缝复制到另一个文件?

答案1

metaflac --export-tags-to=- input.flac | \
metaflac --remove-all-tags --import-tags-from=- output.flac

可能也需要这个--no-utf8-convert选项。

答案2

如果您只想要元数据的文本部分,则应该使用--no-utf8-convert带有导出和导入选项的metaflac,否则不在您的shell字符集中的字符会被破坏(例如,对我来说,日语元数据在没有它的情况下确实会被破坏):

metaflac --no-utf8-convert --export-tags-to=- src.flac | metaflac --remove-all-tags --import-tags-from=- dest.flac

不知道为什么 utf8 不是默认值。

这是不是完全的。如果你也想移动图像,可以使用一个小的 python 脚本诱变剂是最好的复制方式全部元数据。

答案3

我对这些回复有点困惑,因为标签和图像默认使用 ffmpeg 进行本地传输。

我认为这个问题被 OP 术语所困扰,但如果实际目标是从保留所有注释头/元数据的 flac 创建一个 flac,ffmpeg 会自动执行此操作:

ffmpeg -i input.flac output.flac

如果要更改 output.flac 中的压缩级别,请使用“-compression_level [1-8]”选项。 -y 将覆盖 output.flac(如果它已存在)。

我刚刚对此进行了测试,一切都“正常”。所有标签传输,嵌入图像传输。

导出标签可以用于其他目的,但在这种情况下,做一些非常简单的事情有点不必要的步骤。

这是假设 output.flac 尚未标记。否则,基于 metaflac 的解决方案将有助于首先删除标签。请注意,如果 output.flac 已有嵌入图像,则图像嵌入更加复杂,并且需要更多步骤,但这超出了此特定问题的范围。

相关内容