Post Reply 
Room correction with convolution per sample rate
29-11-2018, 07:52
Post: #5
RE: Room correction with convolution per sample rate
I ran some tests with convolution filters and upsampling. I was trying to figure out the order of upsampling/convolution by analyzing the SPL. Unfortunately, the results are confusing.

When using JRiver as a server, enabling the Acourate room correction FIR filters results in an overall reduction in volume of 5 dB (using a Sound Level Meter). This is close to what was predicted by Acourate.

With MinimServer as a server (running on Melco): Playing the same 16/44.1 kHz FLAC test track for all the tests below:

Test 1: bit perfect
source: 16/44.1 kHz
stream.options: <blank>
stream.transcode: <blank>
SPL: 80 dB

Test 2: upsample all FLAC to 24/352 kHz
source: 16/44.1 kHz
stream.options: <blank>
stream.transcode: flac:wav24;352
SPL: 80 dB

This seems okay. DAC also shows 24/352 kHz data (so upsampling is working)

Test 3: apply 44.1 kHz convolution filter
source: 16/44.1 kHz
stream.options: convOut=-i /mnt/disk1/share/MinimServer/convolution/Cor1S44.wav -lavfi afir
stream.transcode: <blank>
SPL: 80 dB

The convolution filter should have reduced the SPL to around 75 dB, yet it is unchanged at 80 dB?

Is the convolution a no-op? Or does ffmpeg "normalize" the output for "-lavfi afir" convolution?

Test 4: apply 44.1 kHz convolution filter and upsample all FLAC to 24/352 kHz
source:16/44.1 kHz
stream.options: convOut=-i /mnt/disk1/share/MinimServer/convolution/Cor1S44.wav -lavfi afir
stream.transcode: flac:wav24;352
SPL: 58 dB!

This seems completely wrong. Would have expected SPL to be 75 dB (5 dB reduction), yet it is way off. DAC also shows 24/352 kHz data (so upsampling is working)

Test 5: apply 352 kHz convolution filter and upsample all FLAC to 24/352 kHz
source: 16/44.1 kHz
stream.options: convOut=-i /mnt/disk1/share/MinimServer/convolution/Cor1S352.wav -lavfi afir
stream.transcode: flac:wav24;352
SPL: 58 dB!

Again, something is very wrong.


Analysis:

Case 1: If convolution is done before upsampling:

For Test 4: this should be the correct result - but the SPL is incorrect at 58 dB - so the premise is inconsistent
44.1 kHz source -> 44.1 kHz room correction -> upsampled to 352 kHz

For Test 5: this should be incorrect - and the SPL is incorrect - so the premise is consistent
44.1 kHz source -> 352 kHz room correction -> upsampled to 352 kHz

Case 2: If upsampling is done before convolution:

For Test 4: this should not be correct - and the SPL is incorrect at 58 dB - so the premise is consistent
44.1 kHz source -> upsampled to 352 kHz -> 44.1 kHz room correction

For Test 5: this should be correct - but the SPL is inconsistent at 58 dB - so the premise is inconsistent
44.1 kHz source -> upsampled to 352 kHz -> 352 kHz room correction

Could it be that you can't both upsample and convolve?


Note: in between all tests:

1. reset/restart MinimServer (twice with MinimWatch)

2. restart JRiver and re-import MinimServer library: 1) restart JRiver, 2) Library -> Import -> Run Auto-Import Now

I am using JRiver as the Control Point.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Room correction with convolution per sample rate - digimuse - 29-11-2018 07:52

Forum Jump:


User(s) browsing this thread: 1 Guest(s)