This should always be enabled, unless you really need to let Stereo Tool use only one core. By using multiple cores, about 70% more audio can be processed in the same amount of time.
This option has no effect on a PC with only one CPU core (and no hyperthreading), or (on Windows) if the environment flag NUMBER_OF_PROCESSORS is set to 1.
Process priority Give Stereo Tool's processing priority over other running programs.
Normally, all programs get a share of the available CPU resources. Which means that if you run a lot of heavy programs, Stereo Tool might not get enough CPU time to process everything in time and it might start to hiccup. Setting a higher priority here helps against that, but it may also cause other programs to be slowed down more.
If you use Stereo Tool for background listening, you should probably leave this turned off. If the audio is 'mission critical', this should be set to a high level.
Latency Controls audio output delay.
This setting controls how much audio Stereo Tool gets to work with. If it can work on bigger blocks of audio, the resulting output quality is usually better. But if you are talking through a microphone and listening to yourself on a headphone, too much delay can be annoying.
For the best quality, and definitely in all cases where the delay does not matter, use the maximum setting (4096 samples, around 93 ms, depending on the sample rate). A good compromise between latency and quality is setting 1024 (23 ms), which gives a total latency of about 28 ms (this includes sound card delays and the time needed to process the audio).
Each reduction of the latency by half makes the artifacts caused at lower latencies 4 times as loud. Which means that the step from 4096 to 1024 is smaller than that from 1024 to 512! At latency 512 (12 ms, 17 ms total latency) the audio quality really suffers.
The stand alone version of Stereo Tool has an extra LQ Low Latency monitoring output which offers a total latency of 11 ms.
Note: The quality is also very strongly affected by the Dynamically reduce deep bass to setting, especially at lower latencies.
Quality (CPU load) Global CPU load control
Allows lowering the CPU load at the expense of a degradation in audio quality. For every 10% the Quality slider is below 100%, the CPU load is reduced by 5% - so at the lowest setting of 20% the CPU load is 60% of that at Quality 100%.
At the maximum Latency setting, Quality has very little effect and a value of around 50% is acceptable for most people. At lower Latency settings, the effect on the audio (especially bass) is much bigger.
Display refresh speed (CPU load) Controls how often the display is refreshed.
Lowering the refresh rate slightly lowers the CPU load (more so if the window is very big), and it also helps a lot when using a remote connection to a pc running Stereo Tool.
Ignore high frequencies Throws high frequencies away to reduce CPU load.
Doing this for FM or for streaming has no effect on the audio quality if the Frequency is set higher than the Lowpass frequency. One exception is that for Stokkemask, a minimum frequency of 19200 must be set. The CPU load reduction can be upto 30%, depending on the settings. Using this setting does increase the latency a bit (also upto 30%).
Frequency The frequency above which tones are ignored.
CPU core affinities panel Controls the CPU core affinities.
Setting the CPU core affinities is useful for low latency processing, because it makes the behavior predictable. Beside that, it is also usable when you run a lot of different Stereo Tool instances or other software on one pc, in that case you can give each instance its own core or cores.
By default, if these settings are left to Any, the OS (Windows, Linux, Mac OS X) will control what runs on which core.
For optimal performance and low latencies, use these guidelines:
Try to avoid Core 0. Core 0 is used by drivers, which means that when using core 0 at very low latencies, you run a risk of getting hiccups.
When using a system that has Hyperthreading, assign Processing main and Processing 2nd to virtual cores that don't share the same physical cores. On most systems, that means that you should avoid combining core 0 with 1, core 2 with 3, core 4 with 5 etc. Also note that the fact that drivers use core 0 might also makes the core 1 performance less constant.
So, if you have a system with 4 cores with Hyperthreading, then Windows will see 8 cores, and you should normally select for example cores 2 and 4 for Processing main and Processing 2nd, and core 0 for Link error '3007' and Link error '3008' things that are non-critical.
Processing main Main processing core affinity.
This core will perform about 60-70% of all the processing tasks.
Windows only: Set to Mask if you want to use an affinity Mask that leaves part of the control to Windows.
Percentage of time in GUI display panel Shows time spent to display the GUI.
See Percentage of time in processing (top is incl. overhead). This graph is less useful because it doesn't show actual CPU usage - in fact, since the GUI thread runs at a lower priority a lot of the time that's displayed might be spent waiting for other programs.
If only Stereo Tool is running on a system which has enough CPU cores available it will show something that's close to the actual CPU usage of the GUI.