在 ffmpeg 中一次应用多个过滤器

在 ffmpeg 中一次应用多个过滤器

我有一个视频,我想对其应用两个滤镜。我想将视频顺时针旋转 90 度,然后将其从 1280 x 720 缩小到 720 x 576 并添加黑边。

我还想旋转输入文件,然后将输出文件放在临时文件夹中,以便其他过滤器使用临时文件夹中的文件进行缩放和填充,然后覆盖它。

以下是我目前正在尝试的命令:

-i "<FullSourceFileName>" -vf "transpose=1" -r 30 -qscale 0 -acodec copy -f avi "C:\FfmpegTemp\Temp.avi"

和:

-i "C:\FfmpegTemp\Temp.avi" -filter:v "scale=1280*min(720/1280\,576/720):720*min(720/1280\,576/720), pad=720:576:(720-1280*min(720/1280\,576/720))/2:(576-720*min(720/1280\,576/720))/2" -vcodec rawvideo  -y "<OutputFileName>.avi"

答案1

您在第二个示例中已经使用了两个过滤器。它们之间用逗号分隔。

将这三个都添加到-vf参数中,如下所示:

-i "<FullSourceFileName>" -vf "transpose=1, scale=1280*min(720/1280\,576/720):720*min(720/1280\,576/720), pad=720:576:(720-1280*min(720/1280\,576/720))/2:(576-720*min(720/1280\,576/720))/2" -r 30 -qscale 0 -acodec copy -f avi -vcodec rawvideo  -y "<OutputFileName>.avi"

相关内容