scale
是一个视频滤镜(filter),用于对视频进行缩放。
scale
参数的格式为
scale=w:h
,其中
w
表示缩放后的视频宽度,
h
表示缩放后的视频高度。
scale
参数有以下三种常用的用法:
固定宽度或高度,等比例缩放:
scale=-1:720
:将视频的宽度等比例缩放,使得高度为 720 像素。
scale=1280:-1
:将视频的高度等比例缩放,使得宽度为 1280 像素。
指定宽度和高度,非等比例缩放:
scale=640:480
:将视频缩放为宽度为 640 像素,高度为 480 像素的大小。
指定宽度和高度,等比例缩放并填充黑边:
scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2
:
将视频缩放为宽度为 1280 像素,高度为 720 像素的大小,并在视频周围填充黑边。这种方式可以保持视频的宽高比不变。
1.将视频宽度等比例缩放为 640 像素:
ffmpeg -i input.mp4 -vf scale=640:-1 output.mp4
2.将视频高度等比例缩放为 480 像素:
ffmpeg -i input.mp4 -vf scale=-1:480 output.mp4
将视频缩放为宽度为 1280 像素,高度为 720 像素的大小,同时在视频周围填充黑边:
ffmpeg -i input.mp4 -vf "scale=1280:720:force_original_aspect_ratio=decrease,
pad=1280:720:(ow-iw)/2:(oh-ih)/2" output.mp4
NOTE:
在使用 scale 命令时,如果指定的宽度和高度比例与原始视频的宽高比例不同,那么视频的形状可能会发生变化。
为了避免这种情况,可以使用 force_original_aspect_ratio=decrease
参数,让 FFmpeg 在缩放视频时保持原始宽高比例。
同时,为了让视频在缩放后仍然填满整个画面,可以使用 pad
参数,在视频周围填充黑边。
将视频缩放为宽度为 640 像素,高度为 480 像素的大小,同时在视频周围填充黑边:
ffmpeg -i input.mp4 -vf "scale=w=640:h=480:force_original_aspect_ratio=decrease,pad=640:480:(ow-iw)/2:(oh-ih)/2" output.mp4
其他用于对视频进行缩放和裁剪的命令
zoompan
ffmpeg -y -c:v libx264 -c:a aac -vf scale= -1:1080
*- ffmpeg
:FFmpeg 工具的命令名。
-y
:覆盖输出文件而不询问。
-c:v libx264
:使用 libx264 编码器对视频进行编码。
-c:a aac
:使用 AAC 编码器对音频进行编码。
-vf scale=
:使用视频滤镜对视频进行缩放。
12
:缩放后的视频宽度,高度为1080。
某昆real
音视频开发
- 6377
-
floatWind
Android
FFmpeg