Th envelope tool does not (in itself) introduce dither. The envelope tool does not actually change the audio data at all. The envelope tool just tells Audacity how loud to play the audio, but does not change the actual data. Thus, you can adjust an envelope as many times as you like and the process is completely “lossless” because the actual sample data is never changed.
When the track is exported (or if you use “Mix and Render” from the Tracks menu), the envelope is applied to the audio data. This is when the audio data is changed.
The calculation of the new sample values is performed in extremely accurate 32 bit float format.
If the destination format for the processed audio is integer format, then by default dither will be applied. If the destination format is 32 bit float, then dither is not applied.
Pros and cons of applying / not applying dither:
Converting to 16 bit will introduce “quantization distortion” (sample values are rounded to 16 bit values). When the audio is extremely quiet, this may be noticed as an unpleasant and unmusical “rasp” quality to the sound.
As the audio level approaches -84 dB, the fade out will crackle and then abruptly stop.
Absolute silence remains absolutely silent.
There is no quantization distortion and very quiet audio retains its original tonal quality.
The audio will continue to fade out smoothly to below -100 dB.
A small amount of extremely low level noise is introduced.
I don’t feel particularly proud of my ignorance, or annoying other users in general. But I do want to understand the process completely, and would very much appreciate a few more answers, if you don’t mind.
I am not an audio engineer, so I’ll try to make my questions as simple as possible.
If I apply the env. tool (and mix and render), the track will be upconverted to 32bit, values get changed, and then downconverted to 16bit, with dither (if I enable dither in high quality conversion). IS THAT CORRECT?
If dither is applied to a track during editing, does that mean that it will not be applied again on export? Let’s say, I export a 16bit track, do some complex editing and change its values. It gets upconverted during editing, then downconverted back to 16bit during editing. When I export that edited 16bit track in 16 bit, does that mean dither will not be applied again?
In other words, can dither be applied only during editing, and not on export? I am still not exactly sure how dither works in Audacity, and for the longest time believed it can ONLY be applied on export.
I prefer to call it “learning” rather than “ignorance”, and the forum helpers come here because they want to help their fellow Audacity users, so feel free to ask
It is highly recommended that the Audacity default quality settings (“Edit > Preferences > Quality”) are set to 32-bit float. With that set, then the track created by Mix and Render will be in “perfect” 32 bit float format, and the format remains as 32 bit float format until you export. This ensures the highest possible audio quality.
If the “Quality” preference is set to 16 bit (not recommended for general audio use, but there are a few “scientific” cases where this may be required), then the rendered track will be 16 bit integer and the processed audio will be converted back to 16 bit. Dither will be applied according to the dither settings in preferences. This will usually produce slightly inferior sound quality in the end because of repeated conversions.
No. If you are working with Quality set to 16 bit, then the conversion from 32 bit float to 16 bit integer occurs with every process that is applied, and if you export to 16 bit then dither is applied again. Repeated dithering will slightly reduce the sound quality.
You “can” do that, but you would need to manually change the dither settings. This is not recommended, but this is how you would do it:
Ensure that dither is enabled.
Process the audio.
Turn dither off in preferences.
If the “Quality” setting is set to 32 bit float AND you ensure that all tracks in your project are 32 bit float, then dither will only be applied on export. This is the recommended way of working and produces the highest possible audio quality.
Unfortunately there is one snag - due to limitations of some of the file importers, some file types are imported as 16 bit rather than 32 bit float. WAV and MP3 are always imported as 32 bit float (assuming that preferences are set to 32 bit float quality), but many of the compressed formats are imported as 16 bit. If you are importing files, I would strongly recommend that you get into the habit of checking the track format (in the box on the left end of the track). If the track has imported as 16 bit, use the track drop-down menu (click on the track name) and change the format to 32 bit float (“drop-down menu > Set Sample Format”).
This matter of track formats has come up recently on the developer’s mailing list, and in my opinion we could and should handle this better because, as you say, most users are not audio engineers. Would you mind if I (anonymously) quoted parts of your posts in those discussions?
Is that all clear now? Feel free to ask if I’ve missed or not been clear about anything.
If you forget to change a track to 32-bit float, don’t worry too much about it. The difference between dithering and not dithering is very subtle and in most cases is barely audible.