我需要将我的 mp4 文件分成 p30 和 p60,并希望使用命令行工具来执行此操作。我知道有一个选项可以检查媒体文件的详细信息,我需要批量执行此操作。有什么想法吗?
答案1
您可以使用ffprobe
获取视频帧速率。
安装:apt install ffmpeg
1 个文件的用法:
ffprobe -v error -select_streams \
v -of default=noprint_wrappers=1:nokey=1 \
-show_entries stream=r_frame_rate <your-filename>.mp4
批量获取当前目录中所有视频的文件名和帧速率(除以\t
):
for videofile in *.mp4; do
echo -n "$videofile\t"
ffprobe -v error -select_streams v \
-of default=noprint_wrappers=1:nokey=1 \
-show_entries stream=r_frame_rate $videofile
使用以下方法批量获取当前目录和子目录中所有视频的文件名和帧速率find
:
find -name '*.mp4' -printf '%p\t' \
-exec ffprobe -v error -select_streams \
v -of default=noprint_wrappers=1:nokey=1 \
-show_entries stream=r_frame_rate {} \;