we had a small debate with mr. domino49 at the cockos forums:
we were mainly discussing what is the correct way to write an open source, DSP version of the unit using the JesuSonic platform, since his initial proposal was using only RC filters (first order passive cross-over).
i think the version in the first post (#1) is still a bit incorrect (phase of HF), but you can see a couple of realizations from me in the thread:
- post #20 - this is a version using a second order crossover using digital biquads and has a program controllable gain for the HF.
- post #66 - this is a version that uses a digital state variable implementation, but does not have the program controllable HF.
bellow is my old review / article:
"Is the bbe sonic maximizer just a 2-band eq?"
A similar question has been asked on some forums, so i've decided to find out by searching for a schematic of a BBE SM unit and found this link via google:
Without checking the website from which the pdf file originated i wrote a quick review of the schematic.
And it seems i've doubled some things already written in there...apparently this pdf schematic extends the bbe schematic with the contents of the NJM2153 chip - the original schematic has only one big chip from a japanese manufacturer, which in a way hides all the processing in the unit.
So more useful info on BBE SM here:
Thanks to Tom Farrand for reconstructing the 482i sheet with the NJM2153!
Here is my review:
Quote from the bbe website on the 482i:
"The 482i Sonic Maximizer restores an audio signals natural brilliance and clarity by the use of two primary functions. First it adjusts a signal’s phase relationships between it’s low, mid and high frequencies while progressively adding longer delay times to lower frequencies, this creates a kind of “mirror curve created by the speaker neutralizing its phase distortion. Secondly the Sonic Maximizer augments higher and lower frequencies; loudspeakers tend to be less efficient in their extreme treble and bass ranges. The end result is a dynamic program-driven restoration without the ear fatigue that is normally experienced with the use of equalizers or exciters."
+ A look at this sheet of a 482i channel.
At first sight, it looks like a 3 band second-order splitter (multiband). this is achieved with what they call "pseudo state variable filter". Phase shifting (band split) is present for each band !even! if "process" is set to 0 - i.e. fx is part of the signal chain (not bypassed). The band-splitting is not controlled by the process knob.
The delay for the bands which BBE state is present, can be accomplished with a capacitor discharge, however I can't seem to find this in the sheet. Another way to do the delay, would be with separate buffer for this band, which stores the signal and plays it back with a delay. This type of design goal isn't something new and if you do it right, it can improve the sound trough certain speakers (a tweak for better acoustics). But how would you compensate for IIR phase shifts with a constant delay value? Phase correction with All-pass? This won't make the filter linear-phase.
There is a low-band amplification with a potentiometer which is not a low-shelf filter - this is just a band boost. Same goes for the 'process' knob, it boosts the top-band. for the top-band signal path we see voltage-controled-amp (VCA), which has its control voltage trough a peak-detector. The peak-detector works with the non-filtered signal and increases/decreases the control voltage of the VCA. The summed voltage from the peak detector trough the VCA, should add more to the high frequency content and act like an exciter. Btw i've never seen a VCA the way its drawn in this sheet, so i can't say for certain if it does what I've described above.
Another thing to take note here are the input/output buffers.
- By looking at the input buffer, I believe this is just for impedance accomodation between the input (jack) and the next stages filter/pd, this is required in most cases. I have some doubts that the input buffer acts like an allpass filter and that the necessary impedance accomodation is made with just R30.
- The output buffer looks more complicated: there is a what its called a frequency dependent inverting operational amplifier. What it does is - it doesn't amplifies frequencies above certain range (10khz for example), also it sums the three bands. This can be used to compensate for the harmonic boost of the high end. After that i see a one pole high-pass filter (RC), which i think they use only to band-limit lower frequencies (for example below 10hz) - the capacitor C20 takes care of that.
There is no potentiometer on the output stage, because i see there is no "output gain" control for separate channels on the 482i.
There are a couple of mysteries (things i'm not certain of) in here, but the design does not look that complex. Also the price for a 482i is around 200$ (zsound) and it is a two channel unit - not very expensive, but still I believe you can custom build and improve the unit with a !lot! less than that.
I've heard a lot of positive and negative comments on the BBE SM units. The negative were about its sharpness on the top end (mainly in the plugin version). This may be, because of the use of cheap IIR filters and bad control for the VCA input voltage values...
From a recent discussion at music-dsp mailing list, we've agreed that by band-splitting and boosting a band (apply gain) instead of using a peak / shelf filter in the same range, you are essentially dealing with an inferior equalizer! this is due to the phase shifting at band crossovers. BBE states that they deal with this problem with one "progressive" delay shift?
But to conclude, if something is designed well and has quality elements, low noise floor, low harmonic distortion - it may sound great and even improve the sound. This type of circuit does not have much "magic" to add, but as I've said it can improve the sound if designed well. Also I don't believe that the software version will sounds better than the hardware, if modeled accurately...
Hope that helps for better understanding of this particular unit. :)
I believe I made some mistakes:
I've managed to run the old "cakewalk sonic maximizer" plugin demo (dx) with a wrapper & vst pa (from c.budde). The new bbe version from nomad factory has no demo?
So if this is accurately modeled - indeed, there is a all-pass filter with F0 at 700hz (crossover freq)
So the "progressively adding longer delay times to lower frequencies, this creates a kind of “mirror curve created by the speaker neutralizing its phase distortion." statement is accurate in this case. All-passes can be used for this application, but this just a non-adjustable all-pass design, which cannot deal with phase distortion issues in !any! speaker.
I must admit though, that changing the top-band and low-band voltage also affects the group-delay of the sum. signal chain is: [in] -> [acmd] -> [band-split] -> [sum] -> [hp] -> [out]
Things are much more complicated than that :)
Here is an article on the subject of all-pass crossovers and phase distortion issues: