[sdiy] Reverse sawtooth / Wavetables

Paul Maddox paul.Maddox.mail-list at Synth.net
Wed Jan 26 22:09:09 CET 2011


Tom,

  hehe, I used to, but TBH there was nothing in their that floated my boat.

Paul

On 26 January 2011 13:46, Tom Wiltshire <tom at electricdruid.net> wrote:
> Hi Paul,
>
> You mean you haven't got a copy of Musical Applications of Microprocessors to hand?! I'm shocked!
>
> There's considerable discussion of the method used to measure interpolation noise, but (if I've got it right) the figures given are an RMS error between the ideal sample and the interpolated one. There's no mention of table bitsize (e.g. are we storing 8-bit or 12-bit or 16-bit values) so I guess it uses 'ideal' samples for both ends of the interp, except in the 'no interp' case where you just get the lower of the two values from a truncated phase value.
>
> Regards,
> Tom
>
>
> On 24 Jan 2011, at 19:28, Paul Maddox wrote:
>
>> Tom,
>>
>> Quality of???
>>
>> resolution? SNR?
>>
>> am interested.
>>
>>>
>>> Unfortunately, that was my experience. I tried using half-wave tables when I was designing my DWGS oscillator. This allowed me to get 1024-point waveform tables into the RAM available. In the end, I dropped the halfwave table, reducing the waveform size to 512 points, and used the space I gained from taking out the halfwave logic to do a linear interp between waveform points. The gain in quality from the linterp far outweighed the loss from halving the table size.
>>>
>>> Again, Hal Chamberlin has been there before me, and gives some figures on Pg 429 for table lookup noise:
>>>
>>> Sine waveform, no interp:
>>>        256 points:     42.99dB
>>>        512 points:     49.03dB
>>>        1024 points: 55.05dB
>>>
>>> Complex waveform, no interp:
>>>        256 points:     23.56dB
>>>        512 points:     29.55dB
>>>        1024 points: 35.41dB
>>>
>>> Sine waveform, linear interp:
>>>        256 points:     85.19dB
>>>        512 points:     97.23dB
>>>        1024 points: 109.28dB
>>>
>>> Complex waveform, linear interp:
>>>        256 points:     42.75dB
>>>        512 points:     54.76dB
>>>        1024 points: 66.82dB
>>>
>>> This shows a clear benefit from putting the linear interpolation in, even if it means kicking the halfwave tables out.
>>>
>>> T.
>>> _______________________________________________
>>> Synth-diy mailing list
>>> Synth-diy at dropmix.xs4all.nl
>>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>>>
>> _______________________________________________
>> Synth-diy mailing list
>> Synth-diy at dropmix.xs4all.nl
>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>
>



More information about the Synth-diy mailing list