如何使用FFMPEG正确裁剪和缩放比例?

时间:2018-10-05 21:53:17

标签: ffmpeg scale crop

我正在尝试删除视频的顶部和底部黑条。

image sample from video

what i'm trying to achieve

视频本身为1280x720 16:9,但图像信息的部分为4:3,因为它是从VHS捕获的。我想以某种方式拉伸它,直到顶部条消失而不会使图像变形。我不在乎左右栏。

我尝试使用cropscale时没有运气。

通过使用此代码,在正常屏幕上,VLC顶部和底部的黑条消失了,但是在进入“全屏”状态时,这些条再次出现。

ffmpeg -i test.avi -filter:v "crop=1280:670" output_video.mp4

我认为这与视频的缩放比例有关,但老实说,我尝试使用的每个scale代码都会使图像变形很多。

我希望对FFMPEG来说还很陌生,但到目前为止我真的很喜欢。

谢谢!

1 个答案:

答案 0 :(得分:2)

我得到了您的图像,将其调整为720p,并制作了30秒的视频进行测试。

在我的示例中,我还裁剪了边缘(左/右),因为正如@LordNeckbeard提到的那样,当它们碰到屏幕的一侧时,它们可能会阻止视频的顶部/底部到达屏幕的顶部/底部。屏幕将再次显示,无论顶部还是底部,它们看起来都像黑条。

这对我有用:

ffmpeg -y -hide_banner -i "test.avi" -filter:v "crop=iw-400:ih-40,scale=960:720" -pix_fmt yuv420p output_video.mp4

快速说明:

crop=iw-400:ih-40 从输入宽度(iw)裁剪400(左右2x200) 从输入高度(ih)裁剪40(2x20顶部/底部) 如果您想要“更酥脆”的边缘,可以削减更多的成本。

scale=960:720 稍微缩放视频以使其恢复到原始的720p,960可以将其保持在4x3的良好比例。 您无需选择此缩放比例。

让我知道它是否对您有用。