Fmsynth Beta Development Discussion [Deprecated]

Note that this tool is deprecated and will no longer be updated or maintained.

[edit: get version 0.3 beta here]

After some testing it seems possible to write a FM synthesis tool that runs faster than artyFM alpha.

Also, as FM synthesis was leading the poll during the ReSynth2 development discussion, I thought I’d open a new poll to see what people wanted from a FM synth.

Please give feedback in this thread.

Thanks

[edit: poll removed 11/11/11. The results of most desire features were (in order)]:

Simpler UI / Faster rendering (tie)

I think multiple wave forms, like the tx81z and later, would be great. Also I think graphical envelopes would be really nice.

Looking forward to this one :)

Me too

Ok, I’ve been busy on this and this is what we have so far:

  • 6 FM operators
  • Selectable operator routing algorithms
  • 3 point operator envelopes
  • Status bar
  • Randomize operators
  • Reset to defaults
  • Simple patch management
  • Realtime modification (although slightly different to ReSynth)
  • Crappy algorithm routing diagram

Hopefully I’ll get an alpha test release up soon as I’m going away for a while and some feedback during that period would be great. :)

looks fun, like to test drive this one! Does ‘randomize routing’ also make sense, as a random choice between types? Maybe something to implement as well?

will there also be some possibility of using this to create fm drums? just wondering. I’m clueless as to how to create them, but sometimes they seem to be squashed in just the right ways, especially after processing.
(I can barely do drums with a nord micromodular i was lent a while ago, so not expecting to get any FM synth to give FM drums,… D’you reckon there could be some aider in this for this kind o fstuff)

Might do, I’ll investigate.

I’m not too sure how to do drum synthesis with FM. However, there is no noise generator, so sounds like hats, cymbals and maybe snares may be difficult. Kicks, toms, random bleeps, tuned percussion (e.g. bells) should be possible in theory, but how would be left to the user :P

You could sneaky use some small sample snippets to allow you feeding noise samples into it. You then have a template to pick values from.

Ok, we missed the opportunity for an Alpha test release while I was away.

I’ll flesh out the rest of the routing algorithms in the code and hopefully get a beta version released this weekend for testing.

Cool, looking forward to it! B)

We’ll never get cake. The cake does not exist. Repeat: The cake does not exist.

The cake is really a spoon!

Please find attached version 0.3 beta of FMSynth

Beta version features (from above):

  • 6 FM operators
  • Selectable operator routing algorithms
  • 3 point operator envelopes
  • Status bar
  • Randomize operators
  • Reset to defaults
  • Simple patch management
  • Realtime modification (although slightly different to ReSynth)
  • Crappy algorithm routing diagram

While I’ve tried to remove the most obvious bugs in the code, it may still crash or have unexpected behavior.

Please report all findings in this thread.

Thanks

You got that one right, looks 'orrible! :) Ditching the colours would improve this quite a bit, i seem to feel. The colors feel pretty out-of-place. also the arrows feel frail. mind you, i have no replacement for you. But the way they’ve done it in Ableton Live’s Operator, for instance, is pretty neat and fits the interface well.

I got some suggestions from a friend whom i showed this tool to, he proposed that all 6 operators would have operator_amount(=operator_volume), and according to the 1-9 selection, a singular feedback knob which controls the specific 1-9 algorithm feedback. That’s apparently how Chowning&Co did it back then, i.e. identified the best position for 1 feedback inside an algorithm.
But to make it easier for the GUI designer, there would be 6 operator feedbacks and 6 operator volumes.

Nice1! :drummer:

Sounding good here and can’t get it to crash (yet :))… don’t mind the routing sketches that much, maybe instead of acting just as visual info, you can make it functional by having the picture divided inside 9 large buttons to select the different algorithms?

I think eventually, the colours will go from the diagram. That would allow me to make the background transparent. It’s still at the experimentation stage for the reference diagram.

If anyone has any good ideas feel free to draw them and post them. More ideas from more people should result in a better result.

There is no overall operator amount due to the 3 point operator graph. An overall operator amount would have both advantages and disadvantages. The current implementation is ultimately more flexible, but may take a little longer to program.

I’m not sure I understand the operator feedback control you are suggesting? There is no feedback operators in the algorithms as it makes it significantly more complex in coding and really slow during rendering.

I like the idea of the images being buttons.

agreed. the first thing i did was try and click on the algorithms, only to feel stupid that it didn’t work.

Here’s a feature request. I wonder what you’ll think.

Make it possible for ReSynth and this FMSynthesis to be called from the same instrument.
i.e., some way of making ReSynth and Fmsynth aware of eachother so that they won’t overwrite eachother but instead will recognize eachother and work in tandem. I for one would be interested in 4 oscillators of resynth (especially since resynth gives me access to a noise oscillator) and 6 operators of fmsynth. I’m sure that’d be enough for a few kinds of sounds, to be honest! :)

Not going to be possible for the current versions.

When we get API access to more instrument features (e.g. envelopes) a rethink will be required. At that point is may be worth considering merging then into one powerful synth tool.