通过丢弃帧来减小尺寸,无需重新编码

通过丢弃帧来减小尺寸,无需重新编码

我想通过删除帧并加快速度来显著减少文件大小。

以下操作有效,但仅限于重新编码时:

  • ffmpeg -r 1000 -i input.mp4 -r 30 -y output.mp4

  • ffmpeg -itsscale .01 -i input.mp4 -r 30 -y output.mp4

添加-c copy会破坏它们。

  • -r 1000方法什么也不做。

  • -itsscale制作加速视频但不会减小文件大小...所有帧是否仍然隐藏在文件中?

有没有什么办法可以丢弃帧并减小文件大小而无需重新编码?

答案1

您不能只丢弃帧来获得可正常工作的视频,因为某些帧依赖于它们之前的帧。这是许多编解码器/格式中用于减小文件大小的一种优化方法。

因此,如果您想减小视频尺寸,您绝对需要重新编码。

欲了解更好的解决方案,请参阅帖子 如何使用 ffmpeg 减小视频尺寸?

这篇高票帖子的答案列出了各种解决方案:

  • 使用 H.265 视频格式,该格式更好,因为在相同质量下它可以压缩更多。
  • 使用-crf 28关联
  • 缩小视频尺寸以获得较小的分辨率。
  • 如果视频不包含快速动作场景,请降低帧速率。
  • 增加压缩率。
  • 降低颜色深度。

相关内容