<div dir="ltr">Minimum Phase bleps / blamps will sound the same pretty much the same as linear phase ones if you don't modulate the pitch or process the oscillator afterwards with non-linear elements. People generally use linear phase blep / blamp since no DC component is added with modulation like with the minimum phase version.<div><br></div><div>Practical blep implementations are a tradeoff of length and accuracy of the corrective grain vs cpu. From my point of view all methods are "poly blep" of some form. A linear interpolated table is just using a bunch of 1st order polynomials to generate the corrective grain, where each part of the polynomial only covers a fraction of a sample. You can also increase the degree of the polynomial approximation, as well as the length it covers of the corrective grain to generate other forms. If the length covered is 1 sample then this is normally called a Farrow Structure. The original poly blep paper (from memory) has 2 taps (samples), and uses two second order polynomials each covering 1 sample, so this is a Farrow Structure of length 2 using 2nd order polynomials.</div><div><br></div><div>Cheers,</div><div><br></div><div>Andy</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 17 Feb 2021 at 04:01, Brian Willoughby <<a href="mailto:brianw@audiobanshee.com">brianw@audiobanshee.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Thanks so much for putting this together!<br>
<br>
I'll be listening after work today.<br>
<br>
In the interim, I wonder if you're able to compare the minimum-phase "MinBLEP" to these other options, especially the 32-sample Saw_BLEP16 (or is that only 8 samples on each side?). If I had to place my bets, I'd expect that there'd be no audible difference between minimum-phase and textbook step, even though the waveform would be different. I'd also expect that the harmonic and aliasing content would be the same. I'm just curious what the real-world results are.<br>
<br>
Brian Willoughby<br>
<br>
<br>
On Feb 16, 2021, at 05:39, Richie Burnett wrote:<br>
> I've uploaded some audio examples of what you can expect from these different synthesis techniques if anyone is interested:<br>
> <br>
> <a href="http://www.richieburnett.co.uk/temp/blep/" rel="noreferrer" target="_blank">http://www.richieburnett.co.uk/temp/blep/</a><br>
> <br>
> They all contain a Sawtooth waveform slowly swept from about 47Hz up to 12kHz over a duration of 20 seconds...<br>
> <br>
> File "Saw_Naive" contains what you get if you just output the oscillator's phase accumulator directly at 48kHz.  You get a Sawtooth with lots of aliasing.  Most noticeable at the higher pitches though.<br>
> <br>
> File "Saw_PolyBLEP" contains what you get if you apply corrections to one sample before and one sample after each discontinuity using the PolyBLEP technique I mentioned, with 48kHz sample rate.  This clearly sounds way better than just outputting the raw phase accumulator!  But if you view the spectrum or spectrogram in something like Audacity or Goldwave you will see there's still plenty of aliasing going on at the top of the audio frequency range.  You can actually watch harmonics bounce off the Nyquist limit (right edge of spectrum) and reflect back down.  You can probably hear them too if you listen carefully.<br>
> <br>
> File "Saw_PolyBLEPx2" contains what you get if you run the same basic PolyBLEP technique with x2 oversampling (i.e. 96kHz sample rate).  You still see some low-level aliasing right at the top end of the spectrum in Goldwave, but not much ventures into the region below the tone's fundamental.  You will likely struggle to hear the aliasing now at sensible volume levels.<br>
> <br>
> File "Saw_BLEP16" contains a sawtooth synthesised using a full BLEP method correcting 16 samples around each discontinuity and running with x2 oversampling (96kHz.)  Now you will see that the spectrum looks very clean everywhere right down to the noise-floor.  (If you can hear aliasing in this file, then your PC or audio interface is likely performing some sort of sample-rate conversion, and doing it badly!)<br>
> <br>
> File "Saw_Aliases" contains just the corrections applied to the Naive Saw waveform around the discontinuities, just for fun.  It essentially contains all of the aliased rubbish that gets removed by the BLEP algorithm, but you can hear it more clearly without the main Sawtooth tone masking it!<br>
> <br>
> As you can see the simple PolyBLEP method does a very good job of attenuating aliasing in the low-frequency region of the spectrum where it is most annoying,  but the full BLEP technique tweaking several samples around each discontinuity gets close to perfection across the full audio spectrum.<br>
> <br>
<br>
<br>
_______________________________________________<br>
Synth-diy mailing list<br>
<a href="mailto:Synth-diy@synth-diy.org" target="_blank">Synth-diy@synth-diy.org</a><br>
<a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
Selling or trading? Use <a href="mailto:marketplace@synth-diy.org" target="_blank">marketplace@synth-diy.org</a><br>
</blockquote></div>