Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Who's Online (7)

Please review the site Rules, Terms of Service, and Privacy Policy at your convenience. Rules, TOS, Privacy
Get familiar with the reaction system: Introducing the Reaction System

Mirror EQ with VituixCAD and APO EQ (replacing UE)

edited February 2022 in DIY

Bodzio Ultimate Equalizer is not your standard software DSP solution. This software allows the user to load in a speaker frequency response, define a target “textboox” type of response, and the EQ system will generate a mirror EQ to conform the speaker response exactly to the target. Essentially the driver response is normalized to the target slope in an "auto-EQ" manner.

The same DSP functionality can be provided with VituixCAD and APO EQ. VituixCAD allows the generation of the "mirror EQ" target, which can be utilized as an active filter block, and exported for use with APO EQ as an active DSP solution.

The attached document provides some detail of this process. The last step of the process for export of the impulse response to APO EQ is detailed in a previous instruction posted here:
https://diy.midwestaudio.club/discussion/1832/simulating-crossover-filters-with-vituixcad-and-eq-apo

I'm not deaf, I'm just not listening.
Silver1omo4thtry

Comments

  • It's like magic! The fun part is actually seeing how much the listening window, in-room response and power response are still quite wonky even though the on-axis response is normalized to perfectly flat. It's a perfect way to illustrate how "flat on-axis" shouldn't be the ultimate goal.

    The other thing to note is that the TF export is just a frequency response file, so you can modify it directly, apply smoothing to it to avoid over-compensating every little wiggle, and of course with the G(f) block you can load literally any frequency response file in there as a filter transfer function, which may open up some other creative filtering possibilities.

    I'm not deaf, I'm just not listening.
  • Cool. Looks like I will soon be in the market for a 7.1 ch external sound card. @Ron_E used UE with his Cherry Pi speakers a few years back. They sounded really good at the Harris Center in Grinnell, IA (IowaDIY 2013). They also took 2nd place a couple years later at MWAF!

  • edited January 2022

    I've received a bit of feedback from Kimmo on the workflow for this, so I may do a bit of a re-write on this process this evening. It certainly works as-is but there may be some room for improvement.

    Whether you use the mirror EQ transfer function described here, or active or passive components in VituixCAD, the end result of exporting for direct use in EQ APO is an extremely powerful tool. If you want to avoid a multichannel sound card, you can set this up over HDMI audio to a HT receiver as well. The processing power required for DSP functions is actually very small with modern computers, so even a bottom of the line PC can handle this task just fine. I've got a little fanless PC with a low power Celeron that I might give a try. Given the cost of multichannel DSP solutions a low end PC and half decent sound card may be a cheaper DSP solution as well, with the added ability of being a full blown PC that you can run your streaming services through, etc.

    For non-Windows options the same functions can be implemented in Linux with "Easyeffects". It includes a convolver plugin as well as full parametric EQ, crossover filters, etc to implement most of the same functionality as EQ APO in Windows.

    4thtry
    I'm not deaf, I'm just not listening.
  • I'm currently running UE using the onboard audio on the MSI motherboard in the PC running UE. I can watch video and play audio from a number of sources using VLC without a hitch. So definitely give the onboard audio before you invest in an external sound card.

    Ron

    4thtry
  • PS Thanks for this thread and the write-up. I'll be helping my nephew with a system build and would like to go active and this might my just be the ticket.

    Ron

    dcibel
  • edited January 2022

    Rewriting the documentation today, I used the Wavecor WF120 and AMT3-4 from my Northern Pike Speaker as an example.

    Complex FIR filter and some basic PEQ tweaking to optimize for 50/50 balance of listening window and in-room response, the resulting response you may find hard to believe is a response of a real speaker! Mind you this is a small midwoofer, so directivity match can be made fairly well here, but not and impossible result for many 3-way speakers and small bookshelf 2-ways.

    BrannigansLaw4thtry
    I'm not deaf, I'm just not listening.
  • Procedure in first post is updated, rewritten to reflect the recommended workflow provided by Kimmo.

    4thtrySilver1omo
    I'm not deaf, I'm just not listening.
  • Something else to think about - For complete systems, this process could also be used for room EQ. Take your measurements at various listening locations and average them together, loads the average response in as a driver response and run through the mirror EQ function to normalize the response. Some care taken with the transfer function and smoothing used to ensure that some limits are in place to prevent extreme corrections.

    Silver1omo
    I'm not deaf, I'm just not listening.
  • edited February 2022

    Recent update relating to this feature now allows limiting the mirror transfer function to a specific frequency range. From Kimmo:

    The latest build of 2.0.83.1 (2022-02-04) uploaded few minutes ago uses frequency range limits when calculating response for G(f) block. Magnitude and phase of G(f) response are frozen outside frequency range limits specified by user. This is quite cheap trick because result does not necessarily maintain delay features.

    For example woofer equalized to target within 20...8500 Hz:

    Tweeter equalized within 400...18000 Hz:

    What this means it that you no longer have to specify a filter function that follows the natural low frequency roll-off of your speaker to avoid compensating for it, or compensating for measurement noise, etc.

    Silver1omo4thtryBrannigansLaw
    I'm not deaf, I'm just not listening.
  • Updated document to reflect today's update to VituixCAD.

    In addition to the above frequency limit, VituixCAD can either provide a flat line response beyond the limits at 0dB/oct, or follow the slope of the filter. For the above screenshots, the flat line at the low frequency of the woofer response is good, however the high frequency should follow the filter slope. Options are now available to allow this.

    4thtrySilver1omo
    I'm not deaf, I'm just not listening.
Sign In or Register to comment.