Page 1 of 1

Could Handbrake scale the number of threads automatically?

Posted: Wed Nov 30, 2022 9:18 am
by Silent_Strider
Description of problem or question:
I'm transcoding videos from various sources (e.g. DVD and BluRay/UHD). It comes in handy, that I can transcode multiple videos (to (x265) at once with my Ryzen 9 3900X.

Though where e.g. with BluRay movies, one movie usually uses half of my CPU for transcoding (and thus two movies at the same time use my CPU fully) it is different with DVD material, which usually only takes around 20-30% per transcode. Now even these transcodes sometimes can take a while (especially when deinterlacing), like 5 hours and more.

My "problem" now is, that I for example yesterday morning came back to the computer (which run through the night), only to realize, there are two encodes running which only use like 40-45% of my CPU. As this is kinda "wasted" CPU utilization, I wonder, if something can be implemented that do it better.

In my mind I had a few ideas:
- at the isolation setting split it up like "FullHD sources", "SD sources" and such so one can decide how many of those should be transcoded at once
- or let HB monitor the CPU usage and as long as it's not over e.g. 75% during a certain time (maybe few minutes) it spawns another process, and if it's going way over that with the new process it might suspend the transcode for later use

HandBrake version (e.g., 1.0.0):
1.5.1 (2022011000)

Operating system and version (e.g., Ubuntu 16.04 LTS, macOS 10.13 High Sierra, Windows 10 Creators Update):
Windows 10 Pro 21H2

Re: Could Handbrake scale the number of threads automatically?

Posted: Wed Nov 30, 2022 5:58 pm
by mduell
Given the impact of filters as you noted, not to mention encoder settings, doing this based on resolution would be of limited utility.