我正在使用自动调色功能ffmpeg version n4.3.1-18-g6d886b6586 Copyright (c) 2000-2020 the FFmpeg developers
,并且想要在视频上使用自动调色功能。
根据pp(后处理)过滤器文档(第 11.172 节)我相信语法应该是这样的:
-vf "pp=al:f"
然而,当我尝试时,我得到了:
[Parsed_pp_1 @ 000000000736fb80] This syntax is deprecated. Use '|' to separate the list items ('al|f' instead of 'al:f')
[AVFilterGraph @ 00000000072b7700] Error initializing filter 'pp' with args 'al:f'
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
Conversion failed!
只要完全用引号引起来,此语法就可以起作用。
-vf "pp=al|f"
有人能解释一下为什么文档和实际工作之间存在脱节吗?
答案1
使用|
,不:
适用于此过滤器
这pp 过滤器文档说:
这些选项可以附加在子过滤器名称后面,以“|”分隔。
但是,文档后面有一个拼写错误。[:f/fullyrange]
应该是。在 2013 年更改为[|f/fullyrange]
时,无意中忘记更新 fullyrange 条目的文档。请参阅:
|
lavfi/pp:切换到基于 AVOptions 的系统。
如果你希望修复它,请发送补丁到 ffmpeg-devel 邮件列表或提交错误报告。