Go Back   Home > Forums > >
Home Forums Rules Articles diyAudio Store Blogs Gallery Wiki Register Donations FAQ Calendar Search Today's Posts Mark Forums Read

PC Based Computer music servers, crossovers, and equalization

group delay equalization
group delay equalization
Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 23rd October 2015, 04:29 PM   #1
CharlieLaub is offline CharlieLaub  United States
diyAudio Member
 
Join Date: Mar 2007
Location: Michigan
Default group delay equalization

I am interested in designing a group delay equalizer. I have found some journal articles on the subject from authors Quelhas and Okoniewski (for example, see here) that seem to outline a starting point for the placement of the poles of multiple all-pass sections. An optimization algorithm is sometimes applied to minimize the delay ripple. I'd like to learn more about this process before I jump in and try it myself.

If the pole locations are just an estimate, can this be made more crudely? Since optimization is being used anyway, how "close" does the starting point need to be to the solution?

The motivation for doing this is that I would like to start using some higher order elliptic filter based crossovers that I have developed. One consequence of the high order is high Q sections that result in group delay peaking. This can be ameliorated by group delay equalization, and this has spurred me on to look in to this topic in more detail.

If it works out for me I might create an ACD extension for doing GD EQ. I would probably set up the problem in Excel and then use the non-linear optimization that is part of the built in Solver add-in to complete the design.
__________________
Visit my Audio Web Page <<--CLICK TO LEARN MORE-->> Get my LADSPA plugins

Last edited by CharlieLaub; 23rd October 2015 at 04:33 PM.
  Reply With Quote
Old 23rd October 2015, 04:59 PM   #2
bwaslo is offline bwaslo  United States
Old guy with soldering iron
diyAudio Member
 
bwaslo's Avatar
 
Join Date: May 2006
Location: Portland, Oregon!
group delay equalization
If you aren't averse to dsp EQ, try the minidsp openDRC (or miniSharc) along with the free Rephase program. Given a measured dB+phase response of your speaker, group delay eq is almost trivially easy to do then. No equations or math, just move sliders to adjust phase at each frequency range. Works great.
__________________
[W9MJE] Horn spreadsheet SynergyCalc/; SmallSyns SmallSyns;
Crossover design Xsim; Depot diffusor super-easy diffusors
  Reply With Quote
Old 23rd October 2015, 05:10 PM   #3
CharlieLaub is offline CharlieLaub  United States
diyAudio Member
 
Join Date: Mar 2007
Location: Michigan
Quote:
Originally Posted by bwaslo View Post
If you aren't averse to dsp EQ, try the minidsp openDRC (or miniSharc) along with the free Rephase program. Given a measured dB+phase response of your speaker, group delay eq is almost trivially easy to do then. No equations or math, just move sliders to adjust phase at each frequency range. Works great.
No thanks, I'll pass on that. I'm not at all a fan of Dirac and FIR. I'm planning to implement the delay EQ as multiple 2nd order IIR all-pass filters in (software) DSP.

I stumbled on this MathWorks/MATLAB routine that let's the user specify some arbritrary group delay target function and then fits N delay stages to it. Manpage for the routine is here:
Arbitrary group delay filter specification object - MATLAB fdesign.arbgrpdelay
So it seems doable. This is the route that I want to try first. I will be trying to optimize the Q and corner frequency of each all-pass stage to minimize the group delay difference across the driver's passband, or something like that.

I'd just like to get the big picture regarding this approach, see what the pitfalls may be, etc. If anyone has experience with the fdesign.arbgrpdelay routine I would love to hear about it.
__________________
Visit my Audio Web Page <<--CLICK TO LEARN MORE-->> Get my LADSPA plugins

Last edited by CharlieLaub; 23rd October 2015 at 05:13 PM.
  Reply With Quote
Old 25th October 2015, 08:14 PM   #4
CharlieLaub is offline CharlieLaub  United States
diyAudio Member
 
Join Date: Mar 2007
Location: Michigan
Default Linear Phase equalization

No one has anything to add about IIR (all pass) delay equalization?

I guess this is not very nomenclature, so perhaps I should state the problem in more familiar terms:
Quote:
I am trying to achieve linear phase by adding all-pass filters to equalize (make flat) the system group delay.
Flat group delay and linear phase are the same thing.
__________________
Visit my Audio Web Page <<--CLICK TO LEARN MORE-->> Get my LADSPA plugins
  Reply With Quote
Old 25th October 2015, 09:50 PM   #5
djoffe is offline djoffe  United States
diyAudio Member
 
Join Date: Oct 2008
Gobind Daryanani's book has a nice exposition on the subject. The book is
Principles of active network synthesis and design

Akitika Preamp and Power Amp Kits
  Reply With Quote
Old 25th October 2015, 09:59 PM   #6
bwaslo is offline bwaslo  United States
Old guy with soldering iron
diyAudio Member
 
bwaslo's Avatar
 
Join Date: May 2006
Location: Portland, Oregon!
group delay equalization
Charlie,
I think you'll have a big job to get elliptical filtered stuff to linear phase via IIR. Not completely impossible, but it won't be exactly easy. Unless your speakers are minimum phase, it might not even be doable. Why do you rule out FIR, btw? (I didn't mean Dirac, RePhase is free and manually controlled not automated).
__________________
[W9MJE] Horn spreadsheet SynergyCalc/; SmallSyns SmallSyns;
Crossover design Xsim; Depot diffusor super-easy diffusors
  Reply With Quote
Old 25th October 2015, 11:36 PM   #7
CharlieLaub is offline CharlieLaub  United States
diyAudio Member
 
Join Date: Mar 2007
Location: Michigan
Quote:
Originally Posted by djoffe View Post
Gobind Daryanani's book has a nice exposition on the subject. The book is
Principles of active network synthesis and design
Thanks! I have that on my shelf. The section is only 3 pages, but I suppose it is useful in showing that delay EQ via optimization is possible.
__________________
Visit my Audio Web Page <<--CLICK TO LEARN MORE-->> Get my LADSPA plugins
  Reply With Quote
Old 25th October 2015, 11:40 PM   #8
CharlieLaub is offline CharlieLaub  United States
diyAudio Member
 
Join Date: Mar 2007
Location: Michigan
Quote:
Originally Posted by bwaslo View Post
Charlie,
I think you'll have a big job to get elliptical filtered stuff to linear phase via IIR. Not completely impossible, but it won't be exactly easy. Unless your speakers are minimum phase, it might not even be doable. Why do you rule out FIR, btw? (I didn't mean Dirac, RePhase is free and manually controlled not automated).
There are plenty of examples of using all-pass stages to equalize elliptical filters (at least low pass versions). I don't think there is any reason to use FIR, plus the DSP crossover systems that I am currently using only implement IIR filters. The problem doesn't seem to be too difficult, and I have all the tools to do it.

You are correct - I will need to implement delay EQ on the system delay that includes the phase response of each driver. I can know this very easily via my modeling program, ACD, or a system measurement.

Anyway, I will investigate further and then post about it.
__________________
Visit my Audio Web Page <<--CLICK TO LEARN MORE-->> Get my LADSPA plugins
  Reply With Quote
Old 26th October 2015, 12:32 AM   #9
CharlieLaub is offline CharlieLaub  United States
diyAudio Member
 
Join Date: Mar 2007
Location: Michigan
I applied a couple of all-pass filters to the low-pass stage of the elliptic-derived crossover filters that I am currently modeling. I could pretty easily get the group delay below the crossover point to flatten, with ripple, using only a couple of filters.

On the other hand, doing the same thing to the highpass side of the crossover seems very difficult to impossible. This is because of the shape of the delay that an all-pass filter can create. It's sort of like the amplitude response of a lowpass filter - there is some constant value at DC and then near the "corner frequency" can peak but then falls away to zero. This shape works well when you want to equalize the lowpass section because the delay of the crossover system is typically starting low and then peaking at the crossover point before dropping back down to near zero in the highpass side of the filter.

Unless I can find a way to do both high and low pass with IIR all-pass and digital delay I may need to consider embracing FIR for this. I have no idea if my hardware is fast enough for FIR processing, however, I might be able to used a mixed approach with IIR for the lower frequencies and FIR for the higher frequencies.

I seem to recall the FIR calculations for low frequencies requires more taps than for higher frequencies. Is that correct?

Or you need more taps for increased frequency resolution, and so at low frequencies or for steep changes in the frequency of phase response, you need a lot of taps. Is that statement a little more accurate???
__________________
Visit my Audio Web Page <<--CLICK TO LEARN MORE-->> Get my LADSPA plugins

Last edited by CharlieLaub; 26th October 2015 at 12:44 AM.
  Reply With Quote
Old 26th October 2015, 01:11 AM   #10
CharlieLaub is offline CharlieLaub  United States
diyAudio Member
 
Join Date: Mar 2007
Location: Michigan
So, now I am looking at rePhase's graphical "phase equalizer" (online, I haven't actually downloaded it yet). I should be able to use rePhase to "equalize" the group delay (not the frequency magnitude), reducing the peak and bringing up the region above 1kHz. Since this is rather smooth I might be able to get away with a relatively low number of taps. I already wrote some code to implement a circular buffer for IIR delay and I might be able to adapt that for FIR work or I could just break down and use some existing code, etc.

As an example, the group delay of my 7th order elliptic-filter-based crossover, and the group delay of a 7th order Butterworth crossover, is shown in the attachments.
Attached Images
File Type: png ellip7-GD.PNG (15.5 KB, 250 views)
File Type: png BUT-7-GD.PNG (16.7 KB, 248 views)
__________________
Visit my Audio Web Page <<--CLICK TO LEARN MORE-->> Get my LADSPA plugins
  Reply With Quote

Reply


group delay equalizationHide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Group Delay pargon Subwoofers 5 29th January 2010 07:37 PM
Group Delay Question 69stingray Multi-Way 12 1st November 2005 11:27 AM
Question about the group delay of this: BAM Multi-Way 1 23rd November 2003 05:07 PM
Group Delay............When Is Too Much Too Much? OMNIFEX Multi-Way 0 14th March 2003 07:30 AM
Group Delay? Ignite Multi-Way 6 13th November 2001 05:52 AM


New To Site? Need Help?

All times are GMT. The time now is 09:28 AM.


Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Resources saved on this page: MySQL 15.00%
vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Copyright ©1999-2018 diyAudio
Wiki