Page 2 of 2
Re: Possible noise issue in EQ A2.0.3
Posted: Sat Feb 16, 2013 6:38 pm
by kozikowski
I would call the lumpy green line normal. I wish the poster has included the left edge of that illustration. Sharp filters are a lot more magic than we would like.
Koz
Re: Possible noise issue in EQ A2.0.3
Posted: Sun Feb 17, 2013 2:26 am
by steve
Robert J. H. wrote:How big is the amplitude of the modified silences (sorry, I can't see the graphics myself)?
The spectrum image posted by blatt show significant peaks at 100 Hz and 2000Hz. In particular there is a very pronounced sharp peak at 2000Hz, which corresponds with the upper limit of the band-pass filter defined by the "walkie talkie" settings. I've tested this on Linux and Windows XP and I can't reproduce the issue.
Re: Possible noise issue in EQ A2.0.3
Posted: Sun Feb 17, 2013 4:08 am
by Gale Andrews
It's easy to reproduce on Windows 7.
New 32-bit project.
Generate an "Audacity" DTMF tone, amplitude 0.8, 6 seconds, duty cycle 55%.
After the "walkie-talkie" EQ, every absolute silence between the tone shows as non-zero samples, averaging about -80 dB, but the "tail" of modified samples closest to the end of each tone is at about -30 dB.
Both Phaser and Bass and Treble convert the zero samples to some non-zero level, loudest closest to the end of the tone.
Gale
Re: Possible noise issue in EQ A2.0.3
Posted: Sun Feb 17, 2013 5:04 am
by Robert J. H.
Gale Andrews wrote:It's easy to reproduce on Windows 7.
New 32-bit project.
Generate an "Audacity" DTMF tone, amplitude 0.8, 6 seconds, duty cycle 55%.
After the "walkie-talkie" EQ, every absolute silence between the tone shows as non-zero samples, averaging about -80 dB, but the "tail" of modified samples closest to the end of each tone is at about -30 dB.
Both Phaser and Bass and Treble convert the zero samples to some non-zero level, loudest closest to the end of the tone.
Gale
That is just what would be expected from a filtered sound, nothing to worry about.
However, the peaks at 100 and 2000 Hz are harder to explain. For one part it is clear that high boosts i.e. Q-factors introduce overshoot and ringing, which flows on into the silent part. Extreme slope values have to be achieved with higher orders of filters. These produce more and more numerical quantization errors and this will lead to instability. This means that the decay is elongated and the tail increases.
The odd thing is that Steve doesn't get this spectrum on his machines.
Re: Possible noise issue in EQ A2.0.3
Posted: Sun Feb 17, 2013 10:09 am
by steve
Got it. I wasn't making the correct selection to reproduce the peaks.
An easy way to reproduce the symptoms is to generate a 10 second tone at about 1000 Hz, 0.8 amplitude. The exact frequency, amplitude and duration are unimportant. Then generate about 3 seconds of silence at the end of the tone. Leave the split line in place to make selection easier later on. Apply the "Walkie Talkie" Eq to the entire track, then analyze the "silent" section. The selection being analyzed contains only the ringing which is at the filter cut-off frequencies (100 hz and 2000 Hz). As Robert wrote, this is normal filter behaviour and is known as the Gibbs phenomena.
Re: Possible noise issue in EQ A2.0.3
Posted: Sun Feb 17, 2013 9:15 pm
by blatt
If the music for a moment is defined by silence then what is the need of decay
Re: Possible noise issue in EQ A2.0.3
Posted: Sun Feb 17, 2013 11:52 pm
by steve
blatt wrote:If the music for a moment is defined by silence then what is the need of decay
The "ringing" is not a design feature, it is just what happens when a filter with a high slope is applied at a jump discontinuity. It's known as the Gibbs phenomenon
http://en.wikipedia.org/wiki/Gibbs_phenomenon. It's a physical law.
Re: Possible noise issue in EQ A2.0.3
Posted: Thu Feb 21, 2013 1:10 pm
by blatt
It seems that much is possible through filter design and in the uses of these.
Re: Possible noise issue in EQ A2.0.3
Posted: Thu Feb 21, 2013 2:35 pm
by steve
blatt wrote:It seems that much is possible through filter design and in the uses of these.
That's true, but changing the laws of nature/physics is not one of the options

The "filter design" is partly created by the settings that you use. The level and duration of the ringing can be reduced by making the "Filter Length" parameter smaller, but the trade-off is that the filter cut-off becomes more gradual.
In practice the ringing is likely to be inaudible in all but artificial test cases. It will generally decay to below -100 dB within about 4 hundredths of a second of the signal stopping.
Re: Possible noise issue in EQ A2.0.3
Posted: Thu Feb 21, 2013 8:27 pm
by Robert J. H.
Just to clarify:
There are filter types that produce virtually no ringing, but create a tail nevertheless.
In general, low corner frequencies produce long tails and so does a high Q value (the same as a narrow band width or a steep slope).
The following snippet returns the length of the tails for the fifteen octaves (starting at 1 Hz).
The length is taken where the decay goes under -60 dB (i.e. border to silence).
You can change the q factor to get a feeling how this influences the decay.
With the value 2, we are in the resonator region. Even higher values will cause the filter to oscillate at the corner frequency eternally.
The cycle value of one for the sine wave is of course extreme. Normal music content does not have such long tails.
Code: Select all
(defun calc-tail (&optional (q 0.7071))
(setf sig (abs-env (seq (hzosc 1 *table* 90) (s-rest 10))))
(format t "Decay time for Lowpass2 with Q = ~a~%~%" q)
(dotimes (i 15)
(setf freq (power 2 i))
(setf tail (extract-abs 1 11 (lowpass2 sig freq q)))
(format t "Freq: ~a Hz, Tail: ~a s~%" freq
(peak (integrate (snd-oneshot (s-abs tail)
0.001 (/ *sound-srate*))) ny:all))))
(calc-tail 2.0)