Filter brewing for the Soekris R2R

That's opened things up nicely, playing in the background. 96k & 44k sound remarkably similar - same music file streamed from PC Asus Xonar soundcard using Asus Direct Sound drivers via optical, bit rate set on PC - something I failed to achieve with my Tube Tech dac. On with longcase clock work today as still awaiting input boards. In next day or so will try capturing & posting a plot or two from my scope, may help? May have to buy software too!!

Thanks to all for the input & determination to find the best filters we can achieve.
 
What we get is actually a slightly truncated version of the Truth ;)


Based on the above I did some further tests.

Lowest value* that registers as 1 is:

1.16415321826934808E-10

rather than the theoretical value of:

1.16415321826934814453125E-10


With scaling factor of 1

The lowest value* I found that would convert to 1 in the .skr file was

9.31322574615478464E-10

rather than

9.31322574615478515625000000000E-10

So a bit of rounding, and adjusting for simpler processing.

I've been working backwards from the .skr so the math coming from the other direction really helps join up the dots...

cheers
Paul

* before I got sick of "probing" with progressive high/low values.

Yes, its rounding, I forgot.
It has to be decided which number is (still) 2^{-30}. In the computer, as double, 2^{-30} is a binary mantissa 1.0 and exponent -30. The mantissa has for double 52 bits (IEEE 754), so we would expect
2^{-30}- 0.5 2^{-30 -51} = 2^{-30}- 2^{-82}
=9.31322574615478308829846861743E-10
to be the smallest number resulting in 1 after conversion.

Your experiments show that it is more likely a 54 bit mantissa so 2^{-30}- 2^{-84}
=9.31322574615478463926211715436E-10
which looks pretty close to your
9.31322574615478464E-10
 

TNT

Member
Joined 2003
Paid Member
The response was a flat line right though the audio band to 20kHz with the NQv3UG version. There were no apparent peaks, bumps or roll off to account for the lack of high end reported in some quarters.

I can see why those reports might have been coming but I'm not surprised about your measurements. This filters kind of took away something "bright" about the sound. Instead, when there is indeed some higher frequency content, this just arises out of thin air in abundance. When there is no such content, there is only the room... but no brightness. Like IRL. Like it!

//
 
I can see why those reports might have been coming but I'm not surprised about your measurements. This filters kind of took away something "bright" about the sound. Instead, when there is indeed some higher frequency content, this just arises out of thin air in abundance. When there is no such content, there is only the room... but no brightness. Like IRL. Like it!

//

The filter that I listened when I reported the shyness in the high end was 1021filtNqJFJ.skr.zip. Except from this shyness problem, the stage was much smaller and a bit more fuzzy and unfocused in comparison to the CRaPMagic_LP that I was using previously. On the other hand what I liked was the midrange in female voices, while CRaPMagic_LP can be described a bit on the bright side as TNT mentioned above. I will try your new quantised version today and report back.
 
Last edited:
Don't worry, I will ;)

I did a quick test on the DAM response today using white noise into the Konnect 8.

The response was a flat line right though the audio band to 20kHz with the NQv3UG version. There were no apparent peaks, bumps or roll off to account for the lack of high end reported in some quarters.

I've done a test with a version of the 44.1 filter quantized in the Matlab filter designer (those guys must love me, another module required for that, and another $50. bah!! We only work so we can fund our hobbies, right?)

It gives a very slightly different shape to the noise floor at the DAC outputs and minor (as in possibly 1-2dB) difference in some harmonics and peaks. Hard to spot however. I suspect there isn't too much to be gained, but there seems to be something about the MATLAB quantised filters....

Sorry about the naming btw. NQ = nyquist UG = unity gain, qnt = quantised.

Maybe its just me but I find this filter quite "dynamic" sounding.
I kind of like it :D
 
I am back to my CDs and tried the latest filters. Bravo! It is the first time that I can not say that I prefer my CD player compared to an external DAC.
With the 1021filtIPv4_p30/35 I can currently not distinguish the DAM from the CD player. With the 1021filtNQv3UG_qnt I have the impression that female voices (solo) are very slightly more behind a curtain ... but that could be also minimal differences of gain.

I will have to listen to more musik.
 
Well, I've listened to the filter 1021filtNqJFJ.skr.zip, which I feel is an improvement over the previous one, at least regarding the stage. But I still feel something is missing in the high end that reduces the discrimination of information. For example in Loreena's Marrakesh Night Market around 0:10, there are some very faint and echoed castanets?, which now I can barely hear. Generally, I would describe the sound as too matured and rounded, without any rough edge if it makes sense to anyone.
 
Disabled Account
Joined 2005
With the 1021filtNQv3UG_qnt I have the impression that female voices (solo) are very slightly more behind a curtain ...

For example in Loreena's Marrakesh Night Market around 0:10, there are some very faint and echoed castanets?, which now I can barely hear. Generally, I would describe the sound as too matured and rounded, without any rough edge if it makes sense to anyone.

I have to agree 100% with both these comments. The NQ filters sound like someone has thrown a blanket over the tweeters. It's not level matching as far as I can tell, as I've tried switching between IPv4_p30 and NQv3 variants with filter gains at the same settings and the apparent levels are very close. The difference is that there is a very distinct loss of high end detail with the Nyquist filters.

The other thing I notice is the loss of "attack" on piano. Using So What as a reference, the piano loses the sharp hammer strike at the leading edge, as if the damper is being used.

It seems this a characteristic of the Nyquist filter algorithm, and while it sounds attractive in a "cocktail hour" kind of way I think it is ultimately a wrong turn. I'll try out a few different things, but nothing I've done thus far seems to really change the underlying character.

So we are all on the same page with the Nyquist filters I'm attaching a version with quantized FIR2 filters with 6.833 gain. This matches the IPv series, so should make direct comparison a bit more straight forward.
 

Attachments

  • 1021filtNQv4RG_qnt.txt
    37.4 KB · Views: 105
  • 1021filtNQv4RG_qnt.skr.zip
    2.3 KB · Views: 113
Last edited:
Disabled Account
Joined 2005
Not only that; I'll borrow Alpha DAC today to listen where it is soundwise vs DAM. ;)

Just reading the patent and there is a long discussion about apparent loss of high frequency information due to time smear. Need to spend some time but there is a useful discussion about the lack of information presented in "normal" impulse response plots. Worth reading for this information alone.

http://patentimages.storage.googleapis.com/pdfs/US6337645.pdf

Add: Basically the impulse response we've been looking at is telling you SFA about the filter, except in the broadest brush strokes. In other words, nice for marketing brochures or Hifi magazines but not especially informative.
 
Last edited:
Disabled Account
Joined 2005
The Pflaumer patent has turned out to be pure gold, even if though I have zero interest in replicating his filters designs. Thanks vuki!!!

So, the Nyquist filters have had a reprieve.

I should now be able to tune these filters based on the information mentioned above.

For a starter, this version should have a bit more HF emphasis than the CRaPMagic filter (as a point of reference) but I can tune up or down as needed.

log squared impulse response for the last Nyquist filter (purple) and current version (red) attached for reference.
 

Attachments

  • 1021filtNQtb65.skr.zip
    2.7 KB · Views: 122
  • 1021filtNQtb65.txt
    56.2 KB · Views: 101
  • NQtb65.png
    NQtb65.png
    79.7 KB · Views: 391
  • NQv4.png
    NQv4.png
    74.1 KB · Views: 395
Last edited:
Mesurements of 22050 sinus:Bada, dam with sharp IP filter, dam with IPv4P30, Sabre 9018 with slow filter. Output level was same on all dacs (measured at 1khz and white noise). Sabre dac was measured with 192khz input sampling rate vs 96khz for the rest. Sondcard was terratec DMX6Fire USB.
 

Attachments

  • sabre2205.jpg
    sabre2205.jpg
    42.2 KB · Views: 435
  • damv42205.jpg
    damv42205.jpg
    42 KB · Views: 452
  • dam2205.jpg
    dam2205.jpg
    42.2 KB · Views: 445
  • bada2205.jpg
    bada2205.jpg
    44.2 KB · Views: 459
So vuki, you have 8 khz spikes from both your quite different DACs. That would rather point to a measurement artefact or common external interferer to me.

//

PS Whats "Bada"?

Yes, 6,5+8+9khz spikes are probably measurement artefacts or interference. But the point was to show 22050hz signal level, which in Berkeley Audio Design Alpha (bada) dac isn't as low as suggested by the Pflaumer's patent.
 
Disabled Account
Joined 2005
Yes, 6,5+8+9khz spikes are probably measurement artefacts or interference. But the point was to show 22050hz signal level, which in Berkeley Audio Design Alpha (bada) dac isn't as low as suggested by the Pflaumer's patent.

A good way to pick up filter curve is with two equal amplitude tones at 19kHz and 21kHz, or 20 and 22kHz. Any difference in level at the output is due to filter roll off.

The other way is to use gaussian white noise as an input - it has a flat distribution and if you do FFT on the DAC output you'll see the filter curve.
 

Attachments

  • whitenoisegaussian.wav.zip
    849.4 KB · Views: 110
A good way to pick up filter curve is with two equal amplitude tones at 19kHz and 21kHz, or 20 and 22kHz. Any difference in level at the output is due to filter roll off.

The other way is to use gaussian white noise as an input - it has a flat distribution and if you do FFT on the DAC output you'll see the filter curve.

Thank you!

Bada, Dam1021filtNQtb65, Dam sharp IP filter, Sabre sharp, Sabre slow
 

Attachments

  • badafilt.jpg
    badafilt.jpg
    41.6 KB · Views: 415
  • damfiltNqtb.jpg
    damfiltNqtb.jpg
    41.4 KB · Views: 219
  • damfiltz.jpg
    damfiltz.jpg
    41.4 KB · Views: 223
  • sabrefiltshr.jpg
    sabrefiltshr.jpg
    41.3 KB · Views: 204
  • sabrefiltslw.jpg
    sabrefiltslw.jpg
    41.1 KB · Views: 206
Nobody was getting knickers moist about "keeping original samples" when they were made, so no they don't.

Thank you very much.

The txt coefficients files, "keeping original samples", etc. is just curiousity. Every day we understand more of these files and I have curiosity. Not only hear the filter, but have more information.

The 0 and 0.0000000000 was also curiousity. So your detailed explanations is very appreciated.

Sometimes I edit the txt: other gains, mix diferent F1 F2 filters,..

I make filters with rephase but nothing to publish as improved or novel idea.

I appreciate your work, especially because I enjoy learning. And of course the sound improvements.

I'm more interested to have a short simple filter. And try to make phase and amplitude correction of my speakers.
But it is enjoys learning and trying filters with this DAM1021.
 
Disabled Account
Joined 2005
It's definitely a learning curve,

My preference would be to always keep fir1 at correct gain. X8 or X1 for NOS.. Maybe more a hunch than anything but I think changing gain at FIR1 will alter the sound of the filter in uncontrolled ways.

I also think that rePhase doesn't offer precise enough control of specific parameters to be the ideal solution for DAC reconstruction filters. It will be perfect for doing crossover filters.

What I'm finding with the latest filters is that the transition band width is a critical parameter for determining the tonal balance of a filter. If you compare the last two nyquist filters the only parameter that has changed is the width of the transition band. I'm doing rough experiments with changes of 250hz and that makes audible differences.

Until I learn more about what works and what doesn't I'm not especially concerned about filter length or the amount of ringing. I firmly believe we have been barking up the wrong tree by focusing on cutoff frequency and pre-post ringing.

Unfortunately reading that Pflaumer patent was a bit of eye opener for me. I had decided to walk away from the nyquist filters because of the issues with apparently rolled of HF I couldn't solve. I decided to read the patent to see if it suggested a different path. Instead I discovered the answer to fixing the tonal balance.

At least now I can see precisely why the TotalCRaP sounds detailed but lacks dynamics, even if it now feels like I've spent the last two months randomly generating filters.

Anyway at least we might now make some progress rather than stuffing around trying to tweak impulse responses to look nice.