Video 将视频文件减速至设定的持续时间

Video 将视频文件减速至设定的持续时间,video,ffmpeg,video-processing,Video,Ffmpeg,Video Processing,假设我有一个25.1秒长的视频和一台带有ffmpeg.exe的Windows计算机。有没有一种方法可以使用ffmpeg根据我给它的数字来减慢或加快视频?例如,我希望25.1秒的视频速度降到24.3秒。我该怎么做?通常,我会使用-filter:v“setpts=SPD*DURATION”,但这只会通过乘数而不是绝对数来加速或减速。如注释中所述,方法是使用以下命令: ffmpeg-i in.mp4-filter:v“setpts=(NewDuration/olduration)*PTS“out.mp

假设我有一个25.1秒长的视频和一台带有
ffmpeg.exe
的Windows计算机。有没有一种方法可以使用ffmpeg根据我给它的数字来减慢或加快视频?例如,我希望25.1秒的视频速度降到24.3秒。我该怎么做?
通常,我会使用
-filter:v“setpts=SPD*DURATION”
,但这只会通过乘数而不是绝对数来加速或减速。

如注释中所述,方法是使用以下命令:

ffmpeg-i in.mp4-filter:v“setpts=(NewDuration/olduration)*PTS“out.mp4

如果该系数小于1.0,则会加快视频速度;如果该系数大于1.0,则会减慢视频速度。此外,“PTS”是一个内部变量,因此它可以如图所示保持不变,而无需在其位置放置任何东西。只有持续时间需要输入数字


ffmpeg-i in.mp4-filter:v“setpts=(24.3/25.1)*PTS”out.mp4

使用
setpts=NewDuration/OldDuration*PTS
,所以
setpts=(24.3/25.1)*PTS
@Mulvya我当时正在考虑这个问题,但我想到这个问题时已经是晚上10点了。谢谢☺我进行了测试,这对timelapse有效。但我不得不剪掉视频中多余的部分。