Hi all, I'm wondering why I'm not getting the expected behaviour when trying to add several osc~ together to get things like a saw wave with additive synthesis. I've made this patch that compares the result using osc~ and using a table to generate the sine waves. Is it a known rounding error somewhere, or is it (as usual) me?
Cheers, Andrés
On Thu, 19 Aug 2004 acabrera@teleset.com.co wrote:
I'm wondering why I'm not getting the expected behaviour when trying to add several osc~ together to get things like a saw wave with additive synthesis. I've made this patch that compares the result using osc~ and using a table to generate the sine waves. Is it a known rounding error somewhere, or is it (as usual) me?
well, the amplitudes of your harmonics are not correct. They shouldn't be like pow(2,-N), but rather, like 1/N.
and then, it only gives a sawtooth when using certain phases... using all sines gives a sawtooth. There are sine/cosine combinations that work, but you can't use all cosines because the sawtooth is never an "even" function: it doesn't have a reflection symmetry.
Mathieu Bouchard http://artengine.ca/matju
acabrera@teleset.com.co wrote:
Hi all,
Is it a known rounding error somewhere, or is it (as usual) me?
as mathieu pointed out, it is a problem with phase. 2 solutions: a) don't care about phase (both signals sound the same) b) use "cosinesum 1024 0 1" instead of "sinesum 1024 1"
but why do you want to do it with table-lookups instead of [osc~] ?
mfg.as.dr IOhannes
but why do you want to do it with table-lookups instead of [osc~] ?
iirc the osc~ is using a 512 sample wavetable for lookup ...
cheers...