我最近开始使用 HandBrake 来处理我下载的一些视频,以使它们更轻。我使用 CLI 版本构建了一个小型 python GUI 程序来自动化处理。我正在做的是根据视频生成命令并使用 os.system 执行它。像这样的东西:
import os
def process(args):
#some algorithm to generate cmd using args
cmd = "handbrakecli -i raw_video.mp4 -o video.mp4 -O -e x264" #example command
os.system(cmd)
os.remove("raw_video.mp4")
该代码运行良好,但问题是我的 CPU 过度使用。通常,这会在相当长的时间内占用 100% 的 CPU 使用率。我使用程序 CoreTemp 来跟踪我的处理器温度,通常它会达到 78 °C。
我尝试通过将 cmd 命令保存到一个名为 exec.bat 的批处理文件中来使用BESos.system("BES_1.7.7\BES.exe -J -m exec.exe 20")
(Battle Encoder Shirase) ,但这根本没有任何作用。
速度根本不重要。即使需要更长的时间,我只想使用更少的 CPU,大约 50% 会很棒。知道我该怎么做吗?