News:

SMF - Just Installed!

Main Menu

Recent posts

#1
News Updates / Re: "Hi-end" DAC manufacturer ...
Last post by Tranquility Bass - June 29, 2026, 12:24:31 PM
Note the exclusive use of balanced interconnects and equipment with balanced inputs and outputs in this 1969 concert. Someone worked out long ago that this was the only way to mitigate against noise and hum/buzz in modern-day sound reinforcement, and, with no exceptions, the techniques have remained in use to this day. You don't see them spending squillions on unbalanced RCA cables just to get that "special flavoured" sound ;)

Quote
  • This image shows sound engineer Terry Hanley adjusting vintage audio equipment at the 1969 Denver Pop Festival.
  • The setup includes four McIntosh MC3500 tube power amplifiers utilized for the sound reinforcement system.
  • Also visible are two McIntosh MC-275 stereo tube amplifiers and likely Altec 1567a tube mixers powering the event.
  • The venue was Mile High Stadium, where Hanley mixed sound for the Jimi Hendrix Experience's final concert.

The sound of Woodstock

TerryHanley.jpg



#2
News Updates / "Hi-end" DAC manufacturer does...
Last post by Tranquility Bass - June 14, 2026, 06:56:44 PM
I had to chuckle at a recent promotional video on social media of a so-called "Hi-end" DAC manufacturer that was boasting about reducing the cost of its megabuck DAC by reducing its chassis count from three to two chassis by consolidating some of the audio electronics within its power supply chassis, and how they attempted to reduce any interference between the two using what appears to be "black art" rather than solid engineering principles that have been known for decades. Of course, the main cost of this product is the expensive milled out chassis, so little wonder most of the cost saving benefits come from removing one CNC milled chassis, which dwarfs any change to the electronic design itself, if any.

Hi-end DAC 1.png

Hate to rain on their parade, but we have always included all of our audio electronics collocated within the confines of our power supplies in a single chassis solution, as shown below, and yes, we had some issues, but we never solved them using expensive bits of CNC-milled aluminium or by sticking bits of shielding (mu-metal ?) at strategically located points on an already conductive chassis. Instead, we went back to first principles and asked what the problem is and how we can solve it, and sure enough, we came up with a workable and practical solution without inflating the cost of manufacturing.


P1050229.JPG

Essentially, the problem of noise and interference mitigation is simple once you understand it, and the solution is even simpler once you understand the problem ! But if you just want to hoodwink your prospective customers with more techobabble and word-salad and then try to pass that off as some kind of technical feat by using expensive bits of CNC-milled out aluminium, along with other bandaid solutions such as grounding boxes, mains regenerators, and of course expensive bits of wire or cable assemblies, then you should at least publish some measurements to validate your before and after claims ! Techobabble and word salad just don't cut the mustard when it comes to validating technical claims !

So let's get back to some real-world measurements and see how effective the noise and interference mitigation is within the Ultimate-Preamp 2(UP2) and whether or not we needed to resort to using gimmicks in order to improve it. Recently, we updated our dScope III audio analyser with the latest software and decided to run a few tests to evaluate the software, so why not revisit the noise performance of the UP2.

We fed the preamp a near full-scale(-6dBFS) 1kHz digital signal, resulting in a 3V RMS balanced output, with the gain controls set to 0dB, to evaluate the noise performance and observe any artifacts below this frequency as a result of any coupling between the power supply and the signal path. This is a test usually done with power amps under load to observe the effect of interaction between the power amp and its power supply, either through inductive coupling or directly via the power supply rails themselves. However, the same loading is not present in the Preamp, so we are left with magnetic interference from the mains-peak-rectified power supply within the Preamp. This would, of course, consist of inductive coupling of the residual field from the mains transformer, plus the emissions from the pre-regulation stages of the power supply, which would be carrying a large part of the peak rectified current of 50Hz plus harmonics.

50Hz Trafo Noise wrt 1kHz.png

As you can see from above, the spectrum for both channels is dominated by the 1kHz fundamental. Below 1kHz there are essentially NO 50Hz components and harmonics present in the signal or buried in the noise floor for that matter. Now, if we turn off the 1kHz signal, let's see what is left.

50Hz Trafo Noise NO 1kHz.png

As you can see above, without the 1kHz fundamental, the noise floor is reduced further because of the absence of the fundamental and the way the internal processing of the DAC averages out the noise, so we are left with noise components on the order of 2.5 uV rms (measured over a 20Hz-22kHz bandwidth), which is about 122dB below the 1kHz reference level in the previous test. What's even more revealing is that with a lower noise floor, we are barely seeing any 50Hz components + harmonics from the power supply of the order of 150dB below reference. Let's see what happens if we mute the preamp and short out the muting relays by either switching off the Preamp or switching it into standby.

50Hz Trafo Noise Mute Relays Shorted.png

As you can see above, we are now approaching the very limits of the analyzer with essentially a short across the inputs of the analyzer, except the balanced cables and the preamp are still in circuit. One thing that should be abundantly clear in all of these tests is that the balanced nature and high common mode rejection of both the analyzer and internal circuitry inside the Preamp essentially mitigates any extraneous electromagnetic interference, either internally or externally to the Preamp ! This is the beauty of using a balanced audio interconnection system to interconnect audio components, whether it's internal or external connections.

To prove a point, we decided to inject a very strong 50Hz magnetic field directly into the Preamp using a bulk eraser that is designed for erasing tapes and which has an extremely strong external magnetic field, unlike a transformer which is designed to contain most of its magnetic field and minimize any external field, so the field from the eraser will be orders of magniutude more than what is comming from the internal transformer and power supply of the preamp. We then held the eraser about 6 inches from the electronics within the opened preamp, around where the DSP board interfaces to the balanced output board via ribbon cable, the setup of which is shown below.

P1050632.JPG

The resulting spectrum is shown below.

50Hz Trafo+ Bulk  Eraser Noise NO 1kHz.png

As you can see in the above spectrum, there was a slight increase in the residual noise voltage, dominated by a slight increase in the 50Hz field plus a slight lift in the harmonic noise components in the preamp balanced outputs, but still way below the threshold of hearing. This is because, whilst there are current loops within the preamp formed as a result of the interconnection of grounding between submodules within the preamp and their propensity to generate large currents within these loops, the balanced nature of the actual signal path and the separation of the signal from the ground or chassis means that the susceptibility to this interference is essentially mitigated by virtue of the balanced mode of transmission. Again, none of this was achieved with an expensive CNC-milled chassis or judicious use of strategically placed shielding, but rather through simple and effective audio engineering principles that have been known for decades in the pro-audio industry. But of course, you have to know how to identify and address the problems and issues in the first place for it to be effective! Unfortunately, the CNC-milling brigade will keep peddling their ineffective solutions as a disguise for technological advancement and charge accordingly for something that is essentially a mediocre alternative to proper engineering. As usual, it's buyer beware ;)


#3
An excellent article ;)

New Test Reveals How Vintage CD Players Outperform Modern Models Thanks to One Forgotten Design Choice

QuoteThe study shows how overlooked testing methods hid the true performance of both vintage and current models.

Lab tests have long been the final word on how CD players perform. Yet those tests rarely went beyond a few single-tone checks, leaving out the kinds of stresses that music actually creates.

Recent testing by NTTY filled in the gaps with a method that looked at clipping, distortion under load, and how digital filters behave with shaped dither. The results changed the story of how older non-oversampling and newer oversampling players really compare.



#4
Crown Prince (PCL-1000) / Re: Model Information
Last post by dtximages - May 25, 2025, 11:01:13 AM
Hey I'm interested in your thoughts on this speaker. I just picked up a pair and found them VERY lacking in the bass region. Drivers all all moving but I feel there should be more on the bottom end. My Crown Princes don't hardly need a subwoofer, but the Prince sounds is nothing like that.

Could I need a woofer replacement? If so which ones?
Could the crossover be bad? How do I figure that out.

60hz and up, they sound AMAZING like all Duntechs but gosh this whimpy bass is giving me fits.
#5
FIR filter designs / Re: Group-delay correction of ...
Last post by Tranquility Bass - May 04, 2025, 02:21:59 PM
For those who have asked me whether this type of phase correction filter can be implemented on the SHARC DSP in our preamp then lets take a look if it is possible.

Firstly, we will have to throttle back the sampling rate to 48kHz to get close to the ball-park and that's assuming we want to run two stereo channels on the one DSP. Unlike the PC example above we don't really have an infinite amount of resources to play with. This can be done by selecting the base sampling rate for the board of 48 kHz by setting the appropriate DIP switches. To find out how to do this refer to the following application note on our forum https://analog-precision.com/forum/wiki-and-qa/how-to-change-the-native-sample-rate-of-the-preamp/

The theoretical maximum number of taps for the SHARC running at 392 MHz on our board is 786.432 MMACS divided by 48 kHz, which is 16384 taps for both channels running. This limits it to 8192 taps per channel which is the maximum theoretical limit. Of course, we don't want to aim for the maximum number of taps otherwise there won't be enough DSP capacity to run other tasks like the Preamp and the LR crossover filter itself.

Let's bring up Rephase, our trusty freeware FIR filter calculator, and have a play around. Let's try 2048 taps for starters. As one can see below there is too much amplitude and phase deviation in the lower frequencies so this FIR filter is inadequate.

Xover-4way(for testing)(RePhase-48kHz-2048taps).png

Let's double the tap count to 4096 taps per channel. We get better phase matching but still a lot of amplitude deviation in the lower frequencies.

Xover-4way(for testing)(RePhase-48kHz-4096taps).png

At 6144 taps, things look much better which gives us some spare DSP capacity for other tasks such as the LR crossover itself ;)

Xover-4way(for testing)(RePhase-48kHz-6144taps).png

Of course, if you are running only one DSP module per speaker, then there is the potential to double the tap count or sampling rate. But bear in mind that each doubling of the sample rate requires twice the number of taps to yield the exact frequency resolution, which in turn requires 4 times the DSP capability, which is why we had to throttle the DSP back down to 48 kHz but is still now well within the Preamps' capability for the stereo version.





#6
FIR filter designs / How to build a linear-phase cr...
Last post by Tranquility Bass - January 29, 2025, 05:26:30 PM
Using Audioweaver, the Ultimate Preamplifier, and rePhase, we were able to implement a linear-phase crossover on the onboard SHARC DSP running at 192 kHz without much effort at all. For this example, we chose a simple 2-way crossover centered at 1 kHz and a response that mimicked an 8th-order Linkwitz-Riley filter, in which both sections exhibited an in-phase response of -6 dB at the crossover point.

Although both the non-minimum phase version and the linear-phase version of the Lintwitz-Riley crossover have identical summed flat magnitude responses and are also in-phase at the crossover frequency, the linear-phase crossover, as its name suggests, has a linear phase response. This means that once both the low and high pass sections are summed together, the total output is just a delayed version of what is being fed into it. This is in contrast to the non-minimum phase version, which distorts the signal passing through because of its non-constant group delay. This linear distortion should not be confused with non-linear distortion, such as harmonic or intermodulation distortion.

Linear phase filters are a special class of FIR filter that sums to a unity response with a fixed time delay. So when both high-pass and low-pass sections are added together, the response is a delayed version of what is being fed into the crossover. As I have discussed in another thread, this type of filter can have issues with proper impulse response cancellation due to imperfect matching between drivers, which can result in pre-ringing leakage among other issues. The proponents of these types of filters will never talk about this aspect of this type of filter topology, instead pretending that it doesn't exist or is inaudible. Whilst pre-ringing at ultra-sonic frequencies in DAC reconstruction or oversampling filters, etc, is essentially inaudible, pre-ringing at audible frequencies in loudspeaker crossovers can be audible and unwelcome!

As in the group-delay corrected filter, this time we use rePhase to create the linear-phase FIR filter coefficients as in the following setup:-

Rephase_UP2_192k_2048_1kHz_48dB.png

RePhase can create complementary high- and low-pass filters. However, we will use a simple trick of subtracting the high-pass filter output from a delayed version of the filter input to create the low-pass complementary filter output without requiring twice the computation resources! This is crucial when using lower-powered DSP devices such as the SHARC DSP used in our preamp.

We set optimization to "Moderate" and hit the "Generate" key, and then we create the following correction filter! Note that rePhase always creates a correction filter with a net 0-phase response! This results in a non-causal impulse response that occurs before the impulse, which, whilst mathematically succinct, is physically unrealizable. To overcome this, rePhase allows you to realign the impulse response by delaying it and windowing it so that no response occurs before the impulse. In this case, this was done by delaying and centering the impulse response at the halfway point (i.e., half tap count) and using a Hanning window to mask out anything before the impulse. The delay of exactly half the tap count of the filter is what we use to subtract from the output of the filter to create the complementary low-pass filter, and later, when we measure the outputs of the filters, you will see they are both complementary filters with identical slopes. When summed together, we get a unity output with a linear-phase response! Now we just have to enter the filter coefficients into Audioweaver using the following test bench we have created to illustrate one channel only.

FR_UP2_192k_2048_FIR.png

The highlighted green connection lines show the signal path for the high and low-pass filter sections, consisting of the FIR high-pass filter section and the low-pass section, which subtracts the high-pass from a delayed version of the input signal to create the low-pass filter. And we also include the delayed filter input and summed outputs routed to the other unused preamplifier outputs, which facilitate measuring the filter response. This helps us do differential phase tests; otherwise, the net phase response contains so much delay that it is very hard to visualize the shape of the phase response curve. For those playing along at home, the resource usage for this 2048 tap FIR filter is quite modest at only 14% ! And for a stereo version using identical coefficients for both channels as you would normally use, the SHARC DSP supports SIMD instructions, which means that it can process two multiply-accumulates (MACS) in one clock cycle so we would expect there would be no increase in resources for a stereo version of this filter !

AWE-CPU_UP2-192kHz_FIR-2048.png

The magnitude response of both the low and high pass filters from the dScope analyzer is shown below. The blue trace is the low-pass filter response, and the red trace is the high-pass filter response, whilst the grey trace is the summed response, and the orange trace is the relative phase difference between the summed output and the delayed input:-

FR1.png

Now, here are some test results from the scope at various frequencies. The yellow trace is the delayed 1 kHz square-wave input signal. The blue trace is the low-pass filter output. The magenta trace is the high-pass filter output. As expected, the bottom green trace is the summation of both the low and high-pass sections, which, of course, is identical to the delayed input signal!

250129_1.png

250129_3.png

250129_4.png

One thing that should be abundantly clear in the traces above is the amount of pre-ringing or the response before the leading edge of the square wave that these filters exhibit, and which is not present in the IIR version, which is also shown below for comparison! In theory, this may not be an issue on-axis where both speakers crossover with essentially a uniform frequency response, and the pre-ringing should essentially cancel out, but this cannot be guaranteed off-axis, so we would expect imperfect impulse response cancellation to occur and some pre-ringing to leak through. However, maintaining a perfect uniform on-axis response would also be a significant challenge, especially as the speakers' characteristics drift over time with no mechanisms to correct for this. Whilst pre-ringing at ultrasonic frequencies in a DAC reconstruction filter is inaudible, pre-ringing in the audible bandwidth is not! Now let's compare this with the non-minimum phase Linkwitz-Riley 8th-order filter!

Shown below the top yellow trace is the input signal, which is the leading edge of a square wave. The blue trace is the low-pass output of the linear phase filter, while the magenta waveform is the low-pass filter output of an 8th-order non-minimum phase LR crossover (LR-8). Note how the LR-8 filter has no output before the leading edge, while the linear phase variant exhibits pre-ringing energy before the leading edge! This is because a linear-phase filter always has a symmetrical impulse response. In contrast, as used in the non-minimum phase variant, a causal recursive filter cannot have a symmetrical impulse response, which is why it produces nothing before the impulse.

250223_1.ssd.png

Now we compare the high-pass filter sections of the same crossover. Again, the top yellow trace is the input signal, which is the leading edge of a square wave. The blue trace is the high-pass output of the linear phase filter, while the magenta waveform is the high-pass filter output of an 8th-order LR crossover (LR-8) implemented using IIR filters. Note how the LR-8 filter has no output before the leading edge, while the linear phase variant exhibits pre-ringing energy before the leading edge!

250223_2.ssd.png

The issue here is that unless two speakers are perfect both on and off-axis, you will always get imperfect impulse response cancellation and thus have issues with pre-ringing artifacts, which are totally unnatural and can be audible !! The reason you use a crossover in the first place is that drivers aren't perfect devices; you need to attenuate their out-of-band characteristics as much as possible, and the last thing you need is the crossover introducing potential artifacts at the crossover frequencies, which the speaker drivers can reveal !

Whilst pre-ringing at ultrasonic frequencies, such as that from a DAC reconstruction filter, is essentially inaudible, pre-ringing at audio frequencies is not! This is why FIR filters with cutoff frequencies selected to fall within the audible band could be problematic! Note the absence of this issue from protagonists of these types of filters. They will argue that pre-ringing is not audible below a certain threshold, which they don't quantify, let alone admit even occurs. To put that into perspective, let's have a look at the frequency response of a typical premium quality midrange driver shown below. This driver and its variants have been utilized in numerous high-end speaker systems. Even if we applied high-order linear phase filters to filter out the undesirable out-of-band anomalies, the in-band response still shows quite a bit of response irregularity, thus bringing into question its ability to suppress pre-ringing entirely.

FreqRespMidrange.png

Now to answer a long-lost question that was posted on our www.diyaudio.com thread at the time of our pre-order for the UP2 and UPP some years back and by what appears to be a protagonist from the DIQX camp that obviously had no intention of buying anything from us other than a desperate attempt to dissuade people from it then yes it is not true as stated by this individual that it is hard to implement a linear phase crossover on our preamp using Audioweaver. As the preceding demonstration illustrates, it is quite simple, but of course this type of filter comes with some caveats of its own, which have already been highlighted by a number of esteemed audio engineers, so with the Ultimate Preamp, you get to choose your poison.

QuoteSecond, what I really like about my DIQX crossover at the moment is the implementation of linear-phase crossovers (FIR). The software treats it just the same as Linkwitz or Butterworth crossovers. Just choose it from the list, that simple. All other DSP solutions so far expect you to be a DSP expert to be able to implement linear phase crossovers. I was looking for this in audioweaver but so far have not found it yet. Maybe I'm missing something. Now before anyone likes to discuss the downsides of linear phase crossovers and why I would want them but there is only one simple answer: Because it sounds better in my system and except from linear phase crossover I can't think of anything why I would need the amount of DSP power that is on offer in the Ultimate Preamp

Sorry, but you are misinformed. You don't have to be a DSP expert to implement a linear phase crossover. In actual fact, you don't have to write a single line of DSP code as the above example demonstrates. Applications such as Audioweaver, as used by the Ultimate-Preamp, encapsulate all of the low-level DSP code for you, but if you still want to whine about that, then perhaps you should not get involved with DSP and active speakers in the first place ;)

And from another thread about DSP.

QuoteREW and Acourate are at the opposite end of the spectrum. Both are very manual tools, and the tools need to be deployed in the correct order and in the correct situation. When I say "manual", I mean that you have to inspect the measurements yourself and decide what you want to do. Acourate has a few more "luxury" features compared to REW, which is why I prefer it. REW can not be used on its own, you need RePhase. Both are extremely flexible, but also close to impossible to use if you do not know what you are doing.

Sorry, but our example above disproves this statement as an exaggeration of the truth. As I have demonstrated, a little bit of elbow grease gets you a simple linear-phase two-way crossover straight off the bat without much effort at all. Not only that, you do not need any additional convolver software, as Audioweaver provides all of the necessary modules to begin with. Similarly, it is easy to compare one filter topology with another and run different filters concurrently as we did above when we directly compared the linear-phase LR-8 FIR-based crossover to the non-minimum phase LR-8 IIR-based counterpart. Alternatively, you could easily construct a multi-way crossover with non-minimum phase IIR filters and then apply global phase correction to linearize the phase as we did in our example on another thread. In each case, it is not difficult to do using Audioweaver and free software such as rePhase. Anyone telling you otherwise either doesn't understand or has ulterior motives to push people towards a particular brand of software or hardware which is probably why this person never mentions Audioweaver, or if they do, they then dismiss it as being overly complicated and aimed at engineers and as shown above nothing could be further from the truth. Have a nice day ;)





















#7
FIR filter designs / Re: Group-delay correction of ...
Last post by Tranquility Bass - January 18, 2025, 04:13:39 PM
So now we have established the effectiveness of global group-delay compensation filters as a means to linearize the phase response of a non-minimum phase crossover and proved that you do not need to use linear-phase filters we can go ahead and complete the mission. The client divided his DSP duties as follows.

The following 4-way 8th order non-minimum phase LR crossover was uploaded to the Ultimate Preamp as follows.

4w32-26-12ok1.png

Whilst the stereo phase correction filter comprising of two 65536 tap FIR filters running at 192kHz sampling rate was installed on the PC as follows.

Xover-Stereo Phase Correction.png

Alternatively, the two designs could have been combined into one design and run exclusively on the PC whilst seamlessly integrating with the Ultimate Preamp.

As an indication of the CPU resources used, I grabbed a screenshot of the Audioweaver Server that presents the resource usage in realtime. To get an appreciation of the amount of computations performed each second we can do a back of the napkin calculation. For each 64k tap FIR filter, the number of multiply-accumulates (MACs) can be calculated by multiplying the tap count of 65336 by the sample rate of 192,000. This is 12.6 GMACs for one filter or 25.2 G-MACs for two filters simultaneous. That is certainly some decent DSP processing capability the PC is providing. To put it all into context for every audio sample 65536 multiply-accumulates have to be performed to calculate the convolution filter and there are 192,000 of these same calculations that have to be carried out per second !! If Audioweaver is leveraging on the Pentium SSE instruction set then it is more than likely using the fused-multiply-add or FMA instruction which supports SIMD (Single Instruction Multiple Data) so can perform multiple MAC's per instruction cycle! Coupled with the 6MB of Intel smart cache and a 3.3GHz clock frequency this thing is really hauling the mail without breaking a sweat 

Xover-4way(for testing)(AWD-Server).png

This is why we are not too keen to upgrade the onboard DSP when the current DSP board can leverage so much external DSP capability whilst maintaining the same outstanding audio performance metrics and anyone with an Ultimate Preamp Plus can achieve this !!

7cdc8eb0-0a1f-4b87-a061-128537f8eaf7.jpg








#8
FIR filter designs / Re: Group-delay correction of ...
Last post by Tranquility Bass - January 18, 2025, 01:51:46 PM
But what about the effects of the low-frequency box alignment on the frequency response ? We can do this on our Audioweaver test bench by switching in a high pass filter which mimics the effect of the woofer and box. Let's say we tune the woofer and box for a Butterworth alignment (ie Qt=0.7071) and a box frequency of fc=20Hz. How does this affect the frequency response? We can do this by enabling the high pass filter in the signal path and as expected we get the following frequency response where the response is 3dB down and phase is +90 degrees at 20Hz !

Closed-Box(fc=20Hz,Qt=0.7071)(without phase correction).png

As expected The square wave response shows the typical drooping due to the additional group delay at the lower frequencies and at 20Hz and 10Hz is very much exaggerated !

Xover-4way(for testing)(SCOPE-1000Hz SQWAVE-with phase correction+No Box Compensation).png

Xover-4way(for testing)(SCOPE-100Hz SQWAVE-with phase correction+No Box Compensation).png

Xover-4way(for testing)(SCOPE-20Hz SQWAVE-with phase correction+No Box Compensation).png

Xover-4way(for testing)(SCOPE-10Hz SQWAVE-with phase correction+No Box Compensation).png

Can we correct for this? Let's bring up RePhase again and include the effects of the low-frequency box alignment in the correction filter. We do this by including the box parameters and recalculating the filter coefficients or taps in this case.

Xover-4way(for testing)(RePhase-with Box).png

We load these coefficients into the bottom FIR filter block in Audioweaver and set the appropriate switches so the high pass filter and new correction filter is now in the signal path. When we run a frequency response sweep we still get the same magnitude response because the correction filter does not attenuate any frequencies at all.

Xover-4way(for testing)(MAGdB-with phase correction + Closed-Box).png

But the phase response is similar to the corrected phase response as before due to the large amount of delay in this type of filter.

Xover-4way(for testing)(PHASE-with phase correction+Closed-Box).png

To make more sense of this phase plot we switch in a delay in the reference channel which should match the delay of the filter. If everything is ok then the phase response of the two channels should be identical linear phase responses and the difference in phase should result in a flat or straight line with minimal gradient. Lets see what happens.

Xover-4way(for testing)(PHASE-DEVIATION -with phase correction+With Box Compensation).png

As expected the phase characteristics of both channels cancel each other out with no deviation at all and shows that the filter under test is producing a linear phase response.

And the corrected square wave responses are totally corrected except for a time delay of course !!

Xover-4way(for testing)(SCOPE-with phase correction).png

Xover-4way(for testing)(SCOPE-100Hz SQWAVE-with phase correction+Box Compensation).png

You are probably interested in what the response looks like at the cutoff frequency of 20 Hz and an octave below it at 10Hz where the actual response starts falling off thus having a direct effect on the fundamental frequency component of the square wave. Lets see !

Xover-4way(for testing)(SCOPE-20Hz SQWAVE-with phase correction+With Box Compensation).png

Xover-4way(for testing)(SCOPE-10Hz SQWAVE-with phase correction+With Box Compensation).png

For comparison if we switch in the time delay back into the reference channel to equalize the phase response between the two channels we can now see below both waveforms from both channels are in lock-step and now line up with each other no matter what frequency is used.

Xover-4way(for testing)(SCOPE-1000Hz SQWAVE-with phase correction+With Box Compensation+CH1 Time Delay).png

Xover-4way(for testing)(SCOPE-100Hz SQWAVE-with phase correction+With Box Compensation+CH1 Time Delay).png

Xover-4way(for testing)(SCOPE-20Hz SQWAVE-with phase correction+With Box Compensation+CH1 Time Delay).png

Note the reduction in amplitude of the sinewave output at the box cutoff frequency of -3dB whilst still being in perfect phase whereas the uncorrected response would be out of phase by +90 degrees !!

Xover-4way(for testing)(SCOPE-20Hz SINEWAVE-with phase correction+With Box Compensation+CH1 Time Delay).png
#9
FIR filter designs / Re: Group-delay correction of ...
Last post by Tranquility Bass - January 18, 2025, 11:40:31 AM
To generate a group-delay correction filter we need a means to build one. As expected the filter we need will be a Finite Impulse Response (FIR) digital filter with many taps (multiply accumulates). Because the crossover runs at 192kHz we will also build the correction filter to run at 192kHz which is a big ask for any DSP let alone two of them used for stereo but our test PC is more than capable being an Intel i5 4590 with 4 cores running at 3.3GHz and 3 levels of cache. We used a program called rePhase to build our filter which is a freeware program available from https://rephase.org/. Here is the filter setup in RePhase. Later on, we will include compensation for the low-frequency roll-off caused by the woofer and box but for now, let's just focus on the crossover itself.

Xover-4way(for testing)(RePhase).png

We set optimization to "Moderate" and hit the "Generate" key and then we created the following correction filter ! Note that rePhase always creates a correction filter with a net 0-phase response! This results in a non-causal impulse response that occurs before the impulse which whilst mathematical succint is physically unrealizable. To overcome this, rePhase allows you to realign the impulse response by delaying it and windowing it so there is no response before the impulse. In this case, this was done by delaying and centering the impulse response at the halfway point (i.e., half tap count) and using a Hanning window to mask out anything before the impulse. Since it's a txt file we can open it with Notepad just by double clicking on the file !

impulse-50-100-3000-48dBoct-65536tap-192kHz.png

We load these coefficients into the top FIR filter block in our Audioweaver test bench above. The bottom FIR filter block is used when we also include the effects of the box frequency response which we will address later on. We run Audioweaver again and switch in the correction filter so that it is now feeding the crossover and do a frequency response sweep again. As expected the response is ruler flat since the correction filter does not alter the magnitude but only the phase !

Xover-4way(for testing)(MAGdB-with phase correction).png

However, the phase response is hardly surprising with so much delay in the filter so it's hard to tell the shape of the curve is linear.

Xover-4way(for testing)(PHASE-with phase correction).png

To make more sense of this phase plot we switch in a delay in the reference channel which should match the delay of the filter. If everything is ok then the phase response of the two channels should be identical linear phase responses and the difference in phase should result in a flat or staright line with minimsl gradient. Lets see what happens.

Xover-4way(for testing)(PHASE-DEVIATION -with phase correction).png

As expected the phase characteristics of both channels cancel each other out with no deviation at all and shows that the filter under test is producing a linear phase response.

But the real test is the square wave response because even though the filter still measures flat the phase response appears to be linear and we can confirm this on the scope. Firstly at 1kHz and then at 100Hz the square wave is preserved so we have successfully phase corrected the non-minimum phase crossover !!

Xover-4way(for testing)(SCOPE-with phase correction).png

Xover-4way(for testing)(SCOPE-100Hz SQWAVE-with phase correction+Box Compensation).png







#10
FIR filter designs / Group-delay correction of a cr...
Last post by Tranquility Bass - January 18, 2025, 10:50:09 AM
There is a school of thought that says the only way to accomplish a linear phase crossover is to use linear phase filters which are a special class of FIR filter that sums to a unity response with a fixed time delay. So when both high pass and low pass sections are added together the response is a delayed version of what is being fed into the crossover. As I have discussed in another thread this type of filter has issues with proper impulse response cancellation due to imperfect matching between drivers which can result in severe pre-ringing leakage among other topics. The proponents of these filters will never talk about this aspect of this type of filter topology, instead pretending that it doesn't exist or can easily be minimized so that it is never a problem.

The other way of linearizing the crossover is to take an existing non-minimum phase crossover and apply a global group-delay correction filter which is just an FIR filter with a large number of taps. The advantage here is there are no FIR filters in the actual crossover to generate any pre-ringing artifacts. This is the approach taken by a few commercial designs as well as here, although the correction filter usually requires a large number of taps and has a large delay depending on the sampling rate and tap count. So this should be taken into account if you want to use these speakers with other speakers or in conjunction with a video display in say a home theater system in order to avoid lip-syncing issues.

We took a four-way 8th-order Linkwitz-Riley crossover from one of our clients who own one of our Preamps and applied a global group-delay correction filter to linearize the phase response. The LR crossover was already flat but the phase response was anything but linear so a square wave fed into it did not look like a square wave coming out of it. A linear phase response means that there is just a time delay in the signal path whilst still maintaining a flat magnitude response but there is no waveform distortion.

To measure the phase distortion of the crossover in isolation we needed to sum the outputs of the crossover before they were level adjusted and time delayed so we could focus on the crossover alone without the effects of the speaker and the room etc which we know adds its own artifacts to the response. Later on, we will look at compensating for those as well but for now we are just focussing on fixing up the crossover and making sure the group-delay correction filter is doing its job properly.

To evaluate the crossover we just looked at one channel and summed the outputs to measure the net frequency response. We also fed the input to the crossover to one of the outputs of the preamp as a reference for the analyzer to create the frequency response. The summed outputs of the crossover are fed to another channel on the preamp. We also added a few multiplexers or selector switches to enable us to switch in and out various filters quickly so we can quickly evaluate the effects of different filter configurations. Both the input to the crossover and the summed outputs are then connected to our dScope III audio analyzer. The dScope III can measure both amplitude and interchannel phase. The following Audioweaver test bench is what we used to evaluate the effectiveness of the global correction filters.

Xover-Test Bench1(AWD).png

All of the DSP is done on a PC instead of the Preamp itself because the group-delay correction filters required are beyond the resources of the onboard SHARC DSP. The Ultimate Preamplifier Plus (UPP) has a unique feature in that it allows one to run DSP on an external device such as a PC as though it was running inside the Preamp. In fact, in another thread, we proved that the audio path was transparent and the performance of the Preamp was unaffected by the noisy environment of a PC ! The Ultimate Preamplifier Plus can also share DSP between its own onboard DSP as well as an external PC so for example you could build a non-minimum phase LR crossover using the onboard SHARC DSP whilst running the correction filter on an external PC and then switch the correction filter in or out from the Preamp menu. This is the approach our client is taking but for proof of concept and convenience, we ran everything on an external PC which allowed us to quickly evaluate and test everything in the one environment. The main aim was to validate the effectiveness of the global group-delay correction filters and prove that you don't need to use dedicated linear-phase filters to achieve this.

First, we measured the frequency and phase response of the crossover filter alone using a log frequency axis. We note the flatness of the filter as expected but the phase is anything but flat ! The top blue trace is the sweep of the input which is ruler flat as expected and the bottom red trace is the crossover summation of all drivers which is also ruler flat as expected.

Xover-4way(for testing)(FR).png

To evaluate the phase response we reran the frequency response test using a linear frequency axis instead of the usual log axis. If the phase is linear then the phase response should look straight and not curved. Since the analyzer cannot distinguish phase greater or less than 180 and -180 degrees respectively it wraps or folds the phase so the response always is contained within a 360 degree envelope which makes it look like a saw-tooth. From the phase plot below we can see the phase is anything but linear which was expected !

Xover-4way(for testing)(PHASE-without phase correction).png

And now for the money shot. What does this crossover filter do to a square wave? The square wave is important because it is not just a single tone but rather a series of odd harmonically related tones with a monotonically decreasing magnitude. If the phase is not linear, it will manifest itself as distortion in the waveform even though the magnitudes of the harmonics are still correct. So, let's look at the test results on a scope.

Firstly at 1kHz and then at 100 Hz !! This is what a non-minimum phase crossover does to a square wave !! Can we fix this ??

Xover-4way(for testing)(SCOPE-without phase correction).png

Xover-4way(for testing)(SCOPE-100Hz SQWAVE-without phase correction).png