FFMPEG zoompan 过滤器示例

jrk*_*rkt 4 video ffmpeg

我需要使用zoompan过滤器创建带有各种平移和缩放的ffmpeg视频。我必须能够创建放大、缩小、平移和平移效果到视频的所有区域,例如:左上、中上、右上、右、右下、中下、左下角、左边和中间。到目前为止,我只能弄清楚如何放大到几个区域,例如:

放大左上角:

-vf "zoompan=z='zoom+0.001':x='if(gte(zoom,1.5),x,x-1)':y='y':d=125"
Run Code Online (Sandbox Code Playgroud)

右上角放大:

-vf "zoompan=z='zoom+0.001':x='if(gte(zoom,1.5),x,x+1)':y='y':d=125"
Run Code Online (Sandbox Code Playgroud)

放大左下角:

-vf "zoompan=z='min(zoom+0.0005,1.5)':y='if(gte(zoom,1.5),y,y+1)':x='x':d=125"
Run Code Online (Sandbox Code Playgroud)

我一直无法找到一个很好的资源来解释这些数字是如何工作的,以及我如何为所有这些变化找出特定的 zoompan 过滤器。

帮助????

Gya*_*yan 11

每帧都会评估 zoompan 过滤器表达式。表达式中引用的变量包含最后计算的值,如果是第一帧则为默认值。

评估zoom表达式的值表示结果尺寸与原始尺寸的比率,即zoom = 3意味着缩放窗口具有输入的宽度和高度的三分之一。

xy表示缩放窗口的左上角在输入图像中的位置。

d 是评估和应用缩放的持续时间(以帧为单位)。

当然,您应该指定过滤器的输出帧率fps和大小(请参阅其文档),否则过滤器将应用其默认值 25 fps 和 1280x720,这可能不是您想要的。s

对于平滑变焦,您可能需要高档的形象事前。