【问题标题】:How to restrict ffmpeg to use only 50% of my CPU?如何限制 ffmpeg 仅使用我的 CPU 的 50%?
【发布时间】:2016-09-21 15:35:16
【问题描述】:

我正在使用 ffmpeg 通过 UDP 流式传输我的桌面,但我的问题是 ffmpeg 的进程在整个运行期间总是占用 100% cpu,其他应用程序没有空间,我的问题是如何限制 ffmpeg 的进程只占用 50 -60% 的 CPU ?

我的 CPU 是单核的 2GB内存

【问题讨论】:

  • 你使用的是什么操作系统?
  • 实际有多少 CPU 用于进程取决于操作系统任务调度程序,基于优先级。不过,其他更重要的任务应该先完成。
  • 大家好,感谢您的快速回复,我使用的是windows 7 os 32位,ffmpeg的优先级是正常的,我什至尝试过使用低优先级但它仍然占用了所有的cpu功率
  • @zukes 仍然需要 100% 的时间,直到出现更优先的竞争。当没有其他事情发生时,您不能将其设置为仅 50%。它不是那样工作的。它会达到 100%,直到你启动更优先的东西。此时 ffmpeg 可能会低于 50%

标签: ffmpeg


【解决方案1】:

FFMpeg 有一个选项-threads。您可以在此处定义是否为auto(默认),或者您可以限制使用的线程数(CPU 内核)。建议您根据可用线程数减 1 或 2 来设置数量。因此,如果您有 8 个线程,设置为 -threads 6 会很棒。但是如果你只有一个内核和 2 GB 的 RAM,我不确定是不是这样! FFMpeg 需要大量资源。

【讨论】:

  • How to change ffmpeg -threads settings,你必须把-threads x放在输出参数之前。
  • 奇数。它首先使用了所有 4 个内核的 100%。我使用了-threads 2,现在它使用了所有 4 个内核的 50%,而不是 2 个内核的 100%。
猜你喜欢
  • 2012-07-06
  • 2019-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-09-18
  • 1970-01-01
相关资源
最近更新 更多