FFMPEG 按时间范围剪切

FFMPEG 按时间范围剪切

我使用以下命令播放 15 秒 - 45 秒的音乐,但 sample.m4a 文件从 15 秒开始到 60 秒。我使用的语法错误吗?为什么会这样?

ffmpeg -ss 00:00:15 -t 00:00:45 -i song.m4a -acodec copy sample.m4a

答案1

-t标志设置持续时间。
因此,如果您想要 15 秒至 45 秒的范围,则必须设置-t 00:00:30(即 45-15=30)并在文件名后使用 -t 参数作为输出参数。

完整命令如下:

ffmpeg -ss 00:00:15 -i song.m4a -t 00:00:30 -acodec copy sample.m4a

或者

ffmpeg -ss 15 -i song.m4a -t 30 -acodec copy sample.m4a

答案2

使用-to而不是-t

  1. -t指定持续时间
  2. -to指定结束时间

如果您想要从 00:00:15 开始抓取 30 秒,您可以:

1) 指定开始时间和持续时间。

-ss 00:00:15 -t 00:00:30

2)或者,指定开始时间和结束时间。

-ss 00:00:15 -to 00:00:45

两者都将抓取相同的 30 秒视频。

相关内容