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

Multi-Way Conventional loudspeakers with crossovers

REW as FIR generator experiments
REW as FIR generator experiments
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 19th February 2020, 09:17 PM   #11
fluid is offline fluid  Australia
diyAudio Member
 
Join Date: Jan 2009
Quote:
Originally Posted by mark100 View Post
Will send file, thx

1/A (measurement being A) gives different results than imported-dirac/A.
Been meaning to investigate why....

Ok edit....just looked at 1/A vs dirac/A.
Both look the same as per green trace below. But only the dirac keeps working after xover.

The dirac import is 4124 taps with impulse centering. It gives the red trace that, after multipied by green, is the FIR filter after export.
1/A gives the blue trace and is no good.
Send me an mdat with the driver and crossover traces in and I will see if I get the same result if you like

Quote:
Originally Posted by mark100 View Post
The 3K is from the HF section raw measurement as below
It's really at about 2.3K....i think I'll start using a 0 degree waterfall perspective, to keep from skewing the reading of the response curve.

Not following what you mean by VHF boost.... the red rephase trace is the VHF xover that the VHF inverse is multiplied by.
(I just put both xovers on the rephase trace for brevity...)
I don't see anything in that measurement that would ring at one frequency for so long as shown in the waterfall, maybe just a setting problem as it doesn't appear in the final one.

I meant what filter did you use at the right hand side of the red rephase graph. That would stop any excess high frequency boost from the inversion stage.
  Reply With Quote
Old 19th February 2020, 09:55 PM   #12
mark100 is online now mark100  United States
diyAudio Member
 
Join Date: Dec 2010
REW as FIR generator experiments
Quote:
Originally Posted by fluid View Post

I meant what filter did you use at the right hand side of the red rephase graph. That would stop any excess high frequency boost from the inversion stage.
Aah, that's a LR384 dB/oct low pass at 19.5kHz.

Will send mdat
  Reply With Quote
Old 20th February 2020, 01:54 AM   #13
fluid is offline fluid  Australia
diyAudio Member
 
Join Date: Jan 2009
I see the reason why the 1/A is not working for you. The impulse peak of the BMS driver needs to be at time 0, REW will select the first negative peak when in fact you want the first positive peak. I have moved it manually and this is what the impulse looks like when you do that.

REW as FIR generator experiments-bms-peak-jpg

The Inverse then works as expected and is actually better than your Dirac pulse original when zoomed in, if all are aligned correctly there should be no difference

Here is the difference

REW as FIR generator experiments-dirac-rew-inverse-jpg

Your crossover impulse was not aligned to 0 either

REW as FIR generator experiments-crossover-impulse-jpg

I generated my own impulses to ensure time alignment this is the difference between the textbook example and the virtual measured one when you align all the impulses

REW as FIR generator experiments-textbook-vs-virtual-jpg

When doing these kinds of virtual combinations you have to have the impulses aligned the same or you might not get the correct result. Real life is a bit more forgiving than trace arithmetic though
Attached Images
File Type: jpg Textbook vs Virtual.jpg (89.7 KB, 255 views)
File Type: jpg BMS Peak.jpg (65.4 KB, 151 views)
File Type: jpg Dirac v REW Inverse.jpg (66.4 KB, 149 views)
File Type: jpg Crossover Impulse.jpg (52.9 KB, 149 views)
  Reply With Quote
Old 20th February 2020, 07:11 AM   #14
kimmosto is offline kimmosto  Finland
diyAudio Member
 
kimmosto's Avatar
 
Join Date: Oct 2005
Location: Kuopio
Quote:
Originally Posted by mark100 View Post
not off topic at all.
Ok. I just added new export to rev. 2.0.36.0: FIR transfer function for Driver i.e. driver's linear-phase target response divided by raw response to reference angle. This helps creating transfer function files for TF blocks without Calculator.

Add drivers, load measured+merged responses, create target curves with Optimizer and export FIR-FT files.
Add Transfer function block and buffer for each driver in XO and load exported FIR-TF files. Export IR files for FIR convolver with Impulse response window.

Last edited by kimmosto; 20th February 2020 at 07:15 AM.
  Reply With Quote
Old 20th February 2020, 02:24 PM   #15
mark100 is online now mark100  United States
diyAudio Member
 
Join Date: Dec 2010
REW as FIR generator experiments
Quote:
Originally Posted by fluid View Post
I see the reason why the 1/A is not working for you. The impulse peak of the BMS driver needs to be at time 0, REW will select the first negative peak when in fact you want the first positive peak. I have moved it manually and this is what the impulse looks like when you do that.

Click the image to open in full size.

The Inverse then works as expected and is actually better than your Dirac pulse original when zoomed in, if all are aligned correctly there should be no difference

Here is the difference

Click the image to open in full size.

Your crossover impulse was not aligned to 0 either

Click the image to open in full size.

I generated my own impulses to ensure time alignment this is the difference between the textbook example and the virtual measured one when you align all the impulses

Click the image to open in full size.

When doing these kinds of virtual combinations you have to have the impulses aligned the same or you might not get the correct result. Real life is a bit more forgiving than trace arithmetic though
Hi fluid, something seems amiss.

When i open the mdat i sent you, it shows the measurement, the dirac, and the xover all having positive impulse peak at t=0.
And I have 'For Imports Set t=0 at impulse peak' under Preference: Analysis.
So dunno why you're seeing timing offsets ????

Before I jump to what I've been seeing/trying, i need to follow what you did in your last post...because so far I can't replicate it, as simple as it appears.
My gathering is you:
a. made sure meas and xover positive peaks were at t=0
b. 1/A for measurement inverse
c. multiplied by xover

Correct? Did you change the impulse timing of 1/A before multiplying by xover?
Your process looks great...

I've tried various impulse alignments before applying trace arithmetic,
Time Align, which appears to be the same as Estimated IR delay shift applied.
Align IR Start (which makes the most visual sense to me in terms of picturing time alignment.)
And setting positive impulse peak to t=0.

All three have worked under the cascaded dual FFT test, but the Align IR Start has given the closest to perfect results with no more than a sample or two of time delay needed to sum the HF and VHF sections.
(I should add 'Align IR Start' needs 'Apply Windows, Keep Reference Time' when using IR Windows.)

The exact step by step is here REW as FIR maker | AV NIRVANA
I was hoping to get a reply for a better process, but in fairness to John, I know I'm off the intended REW use path.

Your help is most welcome....
Cause REW makes timing toooooo stinkin complicated imo.
Estimated IR delay gives one timing, IR Start Align another, and then there's Set Peak at t=0...and oh, we haven't even got to generate minimum phase.

If someone could provide a clear distinction between these timings...wow, what a help that would be Sorry for the rant
  Reply With Quote
Old 20th February 2020, 02:30 PM   #16
mark100 is online now mark100  United States
diyAudio Member
 
Join Date: Dec 2010
REW as FIR generator experiments
Quote:
Originally Posted by kimmosto View Post
Ok. I just added new export to rev. 2.0.36.0: FIR transfer function for Driver i.e. driver's linear-phase target response divided by raw response to reference angle. This helps creating transfer function files for TF blocks without Calculator.

Add drivers, load measured+merged responses, create target curves with Optimizer and export FIR-FT files.
Add Transfer function block and buffer for each driver in XO and load exported FIR-TF files. Export IR files for FIR convolver with Impulse response window.
Very nice kimmosto, thanks !

I'm going to begin digging into VCAD immediately.
Had shoulder surgery for accumulated sports injuries and am confined to desk duty for a month or so.
That's why/how I'm finally trying to get to bottom of REW's measurements and trace arithmetic capabilities. VCAD makes a great next learning project..
  Reply With Quote
Old 20th February 2020, 11:49 PM   #17
fluid is offline fluid  Australia
diyAudio Member
 
Join Date: Jan 2009
Quote:
Originally Posted by mark100 View Post
Hi fluid, something seems amiss.

When i open the mdat i sent you, it shows the measurement, the dirac, and the xover all having positive impulse peak at t=0.
And I have 'For Imports Set t=0 at impulse peak' under Preference: Analysis.
So dunno why you're seeing timing offsets ????
I have the same preference set but when opening an mdat you are not importing it, that is for importing impulse responses directly.

If you do have the impulses with positive peaks at t=0 then check that the ref mark is also at 0.

If they are all aligned correctly then combining them should give correct results.

Quote:
Originally Posted by mark100 View Post
Before I jump to what I've been seeing/trying, i need to follow what you did in your last post...because so far I can't replicate it, as simple as it appears.
My gathering is you:
a. made sure meas and xover positive peaks were at t=0
b. 1/A for measurement inverse
c. multiplied by xover

Correct? Did you change the impulse timing of 1/A before multiplying by xover?
Your process looks great...
Yes that is what I did, I manually moved the peak of the bms measurement so the positive peak was at t=0, REW's estimate IR delay put the first negative peak at 0 which is what initially made the convolutions give unexpected results.

I made my own version of your crossover in rephase and imported that so the peak was already at 0.

The 1/A was done on the measurement after the timing was changed. I did not change the timing of the inverse but oddly the peak was put negative 100ms from the measurement but the reference point was set to the peak so the combination worked as expected.

If the inverse function is working multiplying the inverse by the original will give you a flat line which is what I got when I aligned all the peaks, combining the inverse with the crossover and then multiplying that by the original should give you the crossover shape with a slightly different noise floor. If you don't get that then timing is wrong somewhere.

The reason I bought it up is because you said the inverse function gave a different result to a dirac pulse division. That can only be because of a timing mismatch or a bad pulse, your pulse was as a good as it's possible to make so that wasn't the issue.

Quote:
Originally Posted by mark100 View Post
I've tried various impulse alignments before applying trace arithmetic,
Time Align, which appears to be the same as Estimated IR delay shift applied.
Align IR Start (which makes the most visual sense to me in terms of picturing time alignment.)
And setting positive impulse peak to t=0.

All three have worked under the cascaded dual FFT test, but the Align IR Start has given the closest to perfect results with no more than a sample or two of time delay needed to sum the HF and VHF sections.
(I should add 'Align IR Start' needs 'Apply Windows, Keep Reference Time' when using IR Windows.)

The exact step by step is here REW as FIR maker | AV NIRVANA
I was hoping to get a reply for a better process, but in fairness to John, I know I'm off the intended REW use path.

Your help is most welcome....
Cause REW makes timing toooooo stinkin complicated imo.
Estimated IR delay gives one timing, IR Start Align another, and then there's Set Peak at t=0...and oh, we haven't even got to generate minimum phase.

If someone could provide a clear distinction between these timings...wow, what a help that would be Sorry for the rant
I have tried all of the automatic settings for aligning IR's and have found the only way to be sure is to do it manually. I have done a lot of vector averages and time align works pretty well for those but it is not always correct so if ultimate accuracy is needed then manual alignment by using the arrow keys will get you there it just takes time and effort.

For minimum phase follow John's advice in the other thread generate minimum phase version from the all spl measurement actions tab. Export that with your windows set as you want.
  Reply With Quote
Old 21st February 2020, 03:34 PM   #18
mark100 is online now mark100  United States
diyAudio Member
 
Join Date: Dec 2010
REW as FIR generator experiments
Quote:
Originally Posted by fluid View Post
I have the same preference set but when opening an mdat you are not importing it, that is for importing impulse responses directly.

If you do have the impulses with positive peaks at t=0 then check that the ref mark is also at 0.

If they are all aligned correctly then combining them should give correct results.

Yes that is what I did, I manually moved the peak of the bms measurement so the positive peak was at t=0, REW's estimate IR delay put the first negative peak at 0 which is what initially made the convolutions give unexpected results.

I made my own version of your crossover in rephase and imported that so the peak was already at 0.

The 1/A was done on the measurement after the timing was changed. I did not change the timing of the inverse but oddly the peak was put negative 100ms from the measurement but the reference point was set to the peak so the combination worked as expected.

If the inverse function is working multiplying the inverse by the original will give you a flat line which is what I got when I aligned all the peaks, combining the inverse with the crossover and then multiplying that by the original should give you the crossover shape with a slightly different noise floor. If you don't get that then timing is wrong somewhere.

The reason I bought it up is because you said the inverse function gave a different result to a dirac pulse division. That can only be because of a timing mismatch or a bad pulse, your pulse was as a good as it's possible to make so that wasn't the issue.

I have tried all of the automatic settings for aligning IR's and have found the only way to be sure is to do it manually. I have done a lot of vector averages and time align works pretty well for those but it is not always correct so if ultimate accuracy is needed then manual alignment by using the arrow keys will get you there it just takes time and effort.

For minimum phase follow John's advice in the other thread generate minimum phase version from the all spl measurement actions tab. Export that with your windows set as you want.

All you say makes sense and matches my understandings.

I'm aware of the timing difference in opening an mdat with a previous measurement, and importing an impulse.
Fortunately REW keeps us informed which is which, on the Measurement info panel.
Check out the mdat i sent and you'll see the measurement was an import and impulse was at t=0. If it's not at t=0 it's been shifted around by actions.
One huge difficulty i've found, is once i shift an impulse, and try to shift again, or apply different IR windows, is that after one shift all bets appear to be off.
I just start completely over with every different alignment attempt.

I've come to the conclusion 1/A inverse must have a bug, or I'm missing something fundamental. REW V5.20 Beta 37

To help get to the bottom of why I get good inverse results with dirac / meas, and not with 1 / meas, I simplified the test platform and am now using a single TC9 on a 6" wide baffle.

I'm applying the FIR correction filter with xover and then making acoustical measurements to eliminate any potential cascaded FIR filter complexities.

So simple easy peasy now.
And both methods; setting all impulses at t=0, or using Align IR Start, prior to trace arithmetic, give near perfect REW results.

Below is the TC9's raw SPL and impulse traces.
Middle row is the inverses. Dirac / meas, and 1/ meas.
And third row is the inverses' impulses.
As you can see, the two inverses have identical looking mag and phase curves.
But look at the dang impulse difference!

And since the 1/A inverse is from a meas set t=0 at peak, I can't see how the whacked out impulse can be due to anything other than a bug. or again, me totally missing something. I've tried IR start, Est IR delay, etc...all whacked impulses...

I Dunno what's a happening , .......obviously
Attached Images
File Type: jpg TC9 Inverse impulse comparison.jpg (205.0 KB, 20 views)
  Reply With Quote
Old 21st February 2020, 08:52 PM   #19
fluid is offline fluid  Australia
diyAudio Member
 
Join Date: Jan 2009
Quote:
Originally Posted by mark100 View Post
All you say makes sense and matches my understandings.

Check out the mdat i sent and you'll see the measurement was an import and impulse was at t=0. If it's not at t=0 it's been shifted around by actions.


I've come to the conclusion 1/A inverse must have a bug, or I'm missing something fundamental. REW V5.20 Beta 37

To help get to the bottom of why I get good inverse results with dirac / meas, and not with 1 / meas, I simplified the test platform and am now using a single TC9 on a 6" wide baffle.

I'm applying the FIR correction filter with xover and then making acoustical measurements to eliminate any potential cascaded FIR filter complexities.

As you can see, the two inverses have identical looking mag and phase curves.
But look at the dang impulse difference!

And since the 1/A inverse is from a meas set t=0 at peak, I can't see how the whacked out impulse can be due to anything other than a bug. or again, me totally missing something. I've tried IR start, Est IR delay, etc...all whacked impulses...

I Dunno what's a happening , .......obviously
There is something happening and my only conclusion is that somehow there is a timing issue. By using your data and moving the positive peaks of the impulses to 0 I get the expected result as shown in the graphs previously, and you get the same with the TC9.

These are shots taken from the mdat when first opened to show how they display for me, at this point I have not touched them, if this is not how they look for you I can't explain why.

REW as FIR generator experiments-bms-mdat-jpg

REW as FIR generator experiments-1-meas-mdat-jpg

This is a zoomed version of the 1/A impulse when timing is correct, which is a good match for your 43ms window time

REW as FIR generator experiments-0-inverse-jpg

The mag and phase trace for the dirac vs inverse are not the same, there is an obvious difference between the two visually, the 1/A is a more accurate inverse as seen most readily by the phase trace below 100Hz. Your TC9 measurement is very clean there, the dirac is not quite as good. But having said that the practical difference is nothing to worry about.

I don't think this is a bug it is just showing the truth which isn't so pretty, the dirac pulse is necessarily band limited at either end which is why the pulse is rounded at the top and bottom when you zoom in. The 1/A being a mathematical function is probably less limited which is why you see all the hash. My 1/A looks funky when zoomed out too, but when combined back it gives a perfect flat line, no wiggle even down below 0.1dB.

I only bought it up because I thought it might save you time dividing by dirac pulses, seems like that didn't quite work out
Attached Images
File Type: jpg BMS mdat.jpg (74.8 KB, 63 views)
File Type: jpg 1-meas mdat.jpg (55.8 KB, 60 views)
File Type: jpg t-0 inverse.jpg (65.8 KB, 61 views)
  Reply With Quote
Old 21st February 2020, 09:47 PM   #20
mark100 is online now mark100  United States
diyAudio Member
 
Join Date: Dec 2010
REW as FIR generator experiments
Oh gosh fluid, i owe you a big apology...
Reading your post, i went to the email and checked the mdat there...
it is not the same as i have in the folder for our correspondence...
I'm sorry man, i've wasted alot of your time...and mine...

Whew, I'm letting 1/A go for a while....
  Reply With Quote

Reply


REW as FIR generator experimentsHide 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
Bizarre experiments of a Mexican mexican Multi-Way 7 19th February 2018 04:32 AM
Initial Experiments for Fun stuphi Multi-Way 17 4th June 2009 05:19 PM
Weird cat experiments poobah The Lounge 10 26th July 2006 11:53 PM
My first horn experiments till Multi-Way 110 31st May 2004 02:55 PM


New To Site? Need Help?

All times are GMT. The time now is 10:06 PM.


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