【Linux-Windows】使用ffmpeg裁剪视频

【Linux-Windows】使用ffmpeg裁剪视频

1、背景

本博客涉及ffmpeg视频裁剪。

ffmpeg是一个开源的强大的音视频工具。
本博客在windows10操作系统,下载的包:ffmpeg-n4.4-latest-win64-lgpl-4.4.zip
解压后使用bin文件夹下的ffmpeg.exe可执行程序。

ffmpeg可以裁剪视频画面的尺寸,同时还可以指定视频起始点和时长,就可以裁剪视频片段。

你也可以使用opencv进行手动裁剪。
但请注意:相比opencv裁剪,ffmpeg裁剪后的音频会得以保留,相对直接方便。

2、裁剪视频画面宽高

fmpeg视频裁剪使用crop视频滤镜(Video filter),
它可以把视频从指定的x、y位置裁剪成指定的w、h。坐标系是基于左上点开始的。

示例:

ffmpeg.exe -i Test.mp4 -vf crop=1920:900:0:100 out.mp4 -y

crop的参数格式为:

w:h:x:y,
w、h为输出视频的宽和高,
x、y标记输入视频中的某点,将该点作为基准点,向右下进行裁剪得到输出视频。
如果x y不写的话,默认居中剪切。

3、裁剪指定时长的视频

需要指定裁剪时长,使用 -t 参数,比如 -t 10 表示只裁剪10秒钟。
需要指定裁剪起点,使用-ss参数,比如 -ss 00:10:00 表示只裁剪10秒钟。
即:

ffmpeg -i [filename] -ss [starttime] -t [length] -c copy [newfilename]

参数说明:
i 为需要裁剪的文件。
ss 为裁剪开始时间。
t 为裁剪结束时间或者长度。
c 为裁剪好的文件存放。

示例:

ffmpeg.exe  -i Test.mp4  -ss 00:00:10 -t 5 -c copy out.mp4

猜你喜欢

转载自blog.csdn.net/jn10010537/article/details/124685664