我有几千个 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