Pre-echo
Digital audio compression artifact
In audio signal processing, pre-echo, is a digital audio compression artifact where in the reconstructed signal (following an encoding/decoding cycle), a sound is heard before it occurs in the original signal (hence the name). It is most noticeable in sharp impulsive sounds (transients) from percussion instruments such as castanets or cymbals.
01Cause
It occurs in transform-based audio compression algorithms , typically based on the modified discrete cosine transform (MDCT) , such as MP3, MPEG-4 AAC, and Vorbis, and is due to quantization noise being spread over the entire transform window of the codec.
Sharp impulsive sounds (named transients), once transformed into a frequency representation (such as when transformed through an FFT or an MDCT), produce a broad set of frequency components.
Quantization errors over those components, once transformed back into the time domain (through an inverse FFT or MDCT), result in temporal smearing of the quantization error. As a result, additional noise can appear in the reconstructed sound, before its initial appearance in the original.

02Audibility
The psychoacoustic component of the effect is that one hears only the echo preceding the transient, not the one following , because this latter is drowned out by the transient. Formally, forward temporal masking is much stronger than backwards temporal masking, hence one hears a pre-echo, but no post-echo.

03Mitigation
In an effort to avoid pre-echo artifacts, many sound processing systems use filters where all of the response occurs after the main impulse, rather than linear-phase filters. Such filters necessarily introduce phase distortion and temporal smearing, but this additional distortion is less audible because of strong forward masking.
Avoiding pre-echo is a substantial design difficulty in transform domain lossy audio codecs such as MP3, MPEG-4 AAC, and Vorbis. It is also one of the problems encountered in digital room correction algorithms and frequency-domain filters in general (denoising by spectral subtraction, equalization, and others). One way of reducing "breathing" for filters and compression techniques using time to frequency transforms is to temporarily use a set smaller transform window (short blocks in MP3), thus increasing the temporal resolution of the algorithm at the cost of reducing its frequency resolution.
To better reproduce transient and eliminate pre-echo, lossy audio compression software such as open-source Vorbis encoder (oggenc from vorbis-tools), impulse noise tune or/and bit reservoir can be used as an advanced option.
Sources and credits
This article is adapted from the Wikipedia article “Pre-echo”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Images, from Wikimedia Commons:
- MP3x frame analyser showing pre-echo artifact when using the original ISO psychoacoustic model.gif by screenshot from the MP3x software, GPL
- MP3x frame analyser.gif by Screenshot from the MP3x frame analyser, which was then under GPLv2+ license, GPL
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.