微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何加速视频以缩短其长度并嵌入时间戳以表示录制时间?

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

我有一个以 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

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

在一次传递中实现这一目标的最简单方法是什么?

解决方法

先放 drawtext 过滤器,然后放 setpts 过滤器:

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。