是否可以使用 FFmpeg 调整我的视频大小以使其更小?
我的原始视频尺寸为 1024x576,现在我想将视频大小调整为 720x480 以满足要求。
我怎样才能做到这一点?
jim*_*ark 324
最基本的例子是这样的:
ffmpeg -i input.avi -s 720x480 -c:a copy output.mkv
Run Code Online (Sandbox Code Playgroud)
使用的scale
过滤器将提供更多的灵活性:
ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv
Run Code Online (Sandbox Code Playgroud)
该-1
会告诉ffmpeg的自动选择相对于正确的高度与宽度设置以保持高宽比。-1
如果您提供给定的高度,也可以用于宽度。
使用时标度的一个缺点libx264
是该编码器需要偶数值,标度可能会自动选择奇数,从而导致错误:width or height not divisible by 2
。您可以告诉 scale 为给定的高度选择一个偶数值(在本例中为 720):
scale="trunc(oh*a/2)*2:720"
Run Code Online (Sandbox Code Playgroud)
...或给定的宽度(在本例中为 1280):
scale="1280:trunc(ow/a/2)*2"
Run Code Online (Sandbox Code Playgroud)
请注意,您的 ffmpeg 构建可能会抱怨无法识别-c
或-filter
选项。它也可能不支持scale
. 在这种情况下,您应该使用较新的 ffmpeg,您可以将其下载为静态构建,或者自己编译。
小智 53
我使用以下命令对视频和图像进行重新缩放。对于固定宽度和高度 -
ffmpeg -i input.avi -vf scale="720:480" output.avi
Run Code Online (Sandbox Code Playgroud)
如果您想保留纵横比,只需将高度设为 -1,它就会根据宽度自动调整大小 -
ffmpeg -i input.avi -vf scale="720:-1" output.avi
Run Code Online (Sandbox Code Playgroud)
如果您想根据输入大小进行缩放,例如可以说将宽度/高度减少到一半,您可以这样做 -
ffmpeg -i input.avi -vf scale="iw/2:ih/2" output.avi
Run Code Online (Sandbox Code Playgroud)
笔记 :
iw : input width
ih : input height
Run Code Online (Sandbox Code Playgroud)
静态构建可以从 - https://johnvansickle.com/ffmpeg/下载
文档:https : //ffmpeg.org/ffmpeg.html#filter_005foption
归档时间: |
|
查看次数: |
276173 次 |
最近记录: |