如何在ffmpeg-python中的filter_()中使用输入参数?

时间:2018-04-17 15:16:22

标签: python ffmpeg

我正在使用ffmpeg-python包装器。

我想使用crop过滤器来提取视频文件的裁剪部分;我希望该部分的大小是输入维度的一半。

根据ffmpeg的文档,我可以使用输入参数in_win_h,如下所示:

crop=1/2*in_w:1/2*in_h (要么 crop=w=1/2*in_w:h=1/2*in_h具有命名参数)

但是,我很难找到如何在ffmpeg-python中使用它们。我想我可以将它们作为标准参数传递,如下所示: filter_('crop', '1/2*in_w:1/2*in_h') 但我似乎误解了直接论据在这里是如何运作的,因为这不起作用。

显然,我不能像这样使用关键字参数:

filter_('crop', w=1/2*in_w, h=1/2*in_h)

因为它们被解释为未定义的名称。

1 个答案:

答案 0 :(得分:0)

我其实很亲密。在测试更多可能性时,我发现我需要做的就是将关键字发送为字符串:

(ffmpeg
 .input("input.mp4")
 .filter_('crop', w='1/2*in_w', h='1/2*in_h')
 .output("output.mp4")
 .run()
 )