将 mkv 元数据/标头提取到文件中

将 mkv 元数据/标头提取到文件中

我有几千个 mkv 文件。我需要将这些文件的 2 个元数据信息提取到一个列表中,具体来说是文件分辨率(例如 1920x1080)以及(如果存在的话)纵横比标签信息(例如 16/9 或 4/3)。

如果您对我为什么要这样做感兴趣:我需要找到我收藏的所有变形文件。

如果你能帮忙的话就太好了。:-)

答案1

您可以使用媒体信息,并且可以--Inform选择仅列出您需要的信息。

例如:

mediainfo --Output="Video;%Width% x %Height% DAR=%DisplayAspectRatio%" "$Your_Video_File"

如果您使用的是 Mac 或 Linux(或在 Windows 中使用 WSL),这将找到当前目录中的所有 .mkv 文件,并打印每个文件的信息:

find -iname "*.mkv" | while read f; do
  printf "%4s x %4s %6s    %s\n" $(mediainfo --Output="Video;%Width% %Height% %DisplayAspectRatio%" "$f") "$f"
done

示例输出:

 702 x  576  1.333    ./Alice in Wonderland.mkv
1920 x  800  2.400    ./The.Incredibles.2004/The.Incredibles.2004-stfr.mkv
1440 x 1080  1.333    ./Fantasia/Fantasia.1940-en_fr_it-de-st_en_it_de.mkv
1920 x 1080  1.778    ./Fantasia.2000/Fantasia 2000.1999.mkv
 636 x  480  1.325    ./les maitres du temps-t7nTMeqwlmE.mkv

相关内容