如何用ffprobe计算视频时长的总和
先说结论
目的:计算一个文件夹下的视频文件的时长总和,比如说,该目录下有100个视频文件,这样用手算肯定手酸。
系统环境: win 10
终端环境: Git Bash
装的工具: ffprobe
运行方式:
1. 在GitBash中,进到视频文件所在目录
2. 把下面的代码贴进Git Bash,于是得到计算结果
$ find . -type f \( -iname "*.mp4" -o -iname "*.mkv" -o -iname "*.avi" \) -print0 | sort -uz | xargs -0 -n 1 ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 | awk '{ total += $1 } END { hours=int(total/3600); mins=int((total%3600)/60); secs=int(total%60); printf "Total duration: %d hours %d minutes %d seconds\n", hours, mins, secs }'
ffprobe安装方法
win10人人都有。git bash,会git的工程师在这个环境下也人手一个,好像去git官网点一下下载就有了,不记得了,总之很容易。对我来说,这个ffprobe的安装倒是比较绕一些。
1. 进入这个网站,https://ffmpeg.org/download.html
2. 那个绿色的大按钮不要点,点下面的“Get packages & executable files”的win图标下的“Windows builds by BtbN”(BtbN的意思似乎是稳定版)
3. 解压下载的文件并将其中的ffprobe.exe文件复制到Git Bash的路径下(例如C:\Program Files\Git\usr\bin)。确保您的Git Bash可以执行
ffprobe
命令。 于是安装完毕。
评论
发表评论