gpt4 book ai didi

FFMPEG(libx264) "height not divisible by 2"

转载 作者:行者123 更新时间:2023-12-03 04:18:14 30 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 是否强制执行某种宽高比?

最佳答案

原始问题的答案应该缩放视频,而是修复高度不能被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 需要偶数尺寸,因此此过滤器将:

  1. 将原始高度和宽度除以 2
  2. 四舍五入到最接近的像素
  3. 再次乘以 2,使其成为偶数
  4. 添加黑色填充像素至此数量

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

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

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