Room correction using your iPhone and HouseCurve

@gregwilding Hello Greg,
Airplay stutters playing test signals through the app. Any chance you could upload L and R sweeps separated here? I’d copy them to Camilla’s tools folder.
Or is there a way I can separate them?
Thank you

Ah also. ChatGPT insists HouseCurve can’t measure timing and hence, can’t export that info into REW. Are exported sweeps really limited to freq. response? I feel it can due to the chirp. no?
thank you

Hey @CENK_ISIL, yep, just change the sweep channel and then export the test signal. You can make a left and right sweep file that way.

1 Like

Hehe… not sure what ChatGPT is talking about :wink:

You’re right, the chirp is what HouseCurve uses to detect the “start” of the sweep, which ultimately lets the app measure magnitude, phase, group delay. These are preserved when you export a measurement to REW.

1 Like

Hello. I pushed a beta version of FusionDsp v1.0.49.
It may improve AirPlay. This a beta version so you have to remove the installed version, install the beta and Reboot. Let me know.

@balbuze Hello,
Volumio already stutters with DSP turned off. Especially with sweep. With pink noise it works 1/3 of tries.
I assumed it’s buffer overrun on Volumio level or my Mesh is too slow?? So Camilla is still “listening” even if DSP is off?

I’ll try .49 right away. I thank you both each time I listen to music :person_cartwheeling:t2:

I already see preset shortcuts work for conv. filters too. super👍🏻

If FusionDsp is disabled (I’m not talking about disable effect), then this is like if it’s not installed .
So if dropout still here, it means FusionDsp is not in cause.

No. I only tried “disable effect” . ok thank you for the tip

@balbuze Hello,
are there any stability/speed advantages using Camilla in Moode rather than Volumio plugin?
Thank you

Lol! Honestly what do you expect from me?
What is the speed you are taking to?
CamillaDsp is the same for all user, unless you modify the code and compile your own version…
Stability? For CamillaDsp? Or what else? Can you be more precise please?

:slight_smile: I have to reboot both my Volumio pis every 3 days on average. It just gets stuck. Whereas my el cheapo Argon Solo streamer just works and is snappier connecting, voluming, skipping, etc. But I love the DSP and don’t want to forego. Looking at Moode web site, it seems Camilla is backed in into the OS, rather than being a plug-in? I was wondering if that is true and could mean a lesser chance of crashes.
Thank you

Hi @CENK_ISIL - Please start a separate topic for debugging Volumio issues. Maybe someone will be able to help you.

ah yes yes. sorry

Hello, I released HouseCurve-5.1 today. This brings some equalization improvements:

  • Ability to create FIR filters for high fidelity room correction
  • Produce “cut only” filters for improved gain management
  • Set maximum Q for PEQ based room correction
  • Improvements for manual target curve fitting

FIR filter support may be of interest to Volumio users. Instead of converting a set of PEQ filters to an impulse, HouseCurve can now directly create a mixed phase FIR filter. The result should be more even bass notes and improved sound stage / imaging (especially if you correct L/R separately).

I’ve learned that creating a decent FIR filter is a bit of an art, so I’m very interested in hearing your thoughts and suggestions. Enjoy!


Hi Greg, I tried it with Camilla. It definitely beats PEQ, but I haven’t compared it to the regular conv. Export. Wow wow.
I’m a bit hazy on definitions though. FIR is to correct phase and timing “shifts” while also correcting the freq. resp.? Right?
Is this to correct Freq. resp. Corrections induced shifts only? Or would it by default also tackle speaker crossover shifts?
Thank you

Thanks Cenk, nice to know it sounds good. The PEQ filters as settings (Q, Gain, Freq) or convolution should sound the same.

FIR is a class of filter (finite impulse response). FIR filters are nice because you can easily dial in the magnitude / phase correction you want. The cost is increased resource usage (CPU, memory) and increased system delay.

PEQ filters are a different class called IIR (infinite impulse response). IIR filters are very efficient and have little delay, but it’s harder to control magnitude / phase independently. In the case of PEQ, a change in magnitude adds phase distortion.

FIR filters for room correction can do a lot, but it’s up to the designer of the filter. HouseCurve’s first FIR filter is fairly conservative. Compared to PEQ, the magnitude correction will be more detailed at the low end and there will be less phase distortion. The result should be more clarity, sharper positioning of instruments, etc. I have shied away from aggressive time/phase corrections as they lead to weird artifacts. My plan is to provide additional FIR based corrections, perhaps more aggressive. It really depends on what users think of this first attempt (I’m learning as I go :wink:).

Thank you the clarifications. now I get it.
It looks like HouseCurve has all the features of Dirac covered for 2 channel audio. chapeau.


Thanks a lot Greg. Previously using Housecurve with EQ text files i found the result ‘flat’ and didn’t like it. Today I tried again with FIR. Wow.

I realise I have got used to ‘too much low bass’ via my subs, and lighter upper bass, but the main issue appears to have been phasing - that was the biggest change. Soundstage improved dramatically, and instruments are better pinpointed.

Inital average curve:

I’ve not rerun this test since the correction.

Correction was saved as FIR WAV and directly imported into Roon convolver (not Volumio as I use Roon mostly). Difference is night and day, though the sudden ‘lack’ lol, normalization, of deep bass took some getting used to. But I can put it back via ‘loudness’ EQ at low volumes.

My question is regarding phase. Here is the ‘before’ phase chart - it looks like a terrible mess to me - what does it mean?

Thanks Mike, glad you’re getting decent results. You could add more bass by changing the target curve, maybe add a bit of a bump below 100 Hz?

Your phase plot looks pretty normal for a room measurement. They’re always messy. I mainly use them for checking sub/main alignment. Some more info on plots here. The group delay plot is a bit more useful. It basically shows where phase isn’t smoothly sloping downwards. The peaks in the group delay indicate areas of interest - room modes, driver alignment issues, etc.