How it is solved
The design is written once and solved per stage and per rate. These are the rules it is solved by, and the ones it is refused by.
What is derived from what
stop_hz (omitted) = entry rate - passband
the point where the first image begins
transition width = stop_hz - cutoff
tap count (auto) = solved from the transition width and stopband_db
(for kaiser and gaussian; the fixed windows need a tap count)
aliasing is avoided while stop_hz ≤ entry rate - passband- Moving the stopband down only improves image rejection, so it is allowed. Moving it above the derived value is refused.
- Higher rates give looser conditions, so a design that passes at the lowest target rate passes at the higher ones. The screen marks the row that decides whether you can save.
- The cutoff is the -6 dB point. Placing it halfway between the passband and the stopband puts the ceiling at half the sample rate.
Entry stage and exit stage
Absolute frequencies and tap counts apply to the entry stage only.
The exit stage solves its own transition width, which differs by orders of magnitude. Carrying an entry tap count down to it would band limit twice and inflate the cost for nothing.
The shaping is entry stage only for the same reason.
A high pass or a band stop is written in absolute frequencies, so it belongs where those frequencies mean what you wrote.
The band limit is always present.
It is the passband edge, and it cannot be removed. What you can do is move it, shape below it, and choose how sharply it is reached.
What a design is refused for
- The transition band does not fit: the top edge is too wide for that rate.
- The image is not suppressed enough. The attenuation actually reached is measured rather than assumed, because stopband_db is a request and a fixed window may not reach it. What leaks lands at frequencies unrelated to the music, so it is heard as something you did not put there.
- The stopband was moved above the derived value.
- Linear phase with an even tap count.
- The shaping falls outside the band limit.
CPU is never a reason to refuse.
The same design would pass on one machine and fail on another, and on a warm day and not a cool one. The forecast is shown; it is not a gate.
Latency is never a reason either.
The group delay of a linear phase filter is a pure delay across the whole band, so the sound itself is unchanged. It is displayed at all times instead.
A design declaring every rate is solved for both families at save time.
That is so the list never offers something that is certain to fail when you pick it.