主思路

使用scale 滤镜改变分辨率。

详情

简单滤镜里的 scale 就可以转换任意分辨率

ffmpeg -i input.mp4 -vf scale=1080:1920 -y output.mp4

-vf scale后面就是跟宽:高,如果某一个值是-1代表保持原来的比例自动生成,比如 1080:-1就是宽为1080,高则自动计算,避免变形。

可以附加code参数,来改变视频音频的编码,比如 -c:v -c:a 等。

视频如何变速

先去除音轨,如果不去除音轨,那么还需要设定音轨的速度

ffmpeg -i input.mp4 -an -y input-mute.mp4

然后用滤镜setpts设定倍速,小于1 就是加速,比如 0.5的意思就是加速一倍。

ffmpeg -i input-mute.mp4 -vf "setpts=0.5*PTS" -y out.mp4

参考

官方 FFmpeg Filters Documentation

官方用法 Scaling – FFmpeg

FFmpeg Scaler Documentation

官方 How to speed up / slow down a video – FFmpeg

https://ffmpeg.org/ffmpeg-all.html#setpts_002c-asetpts

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐