ffmpeg - FFMPEG 如何在不丢帧的情况下改变 fps?

标签 ffmpeg frame-rate

这里我得到了一个 FPS 30、持续时间 10 秒、300 帧的视频。如何在不丢帧的情况下将视频调至 25FPS。

我认为 -rfps=fps=25 是一种重采样方法,或者不起作用。

我的命令如下:

ffmpeg -i input.flv -vf "scale=800:450, fps=25" output1.flv

ffmpeg -i intput.flv -filter:v fps=fps=25 -c:v libx264 -c:a copy -pix_fmt yuv420p -profile:v high -f mp4 -vf scale=800:450 output2.mp4

结果是 output1.flv 丢帧,并且 output2.mp4 不起作用。

最佳答案

如果您要重新编码视频流,则

ffmpeg -r 25 -i input.flv ...

如果有音频,您还必须通过添加来调整其速度

-af atempo=0.834

其中 0.834 是 25/30。

关于ffmpeg - FFMPEG 如何在不丢帧的情况下改变 fps?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59088930/

相关文章:

directshow - 如何在 MF 应用程序中使用帧速率转换器 DMO

docker - 如何在docker容器中安装ffmpeg

go - 如何获取 ffmpeg 命令的文件输出?

ios - ffmpeg 转换后的 x264 视频显示色彩饱和度急剧下降

C++ DirectX FPS 相机怪异

Java 平台游戏性能

animation - 统一: 30fps vs 60fps on 30fps animation

c++ - 外部限制程序帧率

ffmpeg - 使用 ffmpeg 将 h.264 avi 容器转换为 mp4

ffmpeg - 带有外部图片和淡入效果的空白视频