ffserver 的 AVOptionVideo cpu-used 选项有什么作用?

ffserver 的 AVOptionVideo cpu-used 选项有什么作用?

我在任何地方都找不到它,但是我看到的大多数 ffserver 配置文件都包含它 - 它有什么作用:

AVOptionVideo cpu-used 0

答案1

这是一个选项编码libvpx(Google 的 WebM 编码器)。这是一个特定于编解码器的选项,据我所知,其他任何编码器都​​没有使用过。

-cpu-used 0似乎是一个很好的默认设置,所以也许这就是人们将其包含在配置中的原因。

-cpu-used-quality仅当设置了选项时才可使用。因此,您可以将其与-quality good或 一起使用-quality rt。要查看选项列表,请运行ffmpeg -h full并查看libvpx部分。

以下是设置值的方法。

-quality good

-cpu-used的范围是 0 到 5。这设置了编码器相对于速度的行为。

VP8 文档

设置--cpu-used=1--cpu-used=2将进一步显著提高编码速度,但将开始对质量产生更明显的影响,也可能开始影响数据速率控制的准确性。

设置值 4 或 5 将关闭“率失真优化”,这对质量有很大影响,但也会大大加快编码器的速度。

禁用率失真优化会真正影响质量,因此除非绝对必要,否则不应设置此功能。

-quality rt

在此模式下,CPU/质量权衡由编码器选择。CPU 使用率计算如下:

目标 CPU 利用率 = (100*(16-CPU 使用率)/16)%

您可以-cpu-used在此处设置 0 至 15。

相关内容