If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
HPF overshooting - surprising artifact
11 posts
• Page 1 of 2 • 1, 2
HPF overshooting - surprising artifact
Hi all,
I'm playing around with a digital cross-over design when I noticed that the HPF adds unwanted energy to the signal, making it go over 0dbFS.
I've designed a very simple LPF and HPF pair of filters to cut the frequency zones into two parts: LF and HF.
I've tested the HPF by injecting a stimulus of 1KHz square wave at 0dbFS (limited between +/- 1.000 ).
To my surprise, the output of the HPF was much higher than 0dB, as can be seen in the attached graph.
Even though the input is limited to maximum(absolute(X)) <= 1.0 the output reached 1.5 !
In this case, how can I design a digital cross-over? Do I need to simply attenuate the signal to create more headroom (and lose output power)? I do not want to add a lookahead - limiter after the cross-over for keeping it simple. Will a clipper be good enough or will that introduce high distortion?
Why is this phenomena happening in the first place? Any ideas are welcomed
I'm playing around with a digital cross-over design when I noticed that the HPF adds unwanted energy to the signal, making it go over 0dbFS.
I've designed a very simple LPF and HPF pair of filters to cut the frequency zones into two parts: LF and HF.
I've tested the HPF by injecting a stimulus of 1KHz square wave at 0dbFS (limited between +/- 1.000 ).
To my surprise, the output of the HPF was much higher than 0dB, as can be seen in the attached graph.
Even though the input is limited to maximum(absolute(X)) <= 1.0 the output reached 1.5 !
In this case, how can I design a digital cross-over? Do I need to simply attenuate the signal to create more headroom (and lose output power)? I do not want to add a lookahead - limiter after the cross-over for keeping it simple. Will a clipper be good enough or will that introduce high distortion?
Why is this phenomena happening in the first place? Any ideas are welcomed
- Attachments
-
- HPF_Overshoot_small.png (85.99 KiB) Viewed 24424 times
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: HPF overshooting - surprising artifact
Maybe it's your implementation ... schematic would be helpful.
- juha_tp
- Posts: 60
- Joined: Fri Nov 09, 2018 10:37 pm
Re: HPF overshooting - surprising artifact
This is a generic phenomena which will occur on any implementation, not related to schematic or specific flowstone implementation.
However I have added a simple example of a 12dB (2nd order) HPF with known Biquads (tested) set for:
Cutoff = 1KHz
Q = 0.5
Sample_Rate = 48000
and a frequency response curve
Just add ASIO or DS output to get the signal.
However I have added a simple example of a 12dB (2nd order) HPF with known Biquads (tested) set for:
Cutoff = 1KHz
Q = 0.5
Sample_Rate = 48000
and a frequency response curve
Just add ASIO or DS output to get the signal.
- Attachments
-
- HPF12_1KHZ_Example.fsm
- (33.77 KiB) Downloaded 1362 times
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: HPF overshooting - surprising artifact
.
Last edited by MichaelBenjamin on Mon Sep 21, 2020 10:40 am, edited 1 time in total.
- MichaelBenjamin
- Posts: 275
- Joined: Tue Jul 13, 2010 1:32 pm
Re: HPF overshooting - surprising artifact
Hi,
For getting a LR4 (Linkwitz-Riley order 4) cross-over, one needs to use a Q factor of 0.5.
LR4 is the most common cross-over design, to the best of my knowledge. It is implemented in a zillion hifi-speakers, in analog (cross over of home speakers).
so, my surprise is that it is not straight-forward to implement it in digital, without this strange artifact...
For getting a LR4 (Linkwitz-Riley order 4) cross-over, one needs to use a Q factor of 0.5.
LR4 is the most common cross-over design, to the best of my knowledge. It is implemented in a zillion hifi-speakers, in analog (cross over of home speakers).
so, my surprise is that it is not straight-forward to implement it in digital, without this strange artifact...
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: HPF overshooting - surprising artifact
Replicated this issue in Audacity (with similar square wave) and find out that 24dB/oct HPF (fc=100Hz, fs=44100) had to be normalized to -3dB to keep the output inside the range of [-1,1].
Asked this on another DSP related forum.
NOTE: The commonly used (and sos Butterworth based) LR4 implementation suffers from distortion (maybe just numerical issue) when fc/fs is small enough. Attached few plots (Octave) which demonstrates this issue with parameters fc@200Hz for fs=44100Hz and fs=352800Hz and for fs=192kHz with fc=700Hz.
Asked this on another DSP related forum.
NOTE: The commonly used (and sos Butterworth based) LR4 implementation suffers from distortion (maybe just numerical issue) when fc/fs is small enough. Attached few plots (Octave) which demonstrates this issue with parameters fc@200Hz for fs=44100Hz and fs=352800Hz and for fs=192kHz with fc=700Hz.
- Attachments
-
- lr4_192_700.png (23 KiB) Viewed 23948 times
-
- lr4_352800_200.png (13.76 KiB) Viewed 23948 times
-
- lr4_44100_200.png (21.6 KiB) Viewed 23948 times
Last edited by juha_tp on Sun Jul 12, 2020 5:10 pm, edited 2 times in total.
- juha_tp
- Posts: 60
- Joined: Fri Nov 09, 2018 10:37 pm
Re: HPF overshooting - surprising artifact
.
Last edited by MichaelBenjamin on Mon Sep 21, 2020 10:40 am, edited 1 time in total.
- MichaelBenjamin
- Posts: 275
- Joined: Tue Jul 13, 2010 1:32 pm
Re: HPF overshooting - surprising artifact
According to the answers brought to us by Juha_tp (on other forum) - this phenomena is expected and is easily seen with square waves.
Let's assume this is true - so what is the remedy ? I mean if I use a digital domain cross-over with an HPF for the "tweeters" - do I need to add a limiter or clipper against such possible inputs?
Let's assume this is true - so what is the remedy ? I mean if I use a digital domain cross-over with an HPF for the "tweeters" - do I need to add a limiter or clipper against such possible inputs?
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: HPF overshooting - surprising artifact
Rocko,
the overshoot may be unexpected, however it is not an artifact, nor a distortion. And it is not a digital phenomenon either - the same happens with an analog filter response. The highpass filter will respond to sudden changes immediately, whereas the lowpass filter will follow long term average trends. Therefore, even if the signal power is diminished after filtering, it may have a higher amplitude at some instant (= overshoot). When you recombine the LP and HP filtered branches, the overshoot will likely go away (unless you mess with the phases in between).
No need to worry, FS will handle signal amplitudes within the single precision range (-10^38 to 10^38 or so) allright. Only when you pass it to the soundcard, make sure it does not exceed +-1 (use a clipper). I usually throw in a volume knob and a clipping indicator at the end of the processing chain.
the overshoot may be unexpected, however it is not an artifact, nor a distortion. And it is not a digital phenomenon either - the same happens with an analog filter response. The highpass filter will respond to sudden changes immediately, whereas the lowpass filter will follow long term average trends. Therefore, even if the signal power is diminished after filtering, it may have a higher amplitude at some instant (= overshoot). When you recombine the LP and HP filtered branches, the overshoot will likely go away (unless you mess with the phases in between).
No need to worry, FS will handle signal amplitudes within the single precision range (-10^38 to 10^38 or so) allright. Only when you pass it to the soundcard, make sure it does not exceed +-1 (use a clipper). I usually throw in a volume knob and a clipping indicator at the end of the processing chain.
-
martinvicanek - Posts: 1328
- Joined: Sat Jun 22, 2013 8:28 pm
Re: HPF overshooting - surprising artifact
Martin hi - thanks for the clear explanation. It is much appreciated.
For "inside FS" - yes I saw that recombining the LF and HF parts had eliminated the phenomena.
I also understand that for FS this is not an issue due to increased dynamic range for processing ("can go over 1.000").
But this phenomena simply brought me to think - how is this issue overcome inside a digital cross-over network?
For instance, many of our studio monitors run a digital cross-over network for dividing the signal into LF (woofer) and HF (tweeter) and each element (woofer and tweeter) receive a dedicate amplifier.
In such a design - how do manufacturers use an HPF (for the tweeter) and avoid this phenomena? They can not recombine the signal and I think adding a clipper will distort the signal in some cases (not only this phenomena)?
Do they HAVE to add a look-ahead limiter? That will introduce some latency...
Or maybe the amplifier that comes after the cross-over has a much higher dynamic range than the cross-over network ?
For "inside FS" - yes I saw that recombining the LF and HF parts had eliminated the phenomena.
I also understand that for FS this is not an issue due to increased dynamic range for processing ("can go over 1.000").
But this phenomena simply brought me to think - how is this issue overcome inside a digital cross-over network?
For instance, many of our studio monitors run a digital cross-over network for dividing the signal into LF (woofer) and HF (tweeter) and each element (woofer and tweeter) receive a dedicate amplifier.
In such a design - how do manufacturers use an HPF (for the tweeter) and avoid this phenomena? They can not recombine the signal and I think adding a clipper will distort the signal in some cases (not only this phenomena)?
Do they HAVE to add a look-ahead limiter? That will introduce some latency...
Or maybe the amplifier that comes after the cross-over has a much higher dynamic range than the cross-over network ?
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
11 posts
• Page 1 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 12 guests