Cross-Fade (revisited)

I decided to have another go, starting from scratch, at making a replacement for the “Cross Fade In” and “Cross Fade Out” effects.

To use this plug-in, the tracks to be cross-faded will be placed end-to-end on the same track.
A selection is then made that includes the end of the first track and the start of the next track.
When applied, the Cross Fade effect applies a fade out to the audio at the beginning of the selection and a fade-in of the audio at the end of the selection. The fade-out and fade-in are then overlapped automatically to create the cross-fade.

The effect includes a couple of other features but I have aimed to make it as simple and easy to use as possible.

Obsolete version:
cross-fade.ny (3.82 KB)
Click here to download the current version

Thanks Steve! Major improvement. Some thoughts…

Currently, Cross Fade In/Out are useless to me.

I like the idea of combining cross fade into a single dialog, but…

From a GUI standpoint:

While discoverable, the “Show Help” in the “Select Action” drop down is not user friendly; make it a button–there is lots of room on the dialog. Also not user friendly, when you do select “Show Help” you must then click “OK” to view Help and this is a “destructive” action (the Cross Fade dialog closes). The help dialog should be independent of the fade dialog (but should close with the fade dialog). More unfriendly, the “help” action is sticky so after clicking OK and reading and closing the help dialog, when you re-open the CF dialog “Show Help” is the selected default.

When either In or Out are selected as solo actions the “Fade Length”… stuff should be ghosted or gone.

I realize the Nyquist GUI builder is sparse and these may not be readily changed.

I would extend the ability of the function by adding a “center” so that when xFading the fade-in and fade-out don’t have to be the same length.

While I realize that the concept of this is a “destructive” X-fade, most often, I want a non-destructive version. I know I can do this using Fade Out/In and cut ‘n’ paste but would like to see this a wrapped up in one Cross Fade effect.
The top is my starting point, the middle is the current behaviour, the bottom is what I want to end up with (although the cut ‘n’ paste can be left to mix & render).

I completely agree (hence this “wish list” item: )

Yes I could add a separate “Help” button, but because the action is “sticky”, including “Help” in the “Select Action” menu, the users is pushed to select either, a fade type OR the help screen (which is the correct thing to do). If “Help” was a separate button then the user could select (for example) “Fade In” as their desired action, but not realise that they must also deselect “Show Help”.

I can’t do anything about the option being “sticky”, or the action being “destructive” - these are built into the Audacity Nyquist interface and apply to all Nyquist plug-ins.

Yes, that would be nice too, but again it’s a limitation of the Audacity Nyquist interface.

I’m not sure what you are getting at there. The bottom picture is not a cross-fade. It is a fade-out followed by a fade-in and can be accomplished with this plug-in by applying a fade-out to the first track and a fade-in to the second track.

Did you notice that the full cross-fade effect (fade-out + fade-in + mix) can be accomplished in one action if both “songs” are on the same track?

I’ve thought about this, but I think that would be an exceptional case. The common case is that the fade-in and fade-out are the same duration. For the “advanced user”, if they want different fade-in / fade-out times they can apply the fade-in first and then the fade-out to separate tracks (similar to how you would do it now, but with the added feature that the fade shape can be a user defined curve).

The only really non-destructive way would be to use Envelopes to create the fades, but Audacity Nyquist can not currently access envelope data (another feature request).
To be able to adjust the amount of overlap, the two “songs” could be in different tracks, then the fades are applied but there is no mixing.

I did notice a minor failing of this effect - if the fade time was set to a duration of less than one sample, the effect would fail without error or warning (Audacity Nyquist cannot return zero length sound). It is arguable what should occur in this situation (a zero length cross-fade is not a cross-fade) but how I have decided to resolve this is to give an error if the duration is set as a negative value, and to limit the duration to a minimum of 2 samples (the minimum required by the code for a true cross-fade) if not negative. The new version is attached.
cross-fade.ny (3.88 KB)

Thanks, Steve. This is just “stupid user” comments because I haven’t thought a lot about this.

I thought we wanted “Cross-Fade” with a hyphen given we don’t use the more common “Crossfade”? Not that I care as long as we are consistent.

Help says:

“The ‘Fade Shape’ offers a choice between a simple curve, or an ‘S’ shaped curve.”

No need for “,” before “or” - was taught as bad grammar when I went to school. Maybe opinions are different now but the Manual would not allow the above.

Should not “mid-point” in the Help be “midpoint”?

Then maybe “Strength of fade midpoint” instead of “Curve (increase to boost mid fade)”? I find a second “Curve” concept in addition to shape confusing.

;info line says:

‘Cross Fade’ fades out the first ‘n’ seconds of the selection and fades in the final ‘n’ seconds, where ‘n’ is the ‘Fade Length’ in seconds. ‘Fade In’ and ‘Fade Out’ act on the entire selection.

Why single-quote ‘Cross Fade’?

Would the whole cross-fade thing be simpler if we excluded standard fade in and out? I think there are other plug-ins we want to add that can do more advanced fade in/out, and this plug-in is called “Cross Fade”. Then we could say “Cross Fade’ fades out the first ’ x’ seconds of the selection and fades in the final ’ y’ seconds, where ‘x’ + ’ y’ is the ‘Fade Length’ in seconds.” Then “Fade Length” in the interface could actually be 10 seconds where there is a selection of at least 10 seconds. I think lots of people will select 5.5 seconds in the waveform, “Fade Length” of 5 seconds and then not understand why there is an error.

Or could there be a default “idiot’s fade” where it just cross-fades the selection given to it?

As a general point, the last idea where there were two versions (one for the “popular” cross-fade on one track and another for cross-fade on two tracks) was a bit of a dead-end. But here, there is no mention that a single track or multi-track fade can be made, so people like Edgar used to doing it “properly” on two tracks may not even realise it can be done on one.


;; version 3 plug-in (requires Audacity 1.3 or later)

That should read “1.3.4” by the way.


Of course having read your post to the mailing lists, it’s much clearer, but I deliberately did not read it until after looking at the plug-in. My point is that “Fade Length” could be taken as the initial length selected for the fade, not the outcome length, which makes the ;info line potentially confusing. “Fade duration” in the Help isn’t ideally clear either. Probably it should be “selection to be faded”?

I still think there could be a case for “idiot’s fade”. We’re replacing an effect that had no user interaction at all.


Some initial comments. I’ve just started playing with it.

I think the cross-fade length should be eliminated from the dialog, and whatever selection the user has made should be cross-faded. You have to make a selection in order for the effects menu to be enabled. As it stands now, if I select exactly the region I want cross-faded then invoke the effect, I need to enter exactly half the length I have selected. If the length I enter is too long I get an error, if the length is too short audio is deleted. The latter is probably not what the user wants or expects.

Examples (I’ve set snap-to seconds to keep it simple)

  1. Select 4 seconds and ask for a 2-second crossfade
    This is fine.

  2. Select 16 seconds and ask for a 2-second crossfade
    Audio has been deleted from the middle of the selection. While this might be considered a “feature”, I found it annoying and counter-intuitive.

Also, I think users will be more comfortable making a selection by listening then applying the effect than having to think about how many seconds the fade should be. This is already the case for fade out and fade in, so why not make it consistent for cross-fade?

– Bill

Thanks for the comments Gale.

If this is included in Audacity I think that line can be omitted entirely. If it is only available as an optional plug-in, then I agree that it should say exactly which versions it works correctly on. I’ve only tested with Audacity 1.3.12 to 1.3.14 so far. Are you saying that it works in Audacity 1.3.4 but not in 1.3.3?

Personally I’d prefer “Cross-Fade” but I was being consistent with the current “Cross Fade In” and “Cross Fade Out”.



The term “curve” is used on DJ mixers (and several other audio applications) to describe the fade shape. Increasing the “curve” setting causes the fade to be at a higher level for longer than with a linear fade. There are plenty of references to “fader curve” (for example: )
So “Curve” is the (correct) name of the control and “(increase to boost mid fade)” is a description that I feel describes the function in a simple way for anyone that is unfamiliar with the term (similar to how we have “Q (higher values reduce width)” in the notch filter effect.

because I wanted to quote “Cross-Fade” as the name of the effect but was not sure that " would work correctly as an escape character on all platforms, whereas I knew that single quotes work correctly. Are you aware of any plug-ins that use double quotes in the info text? (I’m mid way through reinstalling my OS at present so it’s difficult for me to check).

Yes, a little bit, but only as far as it removes some of the functionality.

Yes there are, but not (currently) included with Audacity.
The inclusion of Fade-In/Out options allows more advanced users to use fade curves when creating cross-fades “properly” (across two tracks).
It also provides a raised cosine fade-out which is one feature that I find painfully absent in Audacity.

I think that is just as confusing. What that would suggest to me is that the duration of the cross-fade will be 10 seconds, when in fact it will be 5 seconds.

The current error message will say something like:

The selection length (5.50 seconds) is too short
for the initial 5 and final 5 seconds to fade.
For a 5 second cross-fade the selection must be
at least 10 seconds."

Does that not explain clearly what the error is?

(also Bill’s comment “I think the cross-fade length should be eliminated from the dialog”)
We have to assume that the user may not make the selection such that exactly half of the selection is the end of the first song and that the other (exact) half is the start of the second song. Let’s say that the user selects the final 6 seconds of the first song and the initial 4 seconds of the second song. If the “idiot’s fade” cross-faded this selection then the fade out would consist of the first 5 seconds of the first song and the fade-in would consist of the final second of the first song, plus the first 4 seconds of the second song. (Audacity Nyquist does not know when audio clips start and end.)

With the current plug-in, for a 5 second fade the user should ensure that at least 5 seconds of each song is selected. The start of the selection should be at the point where they want the first song to start fading out and the selection should end at the point where they want the second song to be fully faded-in.
This is the important concept for this plug-in and is described in the Help screen as:

When ‘Cross-Fade’ is selected, the fade duration is
determined by the ‘Fade Length’ setting. For example,
Fade Length = 3 seconds
The first 3 seconds of the selection fade out,
The final 3 seconds of the selection fade in.
The two sections are then overlapped.
In this example the selection must be at least 6
seconds to accommodate both fade sections.

This can be easily covered in the manual - I’ve already got some screenshots for illustration.
It is equally valid to apply this effect to two clips in one track, or to two separate tracks. Detailed usage tips are not a practical proposition in the severely restricted Help screen space but, unlike the other included effects, basic usage instructions have been included in the plug-in.
I’m more than happy for the help screen text to be improved, but I’ve put as much useful information as I could fit into the available space.

On the subject of “help”, the Vocoder. Noise Removal and Auto Duck are far from intuitive and could benefit from built-in help.

Right. So the user sloppily selects 10 seconds of audio (as above), then asks for a 3-second fade - 4 seconds of audio will be removed from the middle of the selection. Of the six seconds selected at the end of the first song, the last 3 seconds are removed and then the fade is applied to the remaining last 3 seconds - probably not a deal-breaker. Of the 4 seconds selected in the second song, one second is removed from the start of the song, and the fade is applied to the remaining first three seconds - this is a deal-breaker: you certainly don’t want anything removed from the start of the second song.

As it stands now this effect would be great for “tightening up” the between-song applause/crowd noise on live recordings. Say there was 30 seconds between two songs and you wanted to reduce it to 3 seconds - just select all the crowd noise and ask for a 3-second fade. 24 seconds are removed from the middle of the selection and the remaining 6 seconds are cross-faded into 3 seconds. Perfect.

For cross-fading songs I think it is less useful. For that I’d prefer something along the lines of the x-fade effect. With the songs on separate tracks you can rehearse the overlap before you apply the fades, and then once you make the selection across the two tracks you know you’ll get exactly what you want. The x-fade effect has the limitation that you must apply reciprocal curves to the two fades. For “mix tapes” you may want to fade out the first song and have the second song start cold. Or you may want to leave the natural fade-out of the first song and have the second song fade in quickly. So I’d envision an effect that does “Fade-Out/In” only, and has a few presets for each: e.g. fast, linear, slow, S-curve, cold/slam.

– Bill

I don’t see that to be a deal breaker. This is primarily a cross-fade effect and it does what it says on the tin. In a cross-fade, the new track starts at silence and fades in. As it is starting at silence it is not critical exactly where that start is, because it is inaudible.

Example usage of this effect for precise cross-fading two songs:

  • Song 1 on track 1
  • Song 2 on track 2
  • Use the time shift tool to adjust the overlap of track 2 against track 1. If the songs are highly rhythmic I will align the beats.
  • Trim Track 1 so that it ends at the point where I want track 2 to be fully faded in.
  • Apply a fade-out to the overlap section of track 1 with a slightly negative curve value. Note that the fade will be applied to the entire selection (as suggested by the interface and explicitly stated in the help screen).
  • Apply a fade-in to the overlap section of track 2 with a positive curve value.

Example usage of this plug-in for fixing a “splice” on a stereo track where there was no zero crossing point common to both channels:

  • Make the initial edit close to the desired position, but leave a little extra space (the exact amount depending on how far out the mismatch is and the frequency of the audio - low frequencies will require a longer cross-fade to be seamless.
  • Carefully select a small selection across the join
  • Apply the cross fade with a fade duration just less than half of the selection length.

Example usage of this plug-in for making a quick mix of multiple dance tracks into a single montage:

  • Put all of the songs onto one track, end-to-end
  • Check the time duration of an even number of beats (say 8 beats) of both tracks (these will usually be close to the same value)
  • Make a selection that includes more that 8 beats at the end of one song and more than 8 beats at the beginning of the next song. Ensure that the selection starts 8 beats before the end of a phrase on the first song and ends at the start of a phrase on the second song.
  • Apply the cross-fade with the fade duration set to the duration of 8 beats.
  • Check if the volume dips during the fade, if it does, undo and repeat but with a positive curve value.

Example usage of this plug-in for creating a professional sounding fade-out at the end of a song:

  • Select an exact number of bars, ending at the end of a phrase.
  • Apply a fade-out with an “S” curve and the curve value set at 0 (default)
  • Grab the left end of the selection and drag past the end of the track.
  • Delete the excess (not faded) audio.

As I recall, the x-fade effect got voted out on the last round in favour of an in-line (same track) approach. What I like about this cross-fade effect is that it can do an in-line cross-fade as requested but is also a useful tool for facilitating high quality (manual) cross-fades across two tracks.

As described, this plug-in can do “Fade-Out/In” only and I’m in favour of retaining this functionality for the reasons that Bill states.

“Fast” and “slow” fades are made by setting the “Curve” control high/low. The maximum and minimum slider values are likely to be good settings for “fast” and “slow”.
“Linear” fades are achieved with “simple curve” and the “Curve” slider set at zero (default).
“S-curve” is a supported option.
“Cold/slam” can be achieved by setting the “Curve” value to an extreme setting with text entry.

As you’ll recall, the agreed text on is that version 3 plug-ins do not support < 1.3.4. And yes as expected, the interface is corrupted in 1.3.3.

Yes I saw all that afterwards in your post on the list and still think it’s potentially confusing when there are other references to “Curve” in another control, and not great grammar. Not really unclear but not I think as clear as “Strength of fade midpoint” or “Loudness of fade midpoint”. In principle, I agree an abstract name for the control is usually preferable, but we have the usual problem of using a word (increase) that saves space but is confusing because it could be a noun as well as a verb.

Where we mention a plug-in’s name in a plug-in elsewhere we don’t quote e.g. Clip Fix, Vocoder. I woudn’t trust escape working everywhere, either. :slight_smile:

Advanced users can cross-fade on two tracks with this plug-in by selecting both tracks. So I was questioning if it’s worth the extra complication for the main target audience for the extra functionality (yes, assuming some other amplitude plug-in gets added in time). And I guess also that in many cases users who cross-fade in a customised way will prefer Envelope Tool (but that isn’t accessible).

OTOH, one assumes Audacity will eventually have its own built in cross-fade effect given the concept and aim to include it as a GSoC project are there. So maybe some extra functionality for your plug-in may or may not enable it to be retained longer term.

This is why if we keep the Fade Length control, it must be clear that it is the outcome fade, not the length selected for the fade. Unless you understand that and that the fade could remove audio the current ;info line text is really confusing IMO.

Only so far as it goes. If you are confused about the difference between “Fade Length” and “fade duration” and confused about having to choose a control value in excess of the selection length, it may not be immediately clear. It wouldn’t matter so much if this plug-in was not for Audacity distribution.

I still think that is far more intuitive than selecting at least double the fade length, calculating it (with all that implies if you have selected something other than a whole second but have Selection Toolbar displaying in seconds), then getting an error if you are short or deletion if you are in excess of the exact answer. And placement of the selection still matters here too. That’s why I think it’s better to act directly on the selection made.

I wouldn’t yet go so far as to say remove the “Fade Length” control but the more I think about it, the more I think that the default must be to cross-fade the selection given and not ask for length. Would there be some way to adjust the midpoint in this case?

I don’t think it’s well described in the ;info line given the untypical nature of what we’re doing. To me a “five second fade” coveys the selection length.

Not enough, I feel given reluctance to look at docs. And what will users of the former separate cross-fade plug-ins assume where (as I recall) the ;info line made this clear?

I know I am not suggesting alternative ;info line text but there is no point until functionality is settled.



I think the audio deletion especially at the start of a song is pretty close to a deal breaker for a default action, as is what will seem a highly unusual way of manipulating a selection.

I take away from all that the we want something more than we have here for cross-fading across tracks. We are trying to get away from a Cross Fade that didn’t, so why introduce a Cross Fade which is partly something else (a superior but still not good enough Fade In/Out)? I normally like combining functionality but I am really not sure it’s a good idea here. A text envelope with fade and shape presets seems a better idea to me.


Making a good fade-in or fade-out with the Envelope Tool makes is as easy as eating peanuts with chopsticks.

ROFL - and I agree entirely - I/d never dream of using the envelope tool to customize my fades - it has crossed my mind at time in the past but got quickly dismissed when I consider the fiddling about involved (Reward.NEQ.Effort).

Personally I never use crossfades, bit I would like to be able to have selectable fade-in or fade-out types as suggested in Bill’s earlier post in this thread.


I think part of the “market” who are not over particular may prefer Envelope Tool to a plug-in where they have to consider different curves and options and can’t see the result at once.

But given the Envelope Tool is “fiddly” and without options, isn’t that a good reason to get a text envelope out there with different fade shapes to choose from?

I’m only about -0.5 on the Fade In/Fade Out Options in Cross-Fade, and agree having them in it is a bird in the hand while there is no additional amplitude plug-in. But if we do want another amplitude plug-in for fades, I think we should be careful about making Cross-Fade (appear to be) a two-step tool and potentially duplicate controls in it. Maybe it makes sense to consider a new amplitude plug-in for Audacity now? We will lose the separate Cross Fade Out and In, so it would be no more screen estate to propose two plug-ins.

But the main issue is the Fade Length control here and the selection. If the user had feedback about the length selected and the Fade Length control defaulted to twice the selection it would be fine. But given not, I really doubt this is going to work for most folks who never get beyond the shipped plug-ins. And we’d have to be more upfront about deleting audio. Can we relegate the Fade Length box to an “advanced cross-fade” control?

“Curve (higher value boosts mid fade)” would be acceptable to me if documented - only two more characters, clearer and is equivalent to the Notch filter wording.

I think it’s great to have a simple Cross-Fade that can work inline or on two tracks so hope this won’t end up stalling.


The selection must include the region to be faded out and the region to be faded in as Nyquist only has access to audio that is in the selected region.

The potential confusion regarding the fade length is due to the fact that a cross-fade requires two selections at the same time; a fade-out selection and a fade-in selection.

I’ve got a new “Nyquist Wish List” item. The ability to link sliders (as commonly seen for linking L/R sliders).
In a conventional cross-fade, the fade-in duration is equal to the fade-out duration. What would be nice in this plug-in would be a pair of linked faders - one for the fade-out duration and one for the fade-in duration, and an additional box that automatically displayed the sum of the two.

Fade-out initial: 5.0 seconds of the selection.
Fade-in final: 5.0 seconds of the selection.
Minimum Selection length: 10.0 seconds.

Sadly the Audacity Nyquist interface does not support such interactive behaviour.
As the fade-out duration will always be the same as the fade-in duration (for a conventional cross-fade) I would rather not require the user to set two sliders.
Is there some way we can word the slider text that makes it clear that the selection includes the initial “x” seconds for the fade-out and the final “x” seconds for the fade-in?

That is the primary motivation of including them in this plug-in. I would be happy to split out the “Fade-In/Out” functions into a separate plug-in and submit a pair of plug-ins.

(Also, Bill wrote: “Audio has been deleted from the middle of the selection. While this might be considered a “feature”, I found it annoying and counter-intuitive.”)

We could have the “Fade Length” slider as a “limit” rather than an absolute value.
In this case:

  • If the limit is set to greater than half of the selection, then the first half of the selection will fade-out and the second half will fade in and no audio will be deleted.
  • If the limit is set to less than half of the selection duration, then the first “x” seconds of the selection will fade out, the final “x” seconds will fade-in and any space between will be deleted.

I would think that a default Limit of 10 seconds would be appropriate if we want the default behaviour to be that the entire selection is used.

Deleting the material between the fade-out and the fade-in IS a feature and a very useful one, but I would not object to the default setting not doing this.

Fine with me. I’ll change that now.

If we are in agreement about having “Cross-Fade” and a more versatile Fade as a pair of plug-ins (rather than just one), what do we call the Fade effect (so as to avoid confusion with the “Fade In” and "Fade Out"effects)? How about “Fade…”?

Pretty hard with “cross fade only” taking space in the text (which was another motivation for not having fade-in/out included). If we keep the “Fade Length” box, that and the ;info line must be clearer I think that “Fade Length” in the box is the outcome fade length (i.e. as it currently is, must be no more than half the selected length).

And even the error message isn’t great for the case where the user enters the selected length in the Fade Length box (e.g. 10 seconds for a selected length of 10 seconds). The error talks about the selection length being too short and suggests doubling it but the user probably spent time making that selection exactly. I expect some would misread the error and enter 20 in “Fade Length”, err, no that will say the selection should be 40 seconds.

The “limit” idea would avoid the errors where user typed in just that bit too great a length, definitely. Against, it might be harder still to explain in the text for the control. And it’s not a feature, just a device to reduce the “overlong” errors. Also it won’t stop the “too-short” problem if the user really did not want to delete audio. I still think this is an issue. A user selects the exact length they need for the fade in the waveform. It will not be in whole seconds and the user probably won’t have a fine enough selection format chosen to judge what the exact length should be in the “Fade Length” box. They can guess it, but unless they realise the trick is to over-estimate, they will most likely delete some audio and this will have implications for other tracks.

I feel for most users it would be better to lose the fade length control, and strongly think there must be no audio deletion by default. I do see the use case for removing audio in the middle of the cross-fade and I don’t see a case for doing that in any other plug-ins we’re considering. So how can we best handle that? Could there be a control (that had no effect unless user chose “Advanced fade”) where a proportion of the selected length (or an absolute length) could be set for deletion? The label of the control then clearly states “deletion” or “deleted”. If that was feasible, couldn’t we lose the “Fade Length” control?

And is there any value in a control for a “non-conventional” fade (again it has no effect unless “Advanced fade” is chosen) where the fade in and fade out length can be made not equal? I don’t feel strongly about this and suspect if people want that they should select the audio accordingly, but is it worth considering?

If it is possible to lose the “Fade Length” box then my desire for a second “Fade” effect is watered down a little. But at the moment I would rather have a text envelope. Can’t more knowledgeable users do their fade ins and out with that? {let’s leave for now the people who continue to vote for a “target” fade) :slight_smile:


I think that splitting the “Fade” functions to a second plug-in will help to resolve a lot of the issues that have been raised.
For my own use (and from what Bill was saying this will apply to him also), having only the cross-fade part of this effect will be too limited, but if the fade-in / fade-out features are available elsewhere (in a second plug-in) then the “advanced” fade options are available by using the “Fade” effect.

The default action is to fade-out the first half of the selection, fade-in the second half of the selection, then the second half is moved to exactly overlap the first half. Assuming that both audio clips are on the same Audacity track, the overlapping fades will be mixed. If preferred by the user, the audio clips could be in separate tracks, in which case the fades will be overlapped but not mixed.

There will be a “Limit” slider (the name could change) that will have a default value of 0 (zero). When set to zero this control is disabled.

When the “Limit” slider is set greater than zero:
The fade-out duration will be limited to the first “x” seconds of the selection.
The fade-in duration will be limited to the final “x” seconds of the selection.
Any space between these two regions will be deleted.
By default the “Limit” control is disabled, so this is an “advanced” control.

There will be no “Fade-In” / “Fade-Out” options (these features will be in a separate plug-in).

The “S” shape fade option will be removed, but will be available in the separate “Fade” plug-in.

OK so we lose the “Fade Length” box and we have a “deletion” or “limit” or “” feature that is clearly off-by-default, so I think we’re getting somewhere. Basic users can now click OK without changing anything and always get a result.

So “x” is 1/2 the selected length. Are you going to error for x > 1/2 the selected length, or treat that as meaning “0”? Would “treat as zero” be less irritating?

I still wonder if matching the slider value to the selection length is going to be a lot of hassle? Can you see a way of doing this as a “Compression %” or similar? I don’t know if “limit” is the expected term, but as only a casual cross-fade user I would find a % more intuitive and less fiddly most of the time. I suppose a % would go from 0 (off) to 99.9%? I don’t mind an option for seconds instead of %.

I do think we should have a clear idea of how many amplitude plug-ins we are going to propose for Audacity distribution in the near future. Personally I think a text envelope is very important for Audacity, but I doubt if we can “sell” more than two amplitude plug-ins. So is a text envelope viable for advanced users of fades without excess complexity? If not, then as long as we have some arrangement as above with an off-by-default “limit/deletion” control, I really don’t mind fade in and out being in Cross Fade.

Why remove the “Shape” control? It could be useful whether we leave fade in/out in Cross-Fade or not.