convolution room correction and room curve

moedra

Member
Joined
Mar 1, 2021
Messages
133
Happy to clarify.

I did no test anything outside your method. I followed your method Target-MP / L Smoothed-MP (A/B = L Inv). Exported as wav with the MP radio button selected.

Everything else I said is only theory to determine why the poster had different IR than myself.
I do think something is wrong with his copy of REW, or something else is weird there.

And your filters sound as they should? I know that's difficult to put into words, but you know what I mean. Do they sound good? Is the phantom center intact? Are transients punchy? Is the soundstage nice and wide? It should be...
 

moedra

Member
Joined
Mar 1, 2021
Messages
133
If anyone else has a moment to try out the procedure and let me know what your experience is, I'd appreciate it.
 

linuxonly

Member
Thread Starter
Joined
Jul 27, 2024
Messages
73
More  
Preamp, Processor or Receiver
Logitech Z906
DAC
AMD FCH Azalia
Computer Audio
SPDIF output with alsa, pipewire, wireplumber on Fedora 40
Streaming Equipment
Kodi
Front Height Speakers
33 in
Middle Height Speakers
30 in
Rear Height Speakers
57 in
Video Display Device
X11/VGA + X11/DVI

bixite

Member
Joined
Nov 30, 2022
Messages
17
Something seems wrong there. When I do it, everything works fine. If it didn't, I wouldn't have written the guide that way.
I will update REW and also repeat the process from scratch. I let you know. Thank you (and linuxonly as well) for your support!

I FOUND THE PROBLEM ... and the problem were my measurements
- I measure up to 24kHz. Thus, my exported 1/12 smoothed measurement contained data above 22kHz.
- After I deleted any data above 22kHz from the data, the whole process worked like a charm and A/B with Target-MP/Measurement-MP delivered an IR

Finding this problem took me a few hours of testing, trying and playing around. But now I was able to generate the first filters according to your document (which is excellent by the way!). I was also able to generate a smoothed measurement with 1/12 smooting up to 225Hz and 1/6 smoothing above 225Hz. I had a short listen and it sounds great (controlled bass with punch and ease, great imaging and stage, no signs of ringing, low latency, a 16k filter also seems to work without quality loss in my scenario).
I will experiment with a few targets and measure the results (after some sleep).

Thanks again for sharing this 😊👍🏻!
 
Last edited:

moedra

Member
Joined
Mar 1, 2021
Messages
133
I will update REW and also repeat the process from scratch. I let you know. Thank you (and linuxonly as well) for your support!

I give up for tonight. My beta is the current version. On my second system I installed the current official release. I replayed the process. Whenever A and B are minimum-phase the result has no IR. Can there be a problem in my preferences?
I will give it another try tomorrow.

View attachment 73305
Here are my preference screens for reference. I may need to include these in the guide.

1724983378397.png


1724983572142.png


1724983641926.png
 

moedra

Member
Joined
Mar 1, 2021
Messages
133
I will update REW and also repeat the process from scratch. I let you know. Thank you (and linuxonly as well) for your support!

I FOUND THE PROBLEM ... and the problem were my measurements
- I measure up to 24kHz. Thus, my exported 1/12 smoothed measurement contained data above 22kHz.
- After I deleted any data above 22kHz from the data, the whole process worked like a charm and A/B with Target-MP/Measurement-MP delivered an IR

Finding this problem took me a few hours of testing, trying and playing around. But now I was able to generate the first filters according to your document (which is excellent by the way!). I was also able to generate a smoothed measurement with 1/12 smooting up to 225Hz and 1/6 smoothing above 225Hz. I had a short listen and it sounds great (controlled bass with punch and ease, great imaging and stage, no signs of ringing, low latency, a 16k filter also seems to work without quality loss in my scenario).
I will experiment with a few targets and measure the results (after some sleep).

Thanks again for sharing this 😊👍🏻!
Amazing! This information is all good to know. I'm glad you were able to work through it.
 

bixite

Member
Joined
Nov 30, 2022
Messages
17
Amazing! This information is all good to know. I'm glad you were able to work through it.
I continued some listening today and I am really impressed. I also used your target settings which sound very well balanced!
I am inspired and will do more testing.
This morning I saw a YouTube video about some research with high frequency content. Although inaudible, higher frequencies (also above 20k!) can be sensed by humans and respective (positive) brain activity can be measured (it was on the "Passion for Sound" channel). Therefore, I will experiment an omit a low-pass cutoff above 20kHz.
 

linuxonly

Member
Thread Starter
Joined
Jul 27, 2024
Messages
73
More  
Preamp, Processor or Receiver
Logitech Z906
DAC
AMD FCH Azalia
Computer Audio
SPDIF output with alsa, pipewire, wireplumber on Fedora 40
Streaming Equipment
Kodi
Front Height Speakers
33 in
Middle Height Speakers
30 in
Rear Height Speakers
57 in
Video Display Device
X11/VGA + X11/DVI
Here are my preference screens for reference. I may need to include these in the guide.
Hey, thanks a lot. Very useful. Had to deviate a little. Not sure if it's because it's the linux version of REW, I'm using the current one. No beta.
Capture d’écran du 2024-08-30 17-11-14.png Capture d’écran du 2024-08-30 17-10-48.png
 

ddude003

AV Addict
Joined
Aug 13, 2017
Messages
1,548
Location
Somewhere Northeast of Kansas City Missouri
More  
Preamp, Processor or Receiver
PrimaLuna Dialogue Premium TubePre (2 channel+sub)
Main Amp
McIntosh MC152 SS Amp (2 channel)
Additional Amp
Yamaha RX-A850 Pro (the other 5 channels lol)
DAC
Chord Electronics Ltd. Qutest
Computer Audio
MacBook Pro, Custom i7 7700k De-lid 2xAsus1080ti GFX, Audirvana Studio, Hang Loose Convolver, Tone Projects Michelangelo, Pulsar Massive & 8200, LiquidSonics, SoX
Universal / Blu-ray / CD Player
Sony UBP-X700 /M Ultra HD 4K HDR & PS5
Streaming Equipment
Netgear Nighthawk S8000 Streaming Switch, Lumin U1 Mini Streamer Transport
Streaming Subscriptions
QoBuz Studio Premier, Amazon Prime & Netflix
Front Speakers
Martin Logan ElectroMotion ESL
Center Channel Speaker
Martin Logan Motion C2
Surround Speakers
Martin Logan Motion 4
Surround Back Speakers
Martin Logan Motion 4 (yes, another set of these)
Subwoofers
Martin Logan Dynamo 700
Other Speakers
Cifte 12AU7 NOS & Genalex Gold Lion Tubes in Pre
Screen
Elite Screens Aeon CLR3 0.8 Gain 103-inch
Video Display Device
Samsung The Premiere LSP7T UST Laser Projector
Remote Control
PrimaLuna, Lumin iApp, Samsung & Yamaha
Other Equipment
ThrowRug, SaddleBlankets, WideBand & Bass Traps...
I continued some listening today and I am really impressed. I also used your target settings which sound very well balanced!
I am inspired and will do more testing.
This morning I saw a YouTube video about some research with high frequency content. Although inaudible, higher frequencies (also above 20k!) can be sensed by humans and respective (positive) brain activity can be measured (it was on the "Passion for Sound" channel). Therefore, I will experiment an omit a low-pass cutoff above 20kHz.
This paper may be of interest...

There's Life Above 20 Kilohertz!
A Survey of Musical Instrument Spectra to 102.4 KHz
James Boyk
California Institute of Technology Music Lab, 0-51 Caltech, Pasadena, CA 91125, USA

Google is your frenemy...
 
Last edited:

bixite

Member
Joined
Nov 30, 2022
Messages
17
This paper may be of interest...

There's Life Above 20 Kilohertz!
A Survey of Musical Instrument Spectra to 102.4 KHz
James Boyk
California Institute of Technology Music Lab, 0-51 Caltech, Pasadena, CA 91125, USA

Google is your frenemy...
Thanks, for the hint to the paper. More reason for me not to touch the highest frequencies and let them live 😁. However, I assume that these frequencies are typically cut in the music production process. I need to check some more information about digital mastering and what is typically done for frequencies beyond 20k.
 

linuxonly

Member
Thread Starter
Joined
Jul 27, 2024
Messages
73
More  
Preamp, Processor or Receiver
Logitech Z906
DAC
AMD FCH Azalia
Computer Audio
SPDIF output with alsa, pipewire, wireplumber on Fedora 40
Streaming Equipment
Kodi
Front Height Speakers
33 in
Middle Height Speakers
30 in
Rear Height Speakers
57 in
Video Display Device
X11/VGA + X11/DVI
Amazing! This information is all good to know. I'm glad you were able to work through it.
I FOUND THE PROBLEM ... and the problem were my measurements
- I measure up to 24kHz. Thus, my exported 1/12 smoothed measurement contained data above 22kHz.
- After I deleted any data above 22kHz from the data, the whole process worked like a charm and A/B with Target-MP/Measurement-MP delivered an IR

Finding this problem took me a few hours of testing, trying and playing around
Hmm, could you tell me more? Why 22kHz is important? Why not 21 or 18? On my Debian computer, I sample at 48kHz, measure from 1 to 24kHz and have the same problem, no data to export because there is no impulse data. What's the exact procedurte you took to fix this, and how to avoid it in the future. I'm tired redoing everything from scratch on that computer.

IIRC it's exactly what I did on the F40 computer and had not that problem whatsoever, not a single time.

UPDATE

I kept only data from 20-20k and re-imported the text files. Was finally able to save IR wav files. But there must be a procedure to avoid for it not happen again in the future.

Is it related to what John said?

Doing that will produce very large measurement files with much of the additional retained impulse response being noise floor.
 
Last edited:

bixite

Member
Joined
Nov 30, 2022
Messages
17
Hmm, could you tell me more? Why 22kHz is important? Why not 21 or 18? On my Debian computer, I sample at 48kHz, measure from 1 to 24kHz and have the same problem, no data to export because there is no impulse data. What's the exact procedurte you took to fix this, and how to avoid it in the future. I'm tired redoing everything from scratch on that computer.

IIRC it's exactly what I did on the F40 computer and had not that problem whatsoever, not a single time.

UPDATE

I kept only data from 20-20k and re-imported the text files. Was finally able to save IR wav files. But there must be a procedure to avoid for it not happen again in the future.

Is it related to what John said?
This should not be related to John's comment about "Keep Full IR". But John would probably be able to explain the behaviour of the trace arithmetic when your input data exceeds 22kHz. It might be a bug but there might also be good reasons for it. In the later case, it would be extremly helpful to output a short warning message. I just stumbled upon something comparable in the Equalizer APO convolver. It is somehow limited to convolution up to 22.050 Hz and is doing some weird manipulations when your filter has no roll-off.
There are following workarounds:
  • limit your measurement to 22kHz (or 20kHz) and you will not run into the problem
  • with measurements containing data above 22kHz put the limitation into the export of the frequency response ("Use custom range" option)
  • not nice, but also feasible: eliminate respective data in the exported TXT-files
Now that I know the problem, I can easily work around it. Finding it out was taking many hours 🤣.

BTW: I am currently doing experiments with the smoothing and combine different smoothings into one frequency response. This is comparable to building my own version of the variable smoothing option in REW. This produces great results but I still have to do more experiments and comparisons. It would be great to find some expert documentation on this topic. With some help of AI I am in the following ranges:

20-50Hz: 1/24
50-100Hz: 1/24 or 1/12
100-225Hz: 1/12 or 1/6
225-5000Hz: 1/6
5000-10000Hz: 1/6 or 1/3
10000Hz and higher: 1/3, 1/2 or 1/1

So many variants possible 🙃 ... and a lot of manual work. It is not only copying the right data from several exports into one file. After that, I also have to look at the transitions between the areas and smooth them seperatly, if they are too edgy. Anyway, I am having fun with some R&D 😁
 

linuxonly

Member
Thread Starter
Joined
Jul 27, 2024
Messages
73
More  
Preamp, Processor or Receiver
Logitech Z906
DAC
AMD FCH Azalia
Computer Audio
SPDIF output with alsa, pipewire, wireplumber on Fedora 40
Streaming Equipment
Kodi
Front Height Speakers
33 in
Middle Height Speakers
30 in
Rear Height Speakers
57 in
Video Display Device
X11/VGA + X11/DVI
REW does have some form of variable smoothing. I don't know the specifications though.

  • Use Ctrl+Shift+3 to apply 1/3rd octave smoothing, repeat to remove the smoothing. Ctrl+Shift+X applies variable smoothing


Capture d’écran du 2024-08-31 12-10-12.png
 

ddude003

AV Addict
Joined
Aug 13, 2017
Messages
1,548
Location
Somewhere Northeast of Kansas City Missouri
More  
Preamp, Processor or Receiver
PrimaLuna Dialogue Premium TubePre (2 channel+sub)
Main Amp
McIntosh MC152 SS Amp (2 channel)
Additional Amp
Yamaha RX-A850 Pro (the other 5 channels lol)
DAC
Chord Electronics Ltd. Qutest
Computer Audio
MacBook Pro, Custom i7 7700k De-lid 2xAsus1080ti GFX, Audirvana Studio, Hang Loose Convolver, Tone Projects Michelangelo, Pulsar Massive & 8200, LiquidSonics, SoX
Universal / Blu-ray / CD Player
Sony UBP-X700 /M Ultra HD 4K HDR & PS5
Streaming Equipment
Netgear Nighthawk S8000 Streaming Switch, Lumin U1 Mini Streamer Transport
Streaming Subscriptions
QoBuz Studio Premier, Amazon Prime & Netflix
Front Speakers
Martin Logan ElectroMotion ESL
Center Channel Speaker
Martin Logan Motion C2
Surround Speakers
Martin Logan Motion 4
Surround Back Speakers
Martin Logan Motion 4 (yes, another set of these)
Subwoofers
Martin Logan Dynamo 700
Other Speakers
Cifte 12AU7 NOS & Genalex Gold Lion Tubes in Pre
Screen
Elite Screens Aeon CLR3 0.8 Gain 103-inch
Video Display Device
Samsung The Premiere LSP7T UST Laser Projector
Remote Control
PrimaLuna, Lumin iApp, Samsung & Yamaha
Other Equipment
ThrowRug, SaddleBlankets, WideBand & Bass Traps...
Thanks, for the hint to the paper. More reason for me not to touch the highest frequencies and let them live 😁. However, I assume that these frequencies are typically cut in the music production process. I need to check some more information about digital mastering and what is typically done for frequencies beyond 20k.
I think you will find that there are many recording/tracking, mixing and masterings done at 48kHz... Up and/or Down sampling for release to 44.1 kHz at 16 bit and up to 32 bit 196 kHz for other formats such as high rez downloads and streaming services like Qubuz...

And the GML 8200 Parametric Equalizer is equipped with overlapping frequency bands ranging from an infrasonic 15Hz to an ultrasonic 26kHz... This is a very popular hardware EQ found in many mixing and mastering facilities... If I'm not mistaken, the Manly Massive Passive and the Hendyamps Michelangelo have a similar top end range... I think that Rupert Neve has some of this kind of headroom in his consoles and https://rupertneve.com/news/rupert-neve-life-beyond-measurement-part-5 some great quotes...
 
Last edited:

bixite

Member
Joined
Nov 30, 2022
Messages
17
FYI. A comparison of measurements and generated filters (REWs 1/12-smoothing, my mixed-smoothing, REWs variable-smoothing).
My mixed smoothing in the middle is using 1/24, 1/12, 1/6 and 1/3 smoothings for different regions of the frequency response (transitions are approx. at about 66Hz, 225Hz, 10kHz).

REWs variable smoothing delivers more correction in the bass (below 200Hz) and less correction in the highs.

1725136807082.png


I have already done some measurements with filters applied:

Looking at the bass, REWs variable smoothing is the winner. It corrects more and gets better results:

1725137499975.png


Looking at the mids, the differences are smaller and I doubt that they are audible. The biggest difference is about 0,8db around 450Hz.

1725137786328.png

In the highs the differences are similarily small.
1725138244814.png


My conclusions (for the moment):
  • The method works great with different smoothings. It produces FIR filters with excellent sound quality and low latency. I love it! 😍
  • I will most probably go forward with the variable smoothing from REW and rather look for finetuning of the target. I like the proposed 0,4/0,4 target. It is a good starting point.
Additional remark: I have also looked at the phase, distortion, impule, clarity, waterfall, spectogram ... they are all very similar.
 

linuxonly

Member
Thread Starter
Joined
Jul 27, 2024
Messages
73
More  
Preamp, Processor or Receiver
Logitech Z906
DAC
AMD FCH Azalia
Computer Audio
SPDIF output with alsa, pipewire, wireplumber on Fedora 40
Streaming Equipment
Kodi
Front Height Speakers
33 in
Middle Height Speakers
30 in
Rear Height Speakers
57 in
Video Display Device
X11/VGA + X11/DVI
The method works great with different smoothings. It produces FIR filters with excellent sound quality and low latency. I love it! 😍
  • I will most probably go forward with the variable smoothing from REW and rather look for finetuning of the target. I like the proposed 0,4/0,4 target. It is a good starting point.
Additional remark: I have also looked at the phase, distortion, impule, clarity, waterfall, spectogram ... they are all very similar.
Excellent research work!
 

moedra

Member
Joined
Mar 1, 2021
Messages
133
Thanks for sharing 😊👍🏻. I use very similar preferences. Is it important in your workflow(s) to "Keep full IR" and to "Set window widths automatically"?
Honestly I have had it set that way for a very long time. I can't remember exactly what the reason was. I think it is more important to leave decimate IR off. If truncate after 1.7 works and has no audible effect, then use that.
 

moedra

Member
Joined
Mar 1, 2021
Messages
133
I'm glad you guys are finding the method adequate and easy to follow. I put a lot of time into this. It's fun seeing you all run with it.

I think a lot of the time and effort you're spending on editing the text files could be saved with a script that interpolates between smoothing values at several definable frequencies. I wonder if it is something John could put into REW.

1/12 smoothing overall still sounds fantastic, though.
 
Last edited:

ddude003

AV Addict
Joined
Aug 13, 2017
Messages
1,548
Location
Somewhere Northeast of Kansas City Missouri
More  
Preamp, Processor or Receiver
PrimaLuna Dialogue Premium TubePre (2 channel+sub)
Main Amp
McIntosh MC152 SS Amp (2 channel)
Additional Amp
Yamaha RX-A850 Pro (the other 5 channels lol)
DAC
Chord Electronics Ltd. Qutest
Computer Audio
MacBook Pro, Custom i7 7700k De-lid 2xAsus1080ti GFX, Audirvana Studio, Hang Loose Convolver, Tone Projects Michelangelo, Pulsar Massive & 8200, LiquidSonics, SoX
Universal / Blu-ray / CD Player
Sony UBP-X700 /M Ultra HD 4K HDR & PS5
Streaming Equipment
Netgear Nighthawk S8000 Streaming Switch, Lumin U1 Mini Streamer Transport
Streaming Subscriptions
QoBuz Studio Premier, Amazon Prime & Netflix
Front Speakers
Martin Logan ElectroMotion ESL
Center Channel Speaker
Martin Logan Motion C2
Surround Speakers
Martin Logan Motion 4
Surround Back Speakers
Martin Logan Motion 4 (yes, another set of these)
Subwoofers
Martin Logan Dynamo 700
Other Speakers
Cifte 12AU7 NOS & Genalex Gold Lion Tubes in Pre
Screen
Elite Screens Aeon CLR3 0.8 Gain 103-inch
Video Display Device
Samsung The Premiere LSP7T UST Laser Projector
Remote Control
PrimaLuna, Lumin iApp, Samsung & Yamaha
Other Equipment
ThrowRug, SaddleBlankets, WideBand & Bass Traps...

moedra

Member
Joined
Mar 1, 2021
Messages
133
@moedra, Why not simply ask John for this custom smoothing feature here https://www.avnirvana.com/threads/rew-api-beta-releases.12981/ ???
I think I will. In the meantime, here's a workaround that doesn't require editing txt files. It doesn't interpolate the values across the spectrum, but it does at least blend the two values together at a definable frequency over a very small fixed range. Unfortunately, we can't define the blend range, but at least we have something.

1 • Export the measurement at 1/12 smoothing
2 • Export the measurement again at 1/6 smoothing
3 • Import both smoothed responses
4 • Go to the arithmetic panel and merge B to A as follows with blend enabled:
- A is the smoother response, i.e. 1/6
- B is the more detailed response, i.e. 1/12
- Type in the frequency at which you want the blend to happen, then generate the result

The result of the math will leave you with a measurement with 1/12 smoothing below the blend frequency and 1/6 smoothing above it. All that remains is to generate a min phase copy of this measurement.

1725328229746.png
 
Last edited:

linuxonly

Member
Thread Starter
Joined
Jul 27, 2024
Messages
73
More  
Preamp, Processor or Receiver
Logitech Z906
DAC
AMD FCH Azalia
Computer Audio
SPDIF output with alsa, pipewire, wireplumber on Fedora 40
Streaming Equipment
Kodi
Front Height Speakers
33 in
Middle Height Speakers
30 in
Rear Height Speakers
57 in
Video Display Device
X11/VGA + X11/DVI
I think I will. In the meantime, here's a workaround that doesn't require editing txt files. It doesn't interpolate the values across the spectrum, but it does at least blend the two values together at a definable frequency over a very small fixed range. Unfortunately, we can't define the blend range, but at least we have something.

1 • Export the measurement at 1/12 smoothing
2 • Export the measurement again at 1/6 smoothing
3 • Import both smoothed responses
4 • Go to the arithmetic panel and merge B to A as follows with blend enabled:
- A is the smoother response, i.e. 1/6
- B is the more detailed response, i.e. 1/12
- Type in the frequency at which you want the blend to happen, then generate the result

The result of the math will leave you with a measurement with 1/12 smoothing below the blend frequency and 1/6 smoothing above it. All that remains is to generate a min phase copy of this measurement.

View attachment 73414
Hi,

I can see 1/6 is less detailed but why is it desirable? Less latency? Smaller files? Why 300 Hz? Is the difference audible? I lack the theory concerning smoothing.
No need to explain everything, just point me in the right direction, unless the explanation is very basic.

In my mind 1/12 represents 1 note of the musical scale resolution, 1/6 would represent 2. I might be wrong but intuitively that's what I underdand.

I already have those books:
Sound Reproduction The Acoustics and Psychoacoustics of Loudspeakers and Rooms Floyd Toole
Master Handbook of Acoustics
THE ACOUSTICS AND PSYCHOACOUSTICS OF LOUDSPEAKERS AND ROOMS – THE STEREO PAST AND THE MULTICHANNEL FUTURE

Capture d’écran du 2024-09-02 23-34-56.png
 
Top Bottom