• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Keith_W DSP system

I suppose it is a different way of thinking, and I am sure it works well. I do have a question - suppose you wanted to compare two FIR filters. How do you do that? Can you copy the entire pipeline into another slot, make the changes in the other slot, and toggle between the two?

This entire discussion grew out from a discussion about latency. I still do not see how a pipeline like this can achieve lower latency if we double the taps from 64k to 128k, or even 256k. Unless we move some of the corrections currently made in the FIR filter to IIR, but I am not particularly keen to do that.
 
If you stick to the same filter length then you will same delay (+ a tiny bit more for the other stages). The point is that maybe you can use a shorter filter while still getting the same quality end to end. Do you even care about latency though? It's a home music system isn't it so why care?
 
I suppose it is a different way of thinking, and I am sure it works well. I do have a question - suppose you wanted to compare two FIR filters. How do you do that? Can you copy the entire pipeline into another slot, make the changes in the other slot, and toggle between the two?
In qsys, the FIR filters simply swap out.
For example, if using a single FIR filter for room (or global speaker correction), you make a preset for each FIR file you save to try.
24 presets are available per bank. You can make multiple banks. Changeover is instant and silent.

Another bit more complicated example: Each way on my 5-way multi-ways has its own FIR file with imbedded linear-phase xovers.
When I want to try different xover frequencies or orders, a single preset can change all 5 FIR filters simultaneously, if so desired.


The cool thing with presets (qsys calls them snapshots), is you can put any controls that exist the schematic into them. You get to choose exactly what you want the preset to do.



This entire discussion grew out from a discussion about latency. I still do not see how a pipeline like this can achieve lower latency if we double the taps from 64k to 128k, or even 256k. Unless we move some of the corrections currently made in the FIR filter to IIR, but I am not particularly keen to do that.
Yep. If sample rate is kept the same, latency simply comes down to the number of taps before impulse peak. So with linear-phase and impulse centering, doubling the taps couples latency.
And me too, not keen to ditch FIR for IIR. The only corrections I want outside of the FIR filter, are the system high-pass, and low-pass if ever used, like previously said.
 
I am not sure if EKIO has the same functionality.

As shown in my diagram, all the parameters in EKIO can be modified/tuned on-the-fly while listening to music.
EKIO also have ABX comparator functionality for comparison of two set of saved configuration files.
WS00006960.JPG
I usually do not like, however, to modify the DSP parameter(s) on-the-fly mainly for safety reasons; if I would unintentionally mistype 20 dB gain-up by keyboard instead of correct 2.0 dB, it may harm/destroy my treasure SP drivers, especially the Beryllium tweeters and/or metal horn tweeters; in this case, it is better to use mouse wheel up/down, not by keyboard numeric input, for on-the-fly gain tuning.

After my decision of "the simpler, the better" EKIO configuration (fine EQs included, if needed), therefore, I usually use four HiFi integrated amplifiers for further "coarse" but excellent enough relative gain (tone) controls.
 
Last edited:
If you stick to the same filter length then you will same delay (+ a tiny bit more for the other stages). The point is that maybe you can use a shorter filter while still getting the same quality end to end. Do you even care about latency though? It's a home music system isn't it so why care?

At the moment, I get about 3-4 seconds of latency. I suspect that most of it is introduced by BubbleUPNP, JRiver, or DLNA. This gets annoying very quickly when I load up a classical album, e.g. Bach's 48 Preludes and Fugues, which has 100 tracks in it, and I can't remember which track I wanted to listen to. It can take a very long time to skip through the tracks. Then there are times when friends come over, and I hand them my tablet. They adjust the volume, hear no difference, then adjust the volume again, then BANG it's too loud. I already suffer from excessive latency, and I do not want to make it worse.

I am frankly dissatisfied with this solution, but currently it is the best that I have.
 
I am frankly dissatisfied with this solution, but currently it is the best that I have.
yeah that's pretty bad, I guess most of that isn't the filter though? idk what fs you listen at but assuming 48kHz and 65k taps (scaling accordingly to maintain freq resolution at different fs) then that's ~0.7s so optimising the filter isn't going to achieve much hence delay must in be the playback chain? Or you use even longer filters than this (relative to fs)?
 
yeah that's pretty bad, I guess most of that isn't the filter though? idk what fs you listen at but assuming 48kHz and 65k taps (scaling accordingly to maintain freq resolution at different fs) then that's ~0.7s so optimising the filter isn't going to achieve much hence delay must in be the playback chain? Or you use even longer filters than this (relative to fs)?

That's right, most of it isn't the filter. I am using 44.1kHz and 65k taps to try to get the FIR latency as low as possible whilst still maintaining some quality. I know the latency is mostly due to DLNA (or maybe BubbleUPNP or JRiver, but I suspect DLNA) because of some experiments I did to isolate the problem. Until Tidal get off their arses and allow Tidal Connect running on Android to control Tidal desktop, I will likely continue to suffer this latency.
 
At the moment, I get about 3-4 seconds of latency.
Really? It is a very large latency, indeed. I can understand your big frustrations on such a large latency. I assume it would not be attributable to your DSP software as you are thinking.

I never experienced such large latency in my DSP EKIO setup.
I also confirmed the almost negligible latency when I occasionally (not so often) play vinyl LP by TT in my DSP setup (ref. here), and when I occasionally (again not so often) connect 4K 55-inch OLED TV as second PC monitor for YouTube (and other) video/audio session (ref. here and here), I have no noticeable delay/discrepancy between audio and video...
 
Last edited:
Tidal Connect running on Android to control Tidal desktop
They have a tight relationship with Roon (which is now Harman), that may be stopping them to make remote control available for Tidal desktop. With Roon, you can remotely control Tidal.
 
Really? It is a very large latency, indeed. I can understand your big frustrations on such a large latency. I assume it would not be attributable to your DSP software as you are thinking.

That is correct. I use BubbleUPNP running on my Android tablet to cast music to JRiver on the PC. JRiver has a DSP pipeline (which includes BACCH), and it outputs to Acourate Convolver.

I can measure the latency by using my smartphone to take a video - I load it into video player, and note the time difference between pressing PLAY and music actually coming out the speakers. I always use the same track. Then I repeat the experiment with various things turned off. I know that there is virtually zero difference between JRiver's own convolver vs. Acourate Convolver. The biggest difference in speed comes from walking to the computer and pressing "PLAY" with the mouse, playback has very low latency that way, slightly less than a second. Given that the longest latency is with either BubbleUPNP or mConnect (both work through DLNA), I think it is DLNA which is the bottleneck.

In the existing setup, in the most minimal configuration, it takes 1/2 a second for music to start playing. A long FIR filter will make the latency worse, which is why I am not keen on it.

They have a tight relationship with Roon (which is now Harman), that may be stopping them to make remote control available for Tidal desktop. With Roon, you can remotely control Tidal.

That is disappointing :(
 
Anyway, I got fed up of banging my head against the wall looking at those curves and wondering why Dr. Uli's sounds so much better. So I decided to send him an email with some questions. I have his permission to post the reply. These may be useful for other Acourate users. I made some corrections to some inadvertent typos he made, I indicate these in italics.

1. What property of your correction increases the spaciousness?

A: I have used another target. There is a common misunderstanding: a frequency response of +- 2 dB is already considered as a good response. So it looks we are quite insensitive. But a slight change over a wide frequency range can still be noticed. A friend of mine is demonstrating noticeable sound differences of 0.1 dB by switching between corrections! Now I have created another target (there is no ideal target. so I change my favourite from time to time) straight to 1 kHz and with a -5 dB tilt @ 20 kHz. This is e.g. much different to a target straight to 300 Hz and then falling down to -6 dB. Try to play around this and compare your target with mine.

2. Why did you linearize the drivers at 1m instead of nearfield? In our first session, we linearized the drivers with the mic 10cm away, now it is 1m. I noted that your old filters were notably spacious compared to mine.

The measurement distance of 1 m is quite common. Usually in connection with an echo anechoic chamber. But anyway this distance also allows to get aware of e.g. diffraction effects by the baffle. Be aware that again there is no general "right" solution. Measuring a bass reflex box close up e.g. 10 cm does not allow to measure driver and port together. So you need a distance. But in a normal room you then may get into conflict with reflections.
So I also change the distance from time to time. For linearisation of drivers today I prefer the 1m distance (whereas at 3 m distance we have to expect the falling frequency response for high frequencies despite the linearised behaviour at 1m distance).

3. When you do your excess phase correction in Macro 4, you adjust while looking at Group Delay. My correction has lower Group Delay than yours, yet it sounds worse. Now I don't know whether I should aim for a GD as low as possible, or not. It was mostly GD <100Hz that was the biggest difference.

With macro4 I usually start with excessphase windows 5/5, 5/5. Then I check the result about preringing in loops between macro4 and 5. If necessary I lower the window values but I try to use not less than 2.5. If necessary I use PRC. (Pre-Ringing Compensation)

4. I note your point about not linearizing the subwoofer (the in-room measurement makes it impossible). I am thinking of taking the subwoofer outside so that I can get a ground plane measurement. Do you think this would be a valid way to linearize the subwoofer?

An outside measurement does not make too much sense in your case. Maybe you can linearise the drivers. But the result of your subs heavily depends on the setup condition, e.g. rear driver firing to the front wall.
That's why I do not linearise subs. So if you e.g. linearise a driver dip and with a given setup you get a new dip at the same frequency you will boost too much. The general rule: boost (=improve) the driver in the frequency range where it likes to play but never force a driver to play linear in a frequency range where is does not like to play.
BTW dipole speakers are also candidates which can sound weird if the are linearized in near-field.
 
this reads as target curve differences to me, do you think it's more than that?
 
Keith, just a quick note re: filter latency. For movie watching you may want to try a minimum phase FIR filter which still allows for a high tap count to control the bass, but no inherent latency like a linear phase FIR filter. Example here.
 
this reads as target curve differences to me, do you think it's more than that?

I find it difficult to believe that target curve differences alone result in so much more spaciousness. The only way to confirm/deny it is to experiment. I will take Uli's correction and apply my target curve to it, and see if the spaciousness collapses.

Unfortunately Australia is going through a heat wave at the moment, and I do not want to turn on my passively cooled PC. Tomorrow will be much cooler, so I will do it then.

Keith, just a quick note re: filter latency. For movie watching you may want to try a minimum phase FIR filter which still allows for a high tap count to control the bass, but no inherent latency like a linear phase FIR filter. Example here.

Thanks Mitch! At some point in the future, I will integrate the sound system into the TV. You may have noticed that the TV has been removed with the new setup, it is now in another room. If and when that happens, I will have to think about reducing filter latency as much as possible. Given that making min phase filters is as simple as checking a box in the filter generation step in Acourate, I could try it tomorrow when the heat wave passes and see if it makes much of a difference.
 
At some point in the future, I will integrate the sound system into the TV.

Another possibility, just for your possible interest and reference...

If your PC and hardware/software thereof have TV tuning/watching capabilities through "optical-fiber internet TV services", you may use your TV (I believe your TV has HDMI input port) as your second PC monitor (by single HDMI cable from PC to TV) for visual only, and you may process all the audio chain by your "existing/established" DSP audio setup; this is a kind of "reverse thinking" setup for TV watching plus HiFi audio setup. I do this TV setup (55-inch 4K OLED Panasonic TH-55HZ1800) for YouTube, TV channels, and other audio-visual programs (including DVD movies) with essentially no lip sync issue (ref. here).

I, in Japan, use PIXELA's XIT-AIR100W (TV tuner for LAN-WiFi) incorporated in my home LAN/WiFi and its TV viewing software installed in my audio-visual dedicated PC; I assume same type of LAN-wireless TV tuner units and software are available in your country.
 
Last edited:
Why is that difficult? Am I misreading what you posted in https://www.audiosciencereview.com/.../keith_w-dsp-system.51754/page-9#post-1887767 ? It shows a significant difference over a really wide frequency range (500-5kHz) in which we are most sensitive and which are involved in the reflections that tend to generate source width.

As I go on this journey I am continually having to revise my what I think. It is not that I am not open to the idea that a target curve can increase spaciousness, it's just that I have never seen anybody talk about it before. If we restrict the conversation to DSP only, it is mostly phase and timing issues. I was under the impression that the "spaciousness" is baked into the speaker's physical design, directivity, room layout, placement, toe-in, etc. and other physical factors which have nothing to do with DSP. I thought that DSP can not change the width of the soundstage (that is, if we ignore other types of DSP like BACCH - which again, is phase and timing manipulation). So imagine my surprise when I played Uli's filter and heard the spaciousness.

So yeah, maybe target curve. We'll see.
 
As I go on this journey I am continually having to revise my what I think. It is not that I am not open to the idea that a target curve can increase spaciousness, it's just that I have never seen anybody talk about it before. If we restrict the conversation to DSP only, it is mostly phase and timing issues. I was under the impression that the "spaciousness" is baked into the speaker's physical design, directivity, room layout, placement, toe-in, etc. and other physical factors which have nothing to do with DSP. I thought that DSP can not change the width of the soundstage (that is, if we ignore other types of DSP like BACCH - which again, is phase and timing manipulation). So imagine my surprise when I played Uli's filter and heard the spaciousness.

So yeah, maybe target curve. We'll see.
Am I right in interpreting what you mean by "spaciousness", is a greater sense of the recorded "space", e.g. large venues appear sufficiently large perhaps in reverb realism. Or is it that the width and depth of an image takes up more space in your room?

Given that both interpretations can be related to frequency response and phase, I can imagine DSP having quite a large impact.
 
As I go on this journey I am continually having to revise my what I think. It is not that I am not open to the idea that a target curve can increase spaciousness, it's just that I have never seen anybody talk about it before. If we restrict the conversation to DSP only, it is mostly phase and timing issues. I was under the impression that the "spaciousness" is baked into the speaker's physical design, directivity, room layout, placement, toe-in, etc. and other physical factors which have nothing to do with DSP. I thought that DSP can not change the width of the soundstage (that is, if we ignore other types of DSP like BACCH - which again, is phase and timing manipulation). So imagine my surprise when I played Uli's filter and heard the spaciousness.

So yeah, maybe target curve. We'll see.
Let's assume there'a an optimal target curve for your room, speakers and LP and you're very lucky and you know exactly what it is. What about its level? You can calculate target level from a response in many different ways and there'll be quite significant differences between various methods which will effect the strength of the filters you will need to apply.

I like to think, the ideal TC is your speakers' anechoic response as it removes the room from your speakers at the LP but this is just as in the air as Harmon curve which could have been actually created for headphones.
 
I was under the impression that the "spaciousness" is baked into the speaker's physical design, directivity, room layout, placement, toe-in, etc. and other physical factors which have nothing to do with DSP
well ultimately speaker + room = system so if you change one then you change what you hear, this much is stating the obvious :)

the posted response is a large very low Q difference through the range of frequencies that produce the reflections that produce apparent source width so if you change the level of them relative to everything else, it's going to have an impact. I have absolutely no idea if this is what you're hearing but it's certainly a large difference on paper vs a bunch of what look like v fine tunings (e.g. minor improvement to timing).
 
Back
Top Bottom