Plex Transcoder Nice Priority

I’d like to suggest changing the current “nice” level of the Plex Transcoder to something slightly lower (thus at a higher priority) than 19/20 (I have 20 on my freebsd machine, but my linux machine has a max nice level of 19), such as something between 16-18. It looks like the only other Plex process with a nice level set is the system plugin (com.plexapp.system) at 15; everything else seems to run at nice level 0.

Another suggestion would be to shift the system process to 10 and have the transcoder run at 15, allowing for a bit more granularity. I don’t know what the standard is for niceness levels for low priority processes, but BOINC, as one example, runs at nice level 10.

In my case, I have other low priority transcoding jobs running at nice priority 19/20, and I’d prefer the Plex transcoder have more priority than those jobs. Thanks!

I saw this hidden setting

BackgroundTranscodeLowPriority    1/0     Makes background transcodes lower priority than streaming when set to 1

and I wonder if you could investigate how it affects your nice levels. I would agree with a feature where we could set the nice level rather than a boolean, e.g.

BackgroundTranscodePriority    integer [0...20]    Sets the background transcode priority level.  Default=10

‘Background transcodes’ are transcodes caused by ‘mobile sync’ and ‘optimization’ jobs.
This vwon’t change anything for regular “playback” transcodes.

I also observed inconsistent nice values while I was trying to understand a different issue.

I might have some of these details wrong, and this isn’t a complete list. I’m not asking for granular controls - it would be easy to micro-manage these without much benefit.

I was mostly surprised by some of the values relative to each other, and in a few places where nice values aren’t set at all.

A Plex Transcoder process doing streaming video transcoding gets the maximum, most polite 20 nice value (on FreeBSD). It surprised me that this was 20 because streaming clients are dependent on these.

I observed another Plex Transcoder process doing streaming audio transcoding (& video remux, not transcode) with the default nice value of 0.

For background media optimization jobs that don’t need EAE, the Plex Transcoder gets a nice value of 20. But if the optimization job uses EAE (has AC3+), the Plex Transcoder gets a nice value of 7. Weird. Lucky, I guess! :four_leaf_clover:

If Run scanner tasks at a lower priority is enabled, then the Plex Transcoder processes that do video preview thumbnail generation get a nice value of 15. If that setting is disabled, they run at the default 0.

Plex Transcoder workers doing audio extraction for Intro Detection, as well as the Plex Media Fingerprinter processes, don’t appear to obey Run scanner tasks at a lower priority. They get the default nice of 0.