Filter brewing for the Soekris R2R

Disabled Account
Joined 2005




TCr2 filter is down a couple of dB at 70kHz whereas stock is flat to 100kHz.
LP_FIR2 is a different approach altogether. It's aimed at minimising ringing and ripple so stopband starts far higher than the other two, and attenuation is around -140dB vs -85-90dB for the other two.


  • SKFir2.png
    93.6 KB · Views: 849
  • TCFir2.png
    97.5 KB · Views: 827
  • LP_FIR2.png
    82 KB · Views: 568
Last edited:
Disabled Account
Joined 2005
CRaP Magic

For completeness...



The CRaPMagic FIR2 is a similar thing to the LP filter posted a couple of days ago. However it rolls off earlier and stop band starts at around 280kHz instead of 330kHz.


  • TotalCRaPFir2.png
    44.6 KB · Views: 556
  • CRaPMagicFIR2.png
    78.2 KB · Views: 566
Disabled Account
Joined 2005
The higher fs filters combined with FIR2 also have the mirror frequencies coming through.

With mpF2_MP (and LP) the image looks alike but with harmless -170 dB peak over -300 dB floor.

I hadn't investigated the higher fs filters, so thanks for that.

What I'd been having a look at is SoX upsampling with various combinations on audio...
The following are all taken at 20.208 seconds from the start of So What.

Default FIR1 and FIR2

CRaPMagic 44.1 FIR1 and Default FIR2

CRaPMagic FIR1 and FIR2


  • SW_CM_all.png
    85 KB · Views: 539
  • SW_CM441_SKF2.png
    89.8 KB · Views: 547
  • SW_Stock_441_FIR2.png
    92 KB · Views: 544
Disabled Account
Joined 2005
I tried all filters. The best sounding in my opinion is 1021MinPhaseSlowrev1.skr of spzzzzkt. And also those measures i has made are best.

But there is a problem with the measures. All filters of 44,100, 88, ... 352 have noise, saturation, rounding....?
I see in all measures i made, 1k, jitter j-Test, or 19 kHz. -12 DB + 20 khz. -12 dB.
So I gather that is 352 F2 filter problem.
This problem does not occur in 48, .... 384 kHz. measures.

Does the altered FIR2 solve this?
Disabled Account
Joined 2005
And it is of course the pass band that should always (also) be analyzed. After all, that is what we are listening to.


A couple of days ago you were cheerleading for +/-0.5dB passband ripple if it meant an ideal stop band.

So would/will I. Half a dB will not do any harm. I would even trade some ripple below 20khz to get a more ideal stop band.


If you want an example of detail of passband:
Attached image shows passband with a range +/-0.00002dB.
In an early attempt at digital noise suppression, Roger Lagadec, then at Studer, investigated a multiband digital noise gate that split the audio signal into 512 bands, noise-gated the bands separately and then put them back together again. Although this was very effective in reducing noise, it was discovered that there was a disturbing audible colouration, even if the noise-gating action was switched off. It was discovered that this colouration was due to the amplitude response of the filtered bands added together again not being quite flat – there was a ±0.1dB ripple in the frequency response. It was found that to remove the upsetting audible colouration required this ripple to be reduced to around ±0.001dB. In this case, all the digital filters had linear phase responses – so only the amplitude response could be blamed for the colouration.
Last edited:
Revision of the Statistics :D
I made spectrograms from my HD recordings and found several "types" which perhaps would benefit from different types of filters. @ Soren, It would be nice if a later firmware would allow easy filter switching. If possible filter switching during playback and without serial connection, e.g. by giving the input select pins a (optional) new functionality would be nice.

Back to the spectrograms, in order as they appear below:

1. "only audio band type", only content below 22kHz.
(example from: Bizzarrie Armonichoniche; Biber Rosenkranz Sonaten; Label ARTS)

2. "DSD type", considerable noise in the high frequencies content below say 22kHz.
(example from: Florilegium; Pergolesi Stabat Mater; Channel Classics)

3. HF content and incresing noise to the HF end
(example from: Dunedin Consort; Bach Mass in B Minor; Linn Records)

4. moderate HF content below say 35kHZ (with fs 192kHz)
(example from: Henkel; Tchaikovsky Concerto for Violin and Orchestra D major Op. 35; Altana)

5. HF up to the limit, calling for HF-CRAP
(example from: Dunford; Dowland Lachrimae; Alpha)

Also for 44.1-material at least two filters would be good
6. Content up to the Limit, calling for CRAP
(example from: PHILIPPE JORDAN; Verdi Requiem; Erato)

7. Content staying clean away from the frequency limit.
(example from: Pierre-Laurent Aimard; Bach The Art of Fuge; Deutsche Grammophon)

To conclude, I admit 1.) on the HD recordings are not always the interpretations you want to listen to, and I will (also) continue to listen CDs/LPs.
2.) I not always hear what I see on the spectrograms.


  • spectrogram 1 c.png
    spectrogram 1 c.png
    149.7 KB · Views: 140
  • spectrogram 21.png
    spectrogram 21.png
    256.4 KB · Views: 143
  • spectrogram 4.png
    spectrogram 4.png
    255.3 KB · Views: 130
  • spectrogram 1 b.png
    spectrogram 1 b.png
    235.5 KB · Views: 134
  • spectrogram 2 b.png
    spectrogram 2 b.png
    262.3 KB · Views: 617
  • spectrogram 1 a.png
    spectrogram 1 a.png
    323.3 KB · Views: 134
  • spectrogram 2.png
    spectrogram 2.png
    220.3 KB · Views: 129
Last edited:
It be interesting to extract all the purple, amplify, do pitch shift down and hear how much musical information there is. Are you able to share what file we are seeing here?

Its this recoding, 24/88.2, from the second trac:
John Dowland : Lachrimæ (Pièces pour luth & airs) | John Dowland par Thomas Dunford
I bought it at the time from Linnrecords, but they do not list it anymore. I assume the HD track you get from the above link is the same.

P.S. if you are intrested in such things, here something with even higher "content" up to 70 kHz
Spectrogram in the next post
Last edited:
Disabled Account
Joined 2005
Not to clutter up this knowledgeable thread with beginners question I’ve started Beginners Filter brewing thread for the Soekris R2R

Hope some of you have the patience to visit? :rolleyes:

Not sure why? I was a beginner when I started this thread. The content of this thread documents a learning curve as members try to nut out what works and what doesn't. You would have been better off asking questions here.
Maybe this chapter could be useful Chapter 2: FIR filters - Digital Filter Design - mikroElektronika

Additionally I guess all the information that hifiduino has gathered in his blog regarding the filters, could also be useful for this thread. Maybe you could ask permission from him to also use it here, in the first page of this thread.

Finally, does anybody know if a firmware upgrade could increase the precision of the coefficients? Right now dam uses 32 bit coefficients, with up to 67 bit MAC accumulator. MSB tech uses 36bit coefficients and 80bit computation 16 x Digital Filter
Last edited: