gpt4 book ai didi

FFMPEG (libx264) "height not divisible by 2"

转载 作者:行者123 更新时间:2023-12-04 23:21:40 25 4
gpt4 key购买 nike

我正在尝试使用 FFMPEG 使用 libx264 编解码器从一组帧中编码 .mp4 视频。

这是我正在运行的命令:

/usr/local/bin/ffmpeg -r 24 -i frame_%05d.jpg -vcodec libx264 -y -an video.mp4

我有时会收到以下错误:
[libx264 @ 0xa3b85a0] height not divisible by 2 (520x369)

经过一番搜索后,该问题似乎与缩放算法有关,可以通过添加 -vf 参数来解决。

但是,就我而言,我不想进行任何缩放。理想情况下,我想保持尺寸与框架完全相同。有什么建议吗?是否有某种 h264 强制执行的纵横比?

最佳答案

原始问题的答案不应该缩放视频,而是修复 height not divisible by 2错误。这可以使用这个过滤器来实现:

-vf "pad=ceil(iw/2)*2:ceil(ih/2)*2"
完整命令:
ffmpeg -i frame_%05d.jpg -vcodec libx264 \
-vf "pad=ceil(iw/2)*2:ceil(ih/2)*2" -r 24 \
-y -an video.mp4
基本上, .h264 需要均匀的尺寸,因此此过滤器将:
  • 将原始高度和宽度除以 2
  • 向上舍入到最近的像素
  • 再次将其乘以 2,从而使其成为偶数
  • 将黑色填充像素添加到此数字

  • 您可以通过添加过滤参数 :color=white 来更改填充的颜色.见 the documentation of pad .

    关于FFMPEG (libx264) "height not divisible by 2",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64962878/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com