ffmpeg 对于视频进行fps改变

有两种方法

http://www.hdslr-cinema.com/news/workflow/convert-between-framerates/


1. 不改变帧的个数,所以fps小的采样到fps大的相应的视频长度会变短

ffmpeg -i input.mov -f rawvideo -b 50000000 -pix_fmt yuv420p -vcodec rawvideo -s 1920x1080 -y temp.raw

ffmpeg -f rawvideo -b 50000000 -pix_fmt yuv420p -r 24 -s 1920x1080 -i temp.raw -y output.mov


2.统一到某个帧率,中间帧数不够了去差值

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

或者

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

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
ffmpeg中降低视频帧率可以通过两种方法实现:丢帧(drop frames)和插帧(frame interpolation)。这两种方法有不同的效果和使用场景。 1. 丢帧(drop frames):这是最简单的方法,它直接丢弃一些视频帧,从而降低帧率。丢帧的效果是直接降低了视频的流畅度,并且可能会导致画面不连续或卡顿。但是,它保持了原始视频的时间长度和时序。在ffmpeg中,可以使用以下参数来实现丢帧: ``` ffmpeg -i 输入视频文件 -r 目标帧率 输出视频文件 ``` 其中,`-r 目标帧率`表示指定输出视频帧率ffmpeg会自动丢弃一些帧以达到目标帧率。 2. 插帧(frame interpolation):这种方法通过在丢帧的基础上,通过复制、插入或生成新的帧来填充丢失的帧,以保持视频的流畅度。插帧可以提高视频的观看体验,但也可能引入一些画质损失或者影响原始视频的时序。在ffmpeg中,可以使用插值滤镜来实现插帧。例如,使用`minterpolate`滤镜可以进行插值处理: ``` ffmpeg -i 输入视频文件 -vf "minterpolate=fps=目标帧率" 输出视频文件 ``` 其中,`minterpolate=fps=目标帧率`表示使用插值滤镜来生成目标帧率视频。 选择丢帧还是插帧取决于你对视频的要求和场景。如果只是简单地降低帧率,丢帧可能是一个较简单的选择。如果需要保持流畅度,并允许一些画质损失,可以考虑使用插帧方法。请根据实际需求选择适当的方法。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值