FFmpeg视频处理:命令行快速裁剪指南

221 9~11 min

今日帮单位师傅剪一个.mp4视频文件,师傅要求把工作记录仪在休眠时多录入的黑屏部分给去掉。我一时不知有什么软件能直接裁剪视频又无注册无套路还很小的,想来只得试试FFmpeg,搜下了它有裁剪命令,便成功了。自己又整理了一下对代码的理解,如下文。

Windows如何安装FFmpeg,见 FFmpeg安装指南

裁剪视频命令

视频信息:单音轨录像文件.mp4

ffmpeg -i input.mp4 -ss 00:02:15 -to 00:15:00 -c copy output.mp4
# 表示对input.mp4从00:02:15开始处理到00:15:00时停止处理,并直接复制流,不进行重新编码,输出文件名为output.mp4。
# 即 截取00:02:15-00:15:00这段数据,生成与原文件同编码的视频。

ffmpeg -i input.mp4 -ss 00:02:15 -t 00:12:45 -c copy output.mp4
# 表示对input.mp4从00:02:15开始处理持续12分45秒停止处理,并直接复制流,不进行重新编码,输出文件名为output.mp4。
# 即 截取00:02:15开始,持续12分45秒的这段数据,生成与原文件同编码的视频。

各参数含义

参数

含义

备注

-i input.mp4

指定输入文件为:
input.mp4

如果终端窗口在当前文件的文件夹下打开,那么直接输入文件名即可;如果直接打开终端窗口,需要填写输入文件的全部路径,简便方法:将需要处理的视频文件拖入终端,直接出现文件路径。

-ss 00:02:15

表示从输入文件的哪个时间点开始处理(开始时间)

'Seek to a specific timestamp'表示“跳转到指定时间点”。

-to 00:15:00

表示处理到哪个时间点结束(结束时间)


-t 00:12:45

指处理的持续时间(duration)

-c

这里看作是一个针对编解码器的参数选择器,如果没有选择参数,默认会作用于所有流(视频v​、字幕s​、音频a​等)。

如果是-c:v 则表示选择视频流

copy

表示直接复制视频,不重新编码

output.mp4

输出文件名称

输出文件名的位置在终端打开的位置

`

总结

  1. 如果是针对 单音轨视频文件 的裁剪,可以直接使用-c copy​,保留原文件编码与格式,不做任何处理,会比较快。

参考

ffmpeg官方说明文档:https://ffmpeg.org/ffmpeg.html