FFMPEG 中视频调整大小的自动宽度计算

FFMPEG 中视频调整大小的自动宽度计算

现在我正在使用它来尝试将 720p 视频缩小到 480p,问题是自动宽度选择了一个奇数。

我目前正在使用-vf "scale=trunc(oh*a*2)/2:480,它仍然选择 853 作为宽度。有什么建议吗?

答案1

问题

中的比例过滤器可以只提供一个维度,并且如果您使用作为值(例如) ,ffmpeg它可以自动计算未声明的维度,但最终可能是一个奇数。-1-vf scale=640:-1

ffmpeg使用 libx264 编码 H.264 视频。此编码器需要对宽度和高度进行 mod2 运算以实现 4:2:0 色度二次采样;这意味着宽度和高度必须能被 2 整除。

解决方案

使用-2。它将:

  • 在保留纵横比的同时,自动计算与声明尺寸相关的正确值。

  • 使输出可以被 2 整除。如有必要,它将调整输出。

例子

ffmpeg -i input.avi -vf scale=-2:480 output.mp4

另请参阅

相关内容