# Re: Wavetable example?

From: Marcus Geelnard <mage@opera.com>
Date: Mon, 23 Jul 2012 09:34:01 +0200
To: "Peter van der Noord" <peterdunord@gmail.com>, "Ray Bellis" <ray@bellis.me.uk>

Message-ID: <op.whv1yzh4m77heq@mage-desktop>
```Den 2012-07-22 20:17:06 skrev Ray Bellis <ray@bellis.me.uk>:

> On 22/07/2012 13:58, Peter van der Noord wrote:
>> Hmmm, my math knowledge isnt of the level that i have an immediate idea
>> about how that would work :)
>
> OK, here's a more concrete example.
>
> A square wave is defined as a series of the *odd* harmonics where the
> contribution of each harmonic is inversely proportional to its harmonic
> number.
>
> So the second, fourth, etc harmonics are all *zero*.
>
> The third harmonic is 1/3 the amplitude of the fundamental, and the
> fifth is 1/5, etc.
>
> See http://en.wikipedia.org/wiki/Square_wave
>
> So the input "cos" table would just look like:
>
> [ 0, 1, 0, 1/3, 0, 1/5, 0, 1/7, 0, 1/9, ... ]
>
> The sin table for a square wave doesn't need any values because the
> harmonics are all in phase.  So just use all zeroes.
>

That's right. Another way of thinking of it is that the WaveTable is
essentially the Fourier transform of a time domain periodic signal. So, if
you have a single period of a time domain signal that you want to use as a
WaveTable, take the FFT of that signal and use the real portion as the cos
table, and the imaginary portion as the sin table (haven't tried it, but
it should work).

/Marcus

--
Marcus Geelnard
Core Graphics Developer
Opera Software ASA
```
Received on Monday, 23 July 2012 07:35:10 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:50:01 UTC