答案1
-speed
是相同的-cpu-used
FFmpeg 源代码(libavcodec/libvpxenc.c
) 表明这-speed
是 的遗留别名-cpu_used
。
使用和-deadline
来-cpu-used
控制速度
-deadline
有 3 种模式:best
、good
和rt
。-cpu-used
选项可以调整每种模式以进一步调整速度。 的含义/值-cpu-used
取决于模式。
best
- 这通常能提供最佳质量的输出,但速度非常慢。一般来说,除非您有很多空闲时间,否则不建议使用此设置。good
- 如果您未设置,则这是默认值-deadline
。这将是大多数用户大多数时间应该使用的。在“良好”质量范围内,还有 6 个进一步的速度步骤可通过参数设置-cpu-used
(值从 0 到 5)。设置
-cpu-used 0
将提供通常非常接近甚至有时更好的质量-deadline best
,但编码器的运行速度通常会快两倍。设置
-cpu-used 1
或-cpu-used 2
将进一步显著提高编码速度,但将开始对质量产生更明显的影响,也可能开始影响数据速率控制的准确性。设置值 4 或 5 将关闭“率失真优化”,这对质量有很大影响,但也会大大加快编码器的速度。
rt
- 实时模式允许编码器自动调整速度与质量之间的平衡,以尝试达到特定的 CPU 利用率目标。在此模式下,参数-cpu-used
控制 %cpu 目标如下:target cpu utilisation = (100*(16-cpu-used)/16)%
-cpu-used
与 结合时的合法值为-deadline rt
(0-15)。值得注意的是,在实时模式下,编码质量将取决于特定剪辑或剪辑部分的难度以及编码机器的速度。因此,在此模式下,结果将因机器而异,甚至因您正在执行的其他操作而因运行而异。
来源:WebM 项目 | VP8 编码参数指南. 也应适用于 VP9。
请注意-quality
是 的旧别名-deadline
。