改变帧速率而不改变影片速度/持续时间

改变帧速率而不改变影片速度/持续时间

我犯了一个错误,我需要将视频从 30 fps 重新编码为 24fps,同时保持相同的速度/持续时间。

有人知道我如何在 FFMPEG 中做到这一点吗?

我尝试改变 -r 值,这会改变速率,但会改变视频长度。

谢谢

答案1

为了在不改变视频总长度的情况下改变帧速率,FFmpeg 必须复制或删除一些帧。不幸的是,此过程会使视频中稳定流畅的动作变得笨拙和不自然。

ffmpeg -i input.mov -r 24 -y output.mov

此方法非常慢,所以请耐心等待。音频将保持不变,因为长度不会改变。

如果结果不符合预期,您还可以检查此工具:MV工具

以下帖子可能对您有帮助无需重新编码即可更改 ffmpeg 中的帧速率

答案2

此命令不会改变视频播放速度:

ffmpeg -i <input> -filter:v fps=fps=30 <output>

将 fps 从 59.6 降低到 30 效果很好。

相关内容