Yes, Operator is a 4-op FM synth, with added bonuses of a variety of different bandlimited saw and square waveforms as well as bitrate-reduced sines, noise, and triangle waves.
The genius is in the interface. I've played with a lot of FM synths and Operator is so quick and dirty to dive into that I'm hard pressed to use anything else. Plus the envelope generators are very tactile and fun to play with. I did try to make a Pd clone of it a few years ago but ended up purchasing the license instead (worth it).
Unfortunately it would most likely be difficult to recreate the fluidity of the interface in Pd, since it is coded and compiled in C++ and has very efficient GUI rendering.
~Kyle
On Wed, Dec 31, 2008 at 6:50 AM, Frank Barknecht fbar@footils.org wrote:
Hallo, hard off hat gesagt: // hard off wrote:
most of the stuff that operator synth does looks fairly straight-forward, shouldn't be too hard to put together a basic pd clone.
I had a quick look at the Live manual, where I found, that Operator is just a 4-op FM synth with some additional tweaks. A simple 4-op FM is on my January TODO list for the RjDj library anyway. In general FM is easy, but the more operators you have, the more you want to use [mtx_mul~] from Iemmatrix, but RjDj only has vanilla objects.
challenging bits will be the square and saw waves with variable numbers
of
partials, but i think that will probably just be a case of [tabosc4~] and making some tables with sinesum values.
Or some summation formulas, but tabosc4~ is easier.
then that knob to alter the amount of aliasing, it could be using
upsampling
and then lowpass filtering like the nord synths do, or like the 'classic synth' example in pd's audio documentation. but that approach quickly
eats
up cpu....or else it could be using an adjustable bandlimiter, something like the [blosc~ comparator] external, but with adjustability. actually, this function is the hardest one for me to think of a solution for.
Yep, aliasing in FM always is tricky. It will be ignored for RjDj. ;(
the filters shouldn't be TOO hard, although to get a good lowpass, notch, bandpass and highpass it might be best to dig through pd-extended's externals. for lowpass i usually use [resofilt~] bandpass vanilla's
[vcf~]
is fine, although franks new resonz~ / resonr~ filters look super promising. for highpass, i prefer [svf~ high]. not sure about the notch filter.
I'm a bit proud of resonz~ and resonr~: In the end they look very simple, the hard part was digging J.O. Smith's Filter book. ;) I'll also do some version with signal inlets later.
If anyone knows which transfer function would make a good 2 pole resonant lowpass filter (like lp2~ in Iemlib) I'd be super thankful.
Ciao
Frank Barknecht
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list