我目前正在构建一个应用程序,在考虑目标宽高比的情况下将视频转换为特定维度。
目标分辨率必须始终为1280x720,我希望使用黑条适合上传的视频大小。
任何人都可以指出一个公式来计算目标视频尺寸而不改变它的纵横比吗?如果目标小于1280x720,我会将缺少的像素添加为黑条。
我正在使用ffmpeg和"-vf scale=1280x720,pad=?:?:black"
命令
(对不起,如果我的英语不是那么好)
答案 0 :(得分:2)
阅读this页面,尤其是本节:
有时需要以适合的方式缩放输入图像 到一个指定的矩形,即如果你有一个占位符(空 矩形),您想在其中缩放任何给定的图像。这是一个 有点棘手,因为你需要检查原始的宽高比, 为了决定指定哪个组件并设置另一个组件 组件为-1(保持纵横比)。例如,如果我们愿意的话 喜欢将输入图像缩放为尺寸为的矩形 320x240,我们可以使用这样的东西:
ffmpeg -i input.jpg -vf scale="'if(gt(a,4/3),320,-1)':'if(gt(a,4/3),-1,240)'" output_320x240_boxed.png