Does genre or something else determine which works best?
I don’t use fade ins or fade outs much but if I do it will be longish fades on light classical or soft rock. I always prefer Cross Fade In to Fade In so I would miss Cross Fade In if removed with no non-GUI replacement.
Again we’ll have to see. Most of the positive feedback I’ve seen for Text Envelope is from sighted people who find Envelope Tool to “fiddly”, “imprecise” or who can’t use a mouse.
I think the demand probably is there but some of it comes from limitations in Envelope Tool.
The main difficulty people may have with multiple envelope points in a text entry box is in visualising where they need the control points to go. That’s a major drawback as Nyquist cannot make a graphic display. Nonetheless basic users can probably just ignore a single text entry box, in the same way they no doubt ignore the smoothing controls in Noise Removal.
All I’m saying is that if we advocate removal of the two “Cross Fades” we should be prepared to say what could be considered as an actual Nyquist Cross-Fade. It we are not asked, fine, but I am keen to see either a Nyquist Cross-Fade shipped in Audacity or some commitment to developing a C++ version.
Hyphenated? That also distinguishes it from the impostor Cross Fades we have now.
Can you explain how the Equal Power and DJ Curve differ? It may not be obvious from the names that the DJ Curve could be identical to the two “Cross Fades”, but more obvious that the Equal Power fade could be.
The text in Wiki Feature Requests that has attracted 26 votes so far says
New controls for start and end amplitude - quick linear fade from say 0.8 to 0.2, much simpler and quicker than the Envelope Tool (and VI-accessible)
Again, I’m seeing there the implicit possibility of multiple envelope points being “popular”, though only four people have explicitly voted for that so far.
I’d say that fade-ins are a lot less common than fade outs. Mostly when I use them it’s not really a “fade in” (from silence) but a cross-fade from something else. Often I’ll try to find a “natural” sounding start point in the recording and then apply a very short fade to give a lean start to the sound. Occasionally I might want a slow ethereal fade of atmospheric music and then I’ll want a fade that starts very gradually. Other times I’ll want something to start fading much quicker (like the “cross fade in”). I really don’t have any hard and fast rules about it - for me it’s just about how it sounds. Often I’ll try a linear fade, then listen to it - if it seems too abrupt I’ll apply the linear fade a couple more times to make it more tapered at the start. If it doesn’t seem “definite” enough at the beginning, I’ll Undo and apply a fade that’s curved the other way (louder mid-fade than linear).
Forget the name “DJ Curve” - I think that just “Variable” is better name, and then for the “modifier” slider to be called “Variable Curve (+/- 100): <------|------->”
I can code that in and then we can decide if we want to comment it out or leave it in. It’s really a question of whether it’s worth the additional complexity.
I’d like to come to an agreement about the specification now, rather than wait another 2 years.
Taking into account arbitrary gain levels at the start and the end of the fade;
Many of the terms used in my previous suggestion become meaningless. “Fade In” and “Fade Out” are defined by the Initial / Final gain levels.
Are these the features that we want?
Choice of dB or % (default dB)
Initial Gain level (text box)
Final Gain level (text box)
Smooth (“S” shaped) based on a sine curve
Mid Fade Boost (curve modifier +/- 100)
If we need (1) Choice of dB or %, then (2) and (3) will need to be text boxes because we want to allow fading “up” as well as down, so for dB we need a range of say -100 to +12 and for linear (%) we need a range of 0 to +400.
Personally I’d rather not have item (1), then (2) and (3) can be sliders (which many users find more convenient, but text entry is still available).
So my preferred feature list is:
Initial Gain level (slider -100 to +24 dB)
Final Gain level (slider -100 to +24 dB)
Smooth (“S” shaped) based on a sine curve
Mid Fade Boost/Cut (curve modifier +/- 100)
For a fade shape the same as the “Cross Fade In / Out” effects, => “Linear” with a mid fade boost of +50%
For an “Equal Power” fade => Smooth with a mid fade boost of +50%
For a “logarithmic” approximation => Linear with mid fade cut.
It is not a pure Fade plug-in , that’s only a side effect or bonus. The automatic volume control from above is removed in this version. The loudness correction can now be chosen in 4 levels in a multichoice control, ranging from equal gain to equal power.
That’s essentially the same as your modifier does.
It also has 7 fade types. I like a large variety from where to choose from. I think, it is less the number of curves that is important but rather their order i.e. much used to scarcely used. Hope you enjoy my plug-in.
Sorry but I think we need %, especially when the default waveform is not in dB and you say you want this to be “mass appeal”. Even the “0.8 to 0.2” in the Feature Requests implies to me people are thinking of %, not dB.
As an alternative, you could still have sliders for dB initial and final gain, then a text box for an initial/final % pair. I assume a non-empty box could disable the dB slider input in the same way that a dB / % control could?
That suggests to me the Mid-Fade Boost would become almost mandatory, maybe even with a non-zero default.
Would it not be better to offer “Log” and "Equal Power " as presets which normally don’t need slider modification (again, if this is to be “mass appeal”)?
If the “Cross Fade” shape we ship now is useful, what descriptive label would that have?
My Two Cents: From the standpoint of “What goes into the menus?” I would suggest:
– Above the Line: Fade In / Fade Out (linear, as exists now)
– Below the Line: Enhanced Fader (handles fade-in and -out, with plenty of options and “sensible” defaults)
My goal would be to have the Simple effect and the Complicated effect, and the complicated one can have various levels of complexity, beginning with a bunch of presets: Cross-Fade Out, Intrusive Fade-In, etc. Below that, all the sliders one could ask for: Beginning/Ending Gain, Shape, Sub-Spheric Slope, Worn/Noisy Fader, etc.
I’m in favor of making it simple for the simple and/or undemanding cases, and complicated for the complicated and/or exacting cases… and I include myself in both categories!
An accurate description would be “Square root of linear ramp” or “linear ramp to the power 0.5”.
A more friendly name might be something like “power curve”?
So is that also a feature request for Amplify and Normalize effects?
Yes a non-empty box could disable the dB slider, but controls that are sometimes functional and sometimes not functional (with no visual indication such as greying out the control) is not at all intuitive imho.
What’s the problem with going for a relatively simple “more versatile fade” effect for now, then adding more features if required later?
Taking the approach of “nothing until it is perfect” has gone nowhere for over 2 years.
Compared to a linear fade, the “square root of linear ramp” fade can be thought of as a “strong” fade in that it is “louder” than a linear fade.
(The name does fit with the fact that it is a linear ramp “to the power of” 0.5)
How about “Legacy Curve” as it is handed down from the former “Cross Fade In / Out” effects?
Any better suggestions?
A “fade” is an “amplification” effect (increasing or decreasing but not constant).
A feature request that has not gained sufficient support to be implemented.
Imho, a major problem, especially for novice users, of using linear values (0 to 1 or %) is that it encourages confusion with absolute values, especially for “Amplification” and “partial” fades.
Although some novice users may have difficulty understanding what “Amplify by -12 dB” means, I think there is even greater room for confusion if a linear scale is used. For example, if “Amplification” was set to 0.25 I’m sure that a lot of novice users would expect the output to have a peak level of 0.25 (the old “target level” issue). Other novice users may expect that the peak output level would be 0.75 (again wrong). Of course what "Amplify by 0.25 (linear) would actually means is “Amplify by -12.079 dB”.
There are too many conflicting features to be implemented in a single, simple Nyquist plug-in.
By far the most common fades are those that are “from silence to original level” and “from original level to silence” so I think that it is worth having these as defaults.
The problem with offering a choice of dB or % is that:
-inf dB (could use -100 dB) = 0% linear (silence)
-6 dB = 50 % linear (half gain)
0 dB = 100 % linear (unity gain)
+6 dB = 200 % linear (double peak level)
+24 dB = 1581 % linear.
so instead of offering one control to set the gain, we need either:
One control to select the units, one to select the dB gain and one to select the % gain, one of which is inactive (but not greyed out) depending on the setting of the “units” control.
One control to select the dB gain and one to select the % gain, one of which is inactive if the other is set to a specified value (for example an empty text input).
A text input box in which the user specifies the gain in dB or % using the appropriate syntax (for example “-2.5 dB” but not “-2,5 dB” or “-2.5dB” or “dB -2.5” or “- 2.5 dB” etc.)
So we are replacing one simple control for something much more complicated with no additional functionality whatsoever.
I’ve called this plug-in “Adjustable Fade” (think “adjustable spanner” - a tool that can be adjusted to fit the job in hand).
It has 5 presets that can fade-in from silence to unity gain or fade-out from unity gain to silence.
The presets are:
Linear: A linear fade like the standard Audacity Fade effect.
Logarithmic: A logarithmic fade similar to using the Envelope Tool.
Eq Power +3 dB: A 1/4 cycle Sine curve (+3 dB higher at the mid-fade position than a linear fade, suitable for “equal power” cross-fades)
Sine ‘S’ Curve: A raised sine/cosine curve that has an “S” (bell) shape.
Legacy Curve +3 dB: Square root of a linear ramp - the same as the old Cross Fade In/Out
When a preset is selected, the sliders do nothing (but sadly cannot be grayed out)
There are also 2 “custom” fades:
Custom Curve: A simple curve that may be “flexed” so that the mid fade level is higher or lower than the mid-fade level of a linear fade. The main use of this custom curve type is to allow a fade from/to silence to be “contoured” to the required attack or decay characteristics.
Custom ‘S’ Curve: A “double” curve based on the “Sine ‘S’ Curve”. The main purpose of this fade is to provide smooth transitions from one gain level to another. By applying this type of fade sequentially to sections of a track, the level may be raised / lowered as required in a manner that would require dozens of envelope points to achieve.
When either of the custom curves are selected, the slider controls are active.
Fade Direction: choice “Fade Up” or “Fade Down”
As Nyquist plug-ins do not have logarithmic sliders, -100 dB is taken to mean absolute silence.
Maximum Gain (dB): (0 to +50 dB - default 0 dB) Sets the maximum amount of amplification (the “loud” end of the fade).
Minimum Gain (dB): (-100 to 0 dB - default -100 dB) Sets the minimum amount of amplification (the “quiet” end of the fade).
Curve (+/- 1): (default 0) This is a similar idea to the “curve control” found on DJ mixing desks. It affects the shape of both Custom fade types.
Custom Curve: When set at 0 the fade shape is linear. When increased to a positive value, the mid-point level of the curve is increased. When set to a negative value, the curve becomes flexed the other way like a logarithmic curve.
Custom ‘S’ Curve: When set at 0 the fade shape is the same as the “Sine ‘S’ Curve”. When increased to a positive value, the mid-point level of the curve is increased until the curve becomes entirely “convex”. When set to a negative value, the mid-curve level is decreased so that it is at a low level for longer.
To allow greater flexibility for “advanced” users, the slider controls will accept values outside of the slider range without restriction.
This fade plug-in provides a great deal of power and flexibility that is absent from the current Audacity effects. The “Legacy Curve” provides backward compatibility for anyone that liked the old Cross Fade In / Out effects, and the presets offer a good selection of quick and easy “standard” fade types. adjustable-fade.ny (2.85 KB)
Thanks, Steve. I hope the following doesn’t seem too negative.
Even more meaningless?
To be most understandable, perhaps you want the name to give some indication of what it “sounds” like? Or (less good), what it is “shaped” like? Or something like “Eq Power for Cross-Fade”?
That is the point - the “%” is more important for increasing and decreasing. The normal fade is to or from 100%, which is easily understood, hence the “requests” for % (which I agree may be based on oversimplified thinking).
For Normalize, there should be little problem with linear 0 to 1.
For Amplify, I suspect this would have to be implemented only on the “target level”. So for “New Peak Amplitude (dB)” in “Amplify”, user would type in “0.5” to go to a peak of -6 dB. If the current peak was 0 dB, then “Amplification (dB)” would still give -6 dB. If the current peak was -12 dB and user types “0.5” in “New Peak Amplitude”, then “Amplification (dB)” shows 6 dB as now.
Maybe if Amplify had the linear option enabled, “Amplification (dB)” would also show the linear equivalent, but it would have to show the dB change as now.
I would think seeing that a “New Peak Amplitude” of 0.5 required - 6 dB from Full Scale would be quite educational.
It’s hardly “simple” now, compared to “Fade by dB”.
True, but the expressed feature request is for partial fades (including requests for a % choice).
One could argue that the curve slider is the “un-necessary” control in a “simple” effect. There is no evidence on Feature Requests of a desire for exotic and highly customisable fade shapes, just a linear/log choice.
I suspect the majority who can grasp that classic Fade In is 0 to 100% and Fade Out 100% to 0% (but not grasp why +6 dB needs +200%) would not go outside 0 to 100%. They are envisaging % of original volume. If they fade in a sound that has a peak of -12 dB, they are not expecting in this effect that the end of the fade will be louder than -12 dB, any more than with classic Fade In.
All of which is perfectly expected for Nyquist plug-ins and (I think) rarely causes user issues?
The additional functionality gained is the requested % choice.
I haven’t done testing in detail yet. I deliberately did not read your explanation of the controls beforehand. It took me 10 minutes until I realised you had to select a “Custom” curve to even use this for the feature request of doing a partial fade. I can make a partial log fade (I believe) in Envelope Tool. Why not in this plug-in? Once again, we seem not to be providing what has been asked for?
When I finally worked out that you have to use a custom shape to do a partial fade, I then cannot set the “Maximum” or “Minimum” slider to negative or positive values respectively without typing. Hmm. I would argue per the above that even if we had % units we could assume most users wouldn’t go outside 0 to 100%. Where the units are dB, not being able to retain a negative value for “Maximum” really seems restrictive.
I was almost about to question if we even needed the “Fade Direction” control. I found that initially confusing, allied with a “Maximum” and “Minimum” control. For my partial fade usage, sliders for Left Gain and Right Gain would be much easier. The big downside of that would be that for the non-default fade direction, you would have to move two sliders, which is probably unacceptable.
All in all then, it looks like Text Envelope is now essential, and the current plug-in should perhaps be simplified to use a single gain control as in Fade by dB (which saves the potential maximum/minimum confusion).
To (hopefully) save confusion I’ll respond to the comments about the “Adjustable Fade” plug-in in my next post separately from your other comments.
Normalize could have 2 (linked) text boxes, one for dB and one for linear (0 = silence, 1 = full scale) such that entering a value in either one of the boxes updates the other box to the equivalent level. That feature could be instructive for new users in showing the relationship between dBFS and linear, (though I think that the “dB” box would need to indicate “Full Scale” in some way).
To me, this makes a lot more sense than showing normalize as a percentage, so I’m somewhat surprised that there is a feature request for: “Normalization:
Percentages: Would it be possible to have a percentage normalisation option (as an alternative to decibels)? Many people have problems with decibels. (3 votes)”
but there is no feature request for Normalization on linear scale.
Normalization as a percentage is still confusing unless it specifies what it is a percentage of. I presume that it means a percentage of full scale, but unless specified it could be misinterpreted as a percentage of the original level.
I might be tempted to vote in favour of 2 (linked) text boxes, one for dB and one for linear (0 = silence, 1 = full scale) in the Normalize effect
This works for Normalize because it is specifying a target level, which is also why it is problematic for a fade effect (as discussed exhaustively previously).
Yes, exactly my point.
That’s a “requested feature”, not “requested functionality”. “Functionality” is about what a thing can do.
If a GUI provides multiple ways of achieving the same result, it is still “the same result”.
In the Audacity “Selection Toolbar”, alternative time units may be selected - in this case the user can select “one” from a multiple choice selection of units. The choice of units can be selected to suit the task in hand and there are clear advantages to selecting appropriate units - for example if splitting on CDDA frames is required then one of the CDDA frame options is clearly beneficial. In this case there IS an increase in functionality because selections can “Snap To” the selected units. In the absence of “Snap To”, alternative units may still provide a “helpful guide”, but there would be no “functional” benefit. Of course there is a significant difference here to what can be provided in a Nyquist plug-in in that the time selection boxes change according to which units are selected - it would be awful is the Selection Toolbar displayed all of the time selection boxes all of the time (16 Start Time boxes, 16 End/Length boxes, 16 Audio Position boxes), though it could have the same functionality.
Due to limitations in the Audacity / Nyquist interface, any advantage gained through offering multiple methods of entering the same user input needs to be balanced against the increased complexity that will inevitably be required in the Interface. If an alternative method provides additional functionality (for example the “Snap To” feature in the Selection Toolbar) then there may be a stronger case for tolerating the complexity, but in the absence of adding functionality, the case is much weaker.
The fade shape is not really ideal for cross-fades because the “narrow end” of the fade rises too rapidly. The “Eq Power +3dB” fade will usually be better for that.
Personally I’d be happy to drop that option altogether as I don’t find it particularly useful, but if we must keep it:
“Cross Fade In/Out”?
This retains the original name as currently used in Audacity.
Disadvantage: It’s a bad name because it does not do what it says on the tin - it is not a cross-fade effect.
“Legacy Cross Fade”?
One disadvantage of that name is that (on my computer) it does not display fully when selected, but shows as “Legacy Cross Fad”.
Another disadvantage is that it retains the problem that it suggests “cross-fading”, though perhaps not quite as bad.
The advantage of that name is that, as the option is provided primarily as a legacy feature and the name may be familiar to users that are looking for the old “Cross Fade”.
Pretty non-descriptive, but user’s can try it and use it if they like it.
Alternative suggestions are open to anyone.
I disagree. I think it is ambiguous.
A user that has not read the instructions (most users) may well expect that 100% means “full scale” rather than “unity gain”.
and may even be based on the misconception that “full scale” is the same as “unity gain” (which is only the case if the original peak level is 0 dBFS).
There is a clear user case for every feature of this plug-in. In comparison, the “Fade by dB” effect is very limited.
I think that it would be a poor strategy to remove functionality to make room for a feature that only duplicates an existing feature, even if it is a requested feature. At some point we must make a design decision about which features to include, and in my mind “must have” functionality should take precedence “would like” enhancements.
The plug-in could have some features disabled, but the consequence will be that it loses some functionality.
Then we can lose the “Cross Fade In / Out” fade shapes?
The “curve slider” is hardly an “exotic” feature - it simply allows the fade to be more curved or less curved.
It may not be explicitly stated on the feature request page, but “Linear/Log” choices are insufficient as creating a cross-fade between uncorrelated sounds will “dip” in volume mid way through the cross-fade. Every other audio editor that I have used has an option to create a fade in which the mid-point of the fade is higher than that of a linear fade. This is a feature that is badly missing from Audacity as currently it can only be achieved using the (very fiddly) envelope tool.
Very often with a fade-in, it is desirable for the audio to initially fade in quite rapidly, then more gradually as it approaches unity gain. The ability to do so is arguably more important than logarithmic fades.
A “logarithmic fade” is not "one thing. Consider the following fade shapes, they are both of a logarithmic “type” but sound very different:
Similarly, these “convex” shapes sound very different:
The right fade for the job depends on what the job is. We could remove the “curve” control and replace it with more preset options, but given the difficulty in describing fade shapes it is possibly simpler to offer an adjustable curve.
That is why the first control is called “Preset or Custom”.
Would it be clearer to write “Preset OR Custom”?
Any other ideas how to make it clearer?
Perhaps another “choice” menu so that we have:
Adjustable fade or Preset: [Adjustable / Preset]
Preset fade selection: [Linear / Logarithmic / Eq Power +3 dB / Sine ‘S’ Curve]
The disadvantage is that it is one more control that needs to be set when changing the fade type and so slows down the work-flow.
That’s not true. The “Minimum Gain” slider has a range from -100 dB to 0 dB.
The situation where “Maximum Gain” and “Minimum Gain” need to be both positive or both negative is, I believe very much a fringe case, but nevertheless may occasionally be required. The plug-in therefore does allow both controls to be set to positive or both to negative values, but the slider range caters for the much more common case of Maximum Gain >= 0 dB and Minimum Gain <= 0 dB.
Am I mistaken? Is there a common user case where both maximum and minimum gains need to be greater than zero or less than zero, AND where it is useful for that setting to be retained by the interface?
What if a user has a recording that has a peak level that is substantially less than - 6 dB (it is not uncommon in live recordings for the peak level to be -12 dB or less) and they want to fade up the level close to 0 dB? That may require +10 dB or more gain which is a little over 300%.
A common complaint about the Envelope Tool is that it provides a maximum of +6 dB boost (x 200%) which for many users is not enough.
Is this a philosophical or a practical complaint?
What is the user case?
For what I expect to be a fringe case, the plug-in allows text input of any numerical value.
Yes. A major benefit for having a “Fade Direction” control is that it is extremely convenient for fading up and then down again, or fading down and then up again.
A typical usage might be if a user is making a speech and music podcast and wishes to manually (rather than using Auto Duck) fade down the music during the talking.
In this case they can:
Fade down the music to (say) -12 dB.
Select the next section and Amplify to -12 dB (or use the “Adjustable Fade” and type in “-12” into the Maximum Gain control).
Select the next section and change the direction of the fade to “Fade Up” - note that if they used the Adjustable Fade effect in step 2, the “Maximum Gain” will have reverted to 0 dB, which is what they need it to be.
Perhaps I have upset you by being too argumentative, but I don’t think that you have given this plug-in a fair trial (though I do very much appreciate your feedback). For practical work, this plug-in seems to work very well indeed. The most commonly used features can be set in just a couple of clicks and it also provides a great deal of flexibility for “power users”. Apart from the “%” option, I think that it provides all of the features that you have asked:
Preset fade shapes for linear/log/equal power fades.
Only one item in the Audacity Effects menu .
Includes a preset to replace the old “Cross Fade In/Out”.
Partial fade to arbitrary level.
Fade up above unity gain.
Provides a wide range of fade levels without an additional “multiplier” control.
Fade direction is reversible.
It is accessible for visually impaired users.
The two additional features are:
Adjustable fade shape (“curve” control) - provides greatly enhanced control over the fade shape with just one additional slider. Novice users can leave this at the default zero setting. If this feature is a blocker, I can comment it out, though I expect that many users will find it very useful and may even like to see this feature developed further.
Preset for raised cosine curve (“S” curve) which is a favourite curve shape for many people but unavailable elsewhere in Audacity.
If you consider this plug-in to be too complicated, please say which features need to be removed to make it acceptable.
The main problem that I see with this effect is in making it clear that the sliders only affect the “Custom” options.
Ideally, the sliders would be greyed out when preset fades are selected, but that is not currently available.
Is there another way that we can make this more clear?
I’ve made some suggestions above but there could be other solutions:
Rename the “Preset or Custom” control name.
Rename the “Preset or Custom” options.
Add an empty line between the Preset options and the Custom options in the “Preset or Custom” menu. Unfortunately the blank line would be selectable, so this could cause more confusion that it resolves.
Make ALL of the options adjustable. Unfortunately this would introduce other issues that may or may not be acceptable:
A “linear” fade is not “linear” if the “Curve” is not zero.
An “Equal Power” curve is not “equal power” unless the fade is between unity gain and silence.
Creating a (most commonly used) fade between unity gain and silence will require setting all of the controls rather than simply selecting the required preset.
Add “Custom fades only” to the names of the slider controls (possibly on a second line).
+1 must-have for Pro-fade (or whatever we call it going forward) becoming part of the standard distribution.
This thread has broadened out from its simpler start into a discussion on a “Fade Manager’s Workbench” - and useful as that might be, it does deflect from the simple, quick-win, implementation of the musical fade-out that Steve’s Pro-fade supplies so simply and effortlessly for the user.
This is a cut down version of “Adjustable Fade”.
It loses quite a lot of features but the controls are more descriptive and the minimum gain level may be specified as a percentage.
If we want to go for something more like this, the “full” version could be made available on the wiki.
As this version is not very “adjustable” it would probably need a different name.
This is not intended to be a “release ready” version but rather an enquiry as to whether this is the direction that we want to go. adjustable-fade_cut_down_version.ny (3.36 KB)
Would the old “Fade by dB” be preferred if it included an option for logarithmic fades?
I recall that the +/- slider option for determining the fade direction was not popular, but that could be changed to either, a “Fade direction” control, or by having separate options for Fade In (lin), Fade Out (lin), Fade In (log), Fade Out (log).
While these offerings are a lot less functional that the previous “Adjustable Fade”, they still offer useful features that are not currently available in Audacity.
I’m not upset, I was so far deliberately considering the first (non-dumbed down) version for suitability for the requested customizable partial fades and not for the excellent (largely unrequested) features you added. I can see the value of the “Curve” slider but I am unsure whether many will understand or take advantage of it as presented.
I can’t respond to every point right now, but it seems (leaving aside standalones like Pro Fade) that we need two more GUI plug-ins here. Both could be “fairly advanced” (a text envelope and your first adjustable fade) or one “fairly dumbed down” (to be discussed) and the other “all the bells and whistles bundled in” even if it makes for a longish interface.
My instinct was always to make a “fairly dumbed down” one that meets the expressed partial fade (including %) and text envelope (multiple points) requests without getting too wrapped up in “shape” options (because this is probably hardest to understand for many). If we did this it means we could possibly get away without shipping the other “bells and whistles” plug-in if we must (though I’d rather ship both). Of course this idea could still be impractical for coding or interface reasons; I suspect you have already decided it is impractical.
I agree the big problem with the first adjustable fade is that the sliders have no effect for the preset “shapes”. I think this is the current “blocker” rather than the curve slider. I stumbled here because I autoassumed all shapes could support custom dB values - I think that some of the shapes still can, or at least a restricted set of values, is that so? So a secondary “serious issue” is either that there are not enough presets, or that you cannot customise some fade shapes where I think there is reasonable expectation you should (I’m thinking of logarithmic).
A related third problem is that I don’t think the first version is versatile enough as a two-point partial fade tool. I appreciate that is not its main point but it still means we must get a second plug-in into Audacity to support the known requests.
The reason I suggested going back to something as basic as “Fade by dB” is that a third option would be to develop an adjustable fade/envelope tool in C++. Making a very useful combined tool that way would be much easier because many of the Nyquist restrictions would not apply. However I think “bird in the bush” probably applies and there won’t be any such C++ tool in the foreseeable future.
I’m not offering any solutions right now (maybe in 24 -36 hours) but I hope the above may clarify where I’m coming from.
You may have been thrown off by the fact that most of the previous incarnations did support the “modifier” slider controls for all fade types.
In this respect the (full) “Adjustable Fade” was different from previous versions in that, for convenience and ease of use, it offered non-adjustable preset fades for the most common task of fading to/from silence.
The most problematic aspect of fade shapes is that users cannot “see” the fade shape, so it needs to be described in (few) words.
Other programs have interactive visual feedback when adjusting the fade shape, but Audacity/Nyquist cannot do this.
Apart from not being able to do this, there is also a down-side to this approach in that it is not accessible for visually impaired users, or other users that do not use a pointing device. Even if a C++ implementation provided visual feedback in this way, there would still need to be an accessible way of adjusting the curve.
From a programming viewpoint, any curve shape could be made adjustable. The problem with doing so is that it may then conflict with the “name” of the shape.
If a “linear fade” is bent into a curve, then it is no longer a linear fade.
If the start or end points of an “Equal Power” fade are changed, then it is no longer an “Equal Power” fade.
Changing the amount of curvature of an “S” shaped curve, may cause it to become “C” shaped.
Without visual feedback it is difficult to describe clearly what will happen.
The terminology is complicated further by the fact that the Audacity documentation refers to this as a “logarithmic” fade:
The above fade is actually an “exponential” decay. (Exponential is the inverse of logarithmic).
The source of this confusion is that the fade occurs against a logarithmic scale, but the actual curve that is produced is exponential.
We could go a long way toward mitigating this “naming” problem if we could find an easy to understand way to describe which way a curve bends.
How can curves that bend this way:
be clearly distinguished from curves that bend this way: