FFmpeg - 使用宽高比更改视频的分辨率

时间:2014-06-06 17:09:05

标签: video ffmpeg resolution aspect-ratio

所有

如何使用FFmpeg更改宽高比的视频分辨率?

有选择 http://manpages.ubuntu.com/manpages/oneiric/man1/ffmpeg.1.html

       -s size
       Set frame size. The format is wxh (ffserver default = 160x128,
       ffmpeg default = same as source).  The following abbreviations are
       recognized:

       -aspect aspect
       Set the video display aspect ratio specified by aspect.

       aspect can be a floating point number string, or a string of the
       form num:den, where num and den are the numerator and denominator
       of the aspect ratio. For example "4:3", "16:9", "1.3333", and
       "1.7777" are valid argument values.

例如,我有两个输入视频:

  • 分辨率为200 * 400
  • 400 * 700分辨率

我需要以100 * 200的分辨率制作输出视频。

如果我使用-s 100x200运行ffmpeg,那么第二个视频的宽高比会很差。

如何按宽度限制输出视频,自动宽高比按高度?

例如,我想为输出视频指定宽度仅为100px,而ffmpeg必须自动计算具有正确宽高比的高度。

对于第一个视频,它将是:

100分之200= 2

2分之400= 200

即100x200

对于第二个视频,它将是:

4分之700= 75

即100x75

有可能吗?

6 个答案:

答案 0 :(得分:15)

ffmpeg -i <input> -vf scale=720x406,setdar=16:9 <output>

了解有关它的更多信息,

Changing-resolution-video-using-ffmpeg

答案 1 :(得分:8)

不适用于视频。该页面仅处理静止图像。

由于未完全理解的原因,FFMPEG使用样本/像素长宽比率将视频转换回原始宽高比。例如,如果您将视频拉出两倍宽,它会使宽高比为1:2,或类似的东西(2:1?)

因此,如果你真的想要播放一段视频&#34; Stretch Armstrong&#34;风格,你需要强制SAR(样本纵横比):

ffmpeg -i <something> -vf scale=iw*55:ih,setsar=1:1 ...

这在FFMPEG手册here's a video.stackexchange answer that puts it all in one place.

中并未得到很好的描述

答案 2 :(得分:1)

以下两个选项: 带有比例:

ffmpeg -i source.mp4 -r 15 -s 320x240 -strict -2 destination.mp4

具有长宽比:

ffmpeg -i source.mp4 -r 15 -aspect 1:1 -strict -2 destination.mp4

答案 3 :(得分:0)

使用幻数-1按比例调整视频大小,setdar需要使用斜杠/作为分隔符而不是冒号:

ffmpeg -i <input> -vf "scale=100:-1,setdar=16/9" <output>

该命令会将视频200x400的尺寸调整为100x200,将400x700的尺寸调整为100x175

答案 4 :(得分:0)

用于更改分辨率的简单命令,但保留原始外观: (在此示例中,更改为800宽度)

ffmpeg -i ogirinal_video.gif -vf scale=800:-1 changed_resolution.gif

答案 5 :(得分:0)

如果您要转换具有不同纵横比的纵向和横向视频,您可以使用 force_original_aspect_ratio 选项:

scale=w=100:h=200:force_original_aspect_ratio=decrease

您可以根据改变force_original_aspect_ratio值的纵横比来选择减小或增加视频大小输出。

来源:https://trac.ffmpeg.org/wiki/Scaling