What Filter Curve is this?

I do have a complaint.

I load a factory curve into Effect > Filter Curve. It arrives and its identity vanishes. It should announce somewhere in the frame what it is unless I change it.

Koz

I’ve logged this on the wiki:

Display curve name in Filter Curve EQ: > (2 votes 27Dec20) Only when unmodified preset is in use.

There may be an implementation difficulty: User presets are modified by users, so there is no fixed correlation between curve points and curve names. On using the Filter Curve EQ for the first time in a session, the only way that the effect could check if the current curve is a named user preset, would be to compare the curve points against every factory and user curve to see if the current curve matches. Alternatively the curve definitions could be modified to always include a curve name, but that would break backward compatibility.

A possible compromise might be that the displayed curve name only persists for the current session. That is, when you select a preset (factory preset or user preset), the name is displayed (possibly in the title bar) until either you change the curve, or restart Audacity.

the displayed curve name only persists for the current session.

Exactly what I’m trying to get away from.

I think you’re working too hard. Any user action in the effect resets the name. If you repeatedly execute the same effect, the name sticks. Load a different curve or touch any of the balls, Boom. No more name.

Koz

What I meant:

  1. Select a preset → Name is displayed
    If either:
    2a. Change any Eq setting
    2b. Close and relaunch Audacity
    then
    → Name reverts to some default text.

“2a” is something we want.
“2b” is something that will be hard to avoid, whether we want it or not.

I am minded to agree with Koz here that if either a Factory preset or a user preset is in play then it would be jolly useful to the user if the name of that preset was displayed in the dialog window.

I agree with Steve’s 2a that if the user changes any setting then the name gets reverted to “some default text” - is something that we want.

But I would also want to see 2b remembering and re-using the preset name.

Let us remember that if the user uses the effect with a factory preset or a user preset, closes Audacity and relaunches - Audacity perfectly well remembers the details of the parameter settings for the effect and deploys those as initial settings the next time the user users the effect. If Audacity can “remember” the parameter settings (stored in pluginsettings.cfg) then it should no be too hard to add a “Name” field there to be recalled too - “some default text” if it is not a factory preset or user preset.


But let us not forget that this issue is not restricted to just the two EQ effects - it is a much wider issue can apply to all Effects, Generators and Analyzers and some Tools. All of these can gain user presets and some, bit not many, also have a suite of Factory presets (Reverb is a good example). So for all of these it would be useful to show the named of the the preset if one is in play as the current setting for an EGAT.

Peter.

Yes Audacity remembers the parameters.
No Audacity does not remember that the parameters were set by selecting a preset.

Here’s an example of Filter Curve EQ parameters:

FilterCurve:f0="150" f1="300" FilterLength="8191" InterpolateLin="0" InterpolationMethod="B-spline" v0="-50" v1="0"

Notice that there is no mention of a preset name (even though this example is the “Bass Cut” factory preset).

I don’t see any obvious way that, on launching Audacity, Audacity could know if the parameters come from a preset or were user set.
During the current session it’s not a problem because we can simply set a variable to the name, but for that to be persistent beyond the current session, it would be necessary to write it to disk somewhere. It could perhaps be written to the audacity.cfg as the last used preset, but I don’t think that’s very robust, particularly as factory presets are translated into the current locale.

Adding this detail looks like a lot of developer effort for little real benefit. After all, you may not even want that preset in your next session, and if you do it’s only a couple of clicks to re-select it.

Adding this looks like just adding an extra parameet: Name=

If a Name exists that gets displayed in the effect dialog

If no name exists then Audacity displays en empty name field - or “some default text”

That doesn’t look like too much hard work to me …

Peter

We broke backward compatibility when we replaced the old Equalization effect with Filter Curve EQ. I’d be very reluctant to break backward compatibility again. (It would also break the EQ XML to TXT Converter)