Posted on 2021‑07‑23, 07:35 AMhi folks,
heres a great way to unleash some hidden power from the EssenceFM and this method also applies to some other FM synths [but not all]. the method is pretty straightforward, and i've enclosed an example voice as a starting point for programming/tutorial purposes. all thats required is to set an operator/oscillator to fixed mode at 0hz, which effectively turns it into a non-linear waveshaper [classic component of buchla/serge], and its waveform becomes the transfer function. i mentioned this on the PreenFM2 forum here
my original source for this is in section 5.6 in this great little SY Programming book by Herbert Janssen
also see this paper for all the classic refs
A Tutorial on Non-Linear Distortion or Waveshaping Synthesis
Computer Music Journal
Vol. 3, No. 2 (Jun., 1979), pp. 29-34
can be read online free
the example voice i've included has op1 set as a fixed 0hz shaper and op2 as the source waveform to be processed. theres also an LFO adjusting op2 amplitude so you can hear the effect straightaway. this voice could of course be an fm stack/alg into a shaper[s], or the shaper[s] could be positioned somewhere within an algorithm. other useful points of departure are adjusting op1 phase [rotating the transfer function], feedback amount and feedback source.
the EssenceFM also has the bonus of user waveforms, so you can make your own non-linear waveshaper transfer functions!
Posted on 2021‑07‑23, 02:09 PMThanks Dave !
Posted on 2021‑07‑23, 02:59 PMthanks for bringing that up, dave, and collecting the ressources here!
the janssen paper is a classic, which i used on the sy99 (for which it was written, i think)
reminds me, that i wanted to recreate some chebyshev polynomials to use as waveshapers,
similar as applied in this recreation of the buchla 700:
btw, here is a utility for creating waveforms (or doubling as waveshapers)
Posted on 2021‑07‑30, 06:07 AMhwk thanks for the waveform util link, not seen tht b4.
yes written for sy99, really helped me with my sy99 & tg77 programming, and beyond of course.
the buchla 700 looks great, just hope they make it available on osx / pc.
|Colin Muir Dorward|
Posted on 2021‑09‑23, 06:49 PMHi, this waveshaping ability is a little unintuitive for me. Maybe this thread can help folks like me to better grasp its potential.
To start, I'm trying to set up a "transparent" waveshaper. I think this should look like a saw wave, right? It seems I can get closest using the ESS saw wave, so I set that up with frequency zero. The modulator must then be set for very low output, but still, it's definitely adding harmonics.
Part of the problem may be that the ESS saw is not a pure saw, but I can't find a way to create perfect functions, am i missing something?
Any other suggestions on how I can achieve this?
Thanks for the links and hints above!
Posted on 2022‑01‑08, 12:03 AMsorry for my late reply, i have been offline for some time with the efm, but got it setup again now.
the built in saw wave2 has rounded edges, but also its not the correct shape for pass through. so saw wave2 rises from 0 to about +1, then goes directly-ish to -1 rising again to 0.
but a transparent passthru requires a perfect saw wave starting at -1 and rising to +1 at the end [or -.99999.. & +.99999.. is sometimes better depending how nums are handled internally]. that way u have a perfect match for the incoming & outgoing waveform. and gain changes will not introduce or remove any harmonics
ie -0.37 in, should give -0.37 out etc. so for every possible value a wave can take, the ramp should give exactly the same value. if you flipped the ramp to +1 to -1, u would invert the waveform. any good wave editor should let u build wavetabs eg
hope that helps ?
Posted on 2022‑01‑08, 02:05 AMthis reminds me, that i wanted to upload some waveforms based on chebychev polynomials, which make for good waveshapers. the level of the incoming wave -start with a sine- determines the harmonic content of the resulting spectrum.
(some background here: http://sites.music.columbia.edu/cmc/MusicAndComputers/chapter4/04_06.php)
i also include the "ideal saw", noyzelab mentioned in an up- and down flavour.
and a very straight square wave i was having fun with because of the artifacts it generates😄
Posted on 2022‑01‑09, 02:38 AMthanks for posting those waveforms, will b checkin those out L8R !👍