首页 > 解决方案 > 如何加快视频速度以缩短其长度并嵌入时间戳以表示录制时间?

问题描述

我有一个以 5 fps 录制的视频,我想将其加速到 30 fps 以缩短它。这很简单:

ffmpeg -i input.mp4 -r 30 -vf "setpts=(1/6)*PTS" output.mp4

但是当我尝试为其添加时间戳时:

ffmpeg -i input.mp4 -r 30 -vf "setpts=(1/6)*PTS, drawtext=text='%{pts\:localtime\:1610043985\:%Y\-%m\-%d %H\\\\\:%M\\\\\:%S.}%{eif\:mod(n,30)\:d}'" output.mp4

时间戳不再代表记录的时间(它现在应该运行得更快)

单程实现这一目标的最简单方法是什么?

标签: videoffmpeg

解决方案


先放过drawtext滤器,再setpts放过滤器:

ffmpeg -i input.mp4 -r 30 -vf "drawtext=..., setpts=..." output.mp4

推荐阅读