Multi-Sub Optimizer Tutorial (page 5)

Specifying Graph Properties and Optimization Options

After pressing Finish on the last page of the Configuration Wizard, MSO creates both a configuration and a graph of computed SPL vs. frequency at the listening positions you specified in the wizard. Then it launches the Graph Properties dialog automatically. The result is shown in the image below.

After Wizard Creation of Configuration and Graph
After Wizard Creation of Configuration and Graph

Modifying the Graph Properties

We'll do a couple of minor adjustments to the graph axis limits. To do this, choose Axes on the left side of the dialog. This results in the display as shown below.

Graph Properties Before Modification
Graph Properties Before Modification

For the x-axis, enter a value of 10 for the minimum value. For the left y-axis, first uncheck the Autoscale checkbox, then enter 55 for the minimum value and 110 for the maximum value. Next, uncheck the Auto dB/div checkbox, and keep the default value of 5 for the dB/div value. To see the effect of these changes without dismissing the dialog, click the Apply button. This gives the following result.

Graph After Limit Adjustment
Graph After Limit Adjustment

These changes are good enough for now, so click OK on the Graph Properties dialog. This dismisses the dialog and causes the Optimization Options dialog to be launched as shown below.

Optimization Options Dialog
Optimization Options Dialog

Modifying the Optimization Options

This property sheet dialog has six property pages. We'll go through each one in turn.

The Method Property Page

The Method property page is shown below.

The Method Property Page
The Method Property Page

Under Optimization Method, there are two options: As flat as possible without additional global EQ and Minimize seat-to-seat variations. The former option is the original method that MSO used for optimization, but it is now mostly used for very special-purpose applications. The latter option, Minimize seat-to-seat variations, is the most recent algorithm and the one that should be used. Keep this default option. Also, leave the Allow different SPLs at different listening positions and Use legacy optimizer options unchecked.

Under Reference Level Computation, there are two options, but one is grayed out. That is because we have chosen a sub-only configuration, which only allows the Use a fixed reference level option. When no external target curve is imported, MSO defaults to a flat target response. Under this condition, MSO will target a flat response at the level specified in the Reference level edit control on this property page. From the image above, we see that from 10 Hz to almost 200 Hz, we can reach a level of 80 dB SPL without any gain boost at all. Along the same lines, we notice there's a couple of monster peaks at around 20 Hz and a bit above, more than 25 dB above this 80 dB SPL reference level.

We can conclude from these observations that a reference level of 80 dB SPL would be a good choice, and that we'll need more than 25 dB of attenuation capability in our PEQ filters to knock down the monster peak. Let's say we want the maximum allowable attenuation for any PEQ to be 26 dB. Hold that thought for when we get to some of the other property pages of this dialog. Enter the 80 dB SPL number for the reference level.

It is required to pick which of our listening positions corresponds to the main one, or MLP. These data were taken across a three-seat couch, for which the middle seat, Pos 2, is the MLP. So we choose Pos 2 in the combo box. When done, this property page will look as follows.

The Method Property Page After Completion
The Method Property Page After Completion

The Criteria Property Page

Next, we select the Criteria property page. It is shown below.

The Criteria Property Page
The Criteria Property Page

Under Frequency range to optimize, the minimum and maximum frequencies default to the minimum and maximum frequencies of the data itself, with an additonal upper limit of 400 Hz if the data goes higher. We don't want to optimize this project over such a wide frequency range. We'll instead optimize from 15 Hz to 160 Hz (the latter being an octave above the anticipated 80 Hz crossover frequency). Uncheck Auto and enter these values into the minimum and maximum optimization frequency edit controls. We can keep the default maximum time limit for optimization at 30 minutes for now. Making these changes gives the result shown below.

The Criteria Property Page After Completion
The Criteria Property Page After Completion

The PEQ Parameter Limits Property Page

What range of PEQ center frequencies do we need? If we allow the PEQ center frequencies to go outside the optimization frequency range, we will lose some control of what is happening there, as MSO normally does no calculations outside the optimization frequency range. Under this condition, the PEQs could make some changes outside the optimization limits that we don't want. Likewise, if we don't allow the PEQs to cover the full optimization frequency range, we may not be able to take full advantage of what the PEQs can do for us within this frequency range. It stands to reason that a good rule of thumb is to make the allowable center frequency range of the PEQs the same as the optimization frequency range. Also, we determined previously that we want to set the maximum cut of the PEQ filters to 26 dB. It would be useful to have a way to set the allowable parameter limits of all PEQs in the configuration at once. This is a new feature in version 1.1.0, and is done using the PEQ Parameter Limits property page shown below.

The PEQ Parameter Limits Property Page
The PEQ Parameter Limits Property Page

When this page is first shown, Keep existing limit is checked for all parameter limits, and what is shown for that limit is what is actually in the PEQ filters themselves. Recall that we've already determined that we want a maximum allowable cut of 26 dB, and that the minimum and maximum center frequencies should be the same as the minimum and maximum frequencies of the optimization (15 Hz and 160 Hz respectively). Uncheck the Keep existing limit checkboxes corresponding to these three parameter limits and enter these values. When OK is pressed, the parameter limits of all the PEQs in this configuration will be set in accordance with this property page. Don't press OK yet though, as we still have some property pages to get through.

We'll keep the defaults for the other PEQ parameter limits. The result should look as below.

The PEQ Parameter Limits Property Page After Completion
The PEQ Parameter Limits Property Page After Completion

The Constraints Property Page: Preventing "Stacking"

In the earlier days of MSO, you could specify the maximum boost and cut of individual PEQ filters, but then the PEQs could "stack", meaning that one or more of them could end up with the same center frequency, causing a combined boost or cut much more than the allowable individual boost or cut. Code for enforcing global constraints was introduced to prevent this. The combined effect of all PEQs in each channel is computed during optimization, and disallowed from exceeding the global constraint limit on boost or cut. The global limits on boost and cut are required to be greater than the corresponding individual PEQ limits to prevent optimizer convergence problems. These global limits on PEQ boost and cut are specified on the Constraints property page, shown below.

The Constraints Property Page
The Constraints Property Page

We'll set the constraint on global PEQ cut to be 1 dB greater than that of the individual PEQs, or 27 dB. Check the Restrict total PEQ cut checkbox and enter the value of 27 into the edit control. The end result should be as follows.

The Constraints Property Page After Completion
The Constraints Property Page After Completion

Here, we can't get "stacking" of the maximum PEQ boost values, because the individual boosts of all the PEQ filters in the configuration were limited to 0 dB on the PEQ Parameter Limits property page. If we had entered a non-zero value for the maximum allowable individual PEQ boost of, say, 3 dB on the PEQ Parameter Limits property page, it would have been a good idea to prevent "stacking" of the boost values by specifying a maximum allowable total PEQ boost of, say 3.5 dB on the Constraints property page above.

The Target Curve Property Page

The Target Curve property page is shown below.

The Target Curve Property Page
The Target Curve Property Page

This property page is discussed in detail in the target curve section of the reference manual. In my view, the use of a target curve with MSO should mostly be avoided. The reason I say this is that specifying a target curve in MSO tightly couples that target curve with a specific optimization, such that if you wish to change the target curve, a new optimization must be run. But the nature of target curves is that people like to experiment with different ones to see which one they like best. A reasonable question to ask is whether one might still be able to do such target curve experiments, while still taking advantage of MSO's optimization capabilities and not having to re-optimize for each target curve change.

The best way around this problem is to use a high-quality room correction system such as Dirac that allows you to specify target curves within that system. You can refrain from specifying a target curve in MSO, making it optimize to a flat response. Then you can do all your target curve-related work within Dirac itself. This can also be done with the Audyssey app and possibly other room correction systems.

Because there are better alternatives, we won't be using a target curve in this tutorial. Instead, we'll use the default, flat target curve. Now we can move on to looking at the Group Weights property page.

The Group Weights Property Page

The Group Weights property page is shown below.

The Group Weights Property Page
The Group Weights Property Page

The controls on this property page are only enabled when the As flat as possible without additional global EQ option on the Method property page is chosen. It allows for weighting of the responses at different listening positions. For example, one could choose to weight response flatness errors at the main listening position (MLP) higher than errors at other listening positions, thus giving preference to the MLP. The use of the word "Groups" instead of "listening positions" refers to more advanced uses of MSO, for which the wizards don't apply. For our purposes here, a "Group" corresponds to a listening position.

Since we're not using the As flat as possible without additional global EQ option on the Method property page, we won't need to specify anything on this property page.

We can now press OK to dismiss the Optimization Options property sheet and perform an optimization. Now would be a good time to save your project. This project is tutorial-new-1.msop in the downloadable tutorial examples.