So I’ve been fiddling on and off with achieving actual frequency modulation with nothing but native DSP devices. You can get a little FM-ish using the Ring Modulator tied to a key tracker, but it’s not quite the same (RM vs FM of course).
I’ve tried this too and I think, no. Get a decent FM vst, like I just got FM8 from a friend for free
RM is different from FM, definitely. What I have tried is LFO => Ringmod frequency (using ringmod as the osc see?); results are typically quite boring.
in Overtune you can get cool FM samples, but when you try having different decays on operators and stuff, you can get very long calculation times and annoying sensitivities when transposing. Some cool sounds though, some kicks I’ve made with use of FM techniques (if you call the pitchbending on a synth kick frequency modulation you could say every kick I’ve made with overtune has some FM in it).
You use overtune? I’d be glad to show you some examples.
First: example of overtune FM stuff (because that’s what I use momentarily) (warning: half of VoS vst fx was used in this demo ) 2706-a-fmdemo.xrns
Short explanation of the formulas (for basic working of Overtune, check my page) Instrument 1 is a FM sample with a pretty simple formula; it sounds like a sorta electric piano thing on one track, then more like a synth on another track. Bet that another DSP chain would make a pad-like sound out of it. When I was satisfied with the sample I’ve widened/detuned it using AwesomeSawce (Per.5ths)
basic form for this FM is
sin(XX+a1*sin(XX*b1)+a2*sin(XX*b2))
``` a = mod amount, b = modulator ratio
- then I give the modulators a slight phase difference (it's often handy to turn on autofade when you do this):
sin(XX+a1sin(XXb1+c1*bi(C)))
- the C gives a 0 for left channel, 1 for right channel. so bi(C) gives -1 for left channel and 1 for right channel.
- because I use non-integers for some values of the b's (b1 b2 etc) I have to use XX instead of X, and the 'time #' value in overtune has to be a multiple of 2 (in this case that is: because I use values of 1.5, 2.5, for the b's)
[b]Instrument 2[/b] is a oneshot FM sample that is used for a bell type sound (used together with dblue's tuned Phaser which I like to call a resonator, and epicVerb)
- programmed slightly different, here the modulators are transposed by Per.4ths as by
nf(5)
- I've set it to render basenote A-3 instead of the default A-0 because 512 for 'Time #' takes way too long otherwise (turning resolution down)
- in this case, the 2 modulating operators
sin(XX*nf(5))
sin(XX*nf(10))
*rd(T,1.2)
- Then the final waveform also gets a 'slow' decay using "anti-ramp-down" aka ard(T,p)
[b]Instrument 3[/b] is a combination of two crazy FM samples/formulas, a subosc and a squarewave. It makes up the bass in the last, looping, pattern.
- Just two FM formulas I stuck together, don't know which chain I used it on back then
- Anyway know that the subosc is, as I guess is expected, a sine osc transposed -12
- Only samples 3&4 loop, envelope fixes the amp'ing.
- Check it out on another track to hear what it sounds like without a km long FX chain
Other example: 2706-native-fm.xrns
Not really that cool, like I said, boring. Also not a ‘real’ FM synthesis example since the modulator is a fixed frequency (well, not fixed but it’s not relative to the note frequency proper), actually more like a vibrato.
I just found out I’m probably doing more phase modulation than frequency modulation… Is the only difference that the modulation goes logarithmic vs linear? I’m gonna have to experiment a bit more
@ wahrk, I’ve removed the FM link
Thanks kazakore
anyway there’s different approaches that can be used in OT (of course, because it’s so friggin free)
the literal PM is probably what I’m doing all the time to create piano type sounds, bell type sounds, all kinds of things you would get when tweaking FM synths
and what I guess would be actually FM is something of the form
sin(XX*(1+amount1*sin(XX*pitch1)))
however, this yields strange results in OT somehow, haven’t been able to figure out why but the workaround seems to be to have the modulation ramp down linearly (I’m just still trying to figure out what this is alleviating)
sin(XX*(1+rd(T,1)*amount1*sin(XX*pitch1)))
in this case the modulators may also be squ or saw or tri or whatever sounds fun.
edit; the rd workaround is not fixing the whole problem, apparently, which can be seen easily on samples with higher repeat (“Time #”) values. Somehow the general pitch goes up into a screaming noise (cool for fx though!)
I can’t really remember any of the modulation mathematics I learnt at college around 15 years ago. Some of your posts have made me want to refresh myself on such subject though!
College and uni. I did Electronic Engineering (after Sound Engineering) at college and Broadcast Engineering at Uni, so modulation techniques are fairly important to understand at least to a fair extent. Although once the learning has finish very few aspects of the industry are then going to need you to remember and use the theory so I’ve now forgotten a lot of it! And even then, with it all being CODFM FOR DVB-T/DAB and various forms of QAM for DVB-S there is very little real analogue modulation in transmissions these days (OK, we do still have analogue radio transmissions) and for what I do I really don’t need the deep level mathematics of it all.
it sounds different for some reason (even though it shouldn’t? i can’t understand much past this…). but if you are not trying to emulate a synclavier, then you are on the right track. what you are doing is what everyone thinks of when they think of ‘fm’ sound. ‘real’ fm you almost never hear.
i’m coming back into renoise from a long hiatus (basically since 1.8-2.0) and am discovering a lot of stuff that happened between then and 3.0.
in particular, that Formula DSP. oh my gosh i wish that was still in 3.0. i absolutely NEED that for what i’m trying to do (well, either that or i need the LFO to be able to allow values between 0.000 and 1.000, otherwise i have to jack up my LPB and BPM to unreasonable amounts in order to get it to work, which pretty much obviates any useful pattern editing.)
Formula device has been hidden device for a long time, you need to copy paste some code into the track dsp area for it to appear, than save it for convenience sake. Search the forum, you’ll find it.
Greetings! I have only recently started exploring the possibilities of synthesizing through native renoise instruments. If it doesn’t bother you, can you update your link with examples?
I would LOVE to see native fm functionality added to renoise. Ideally, audio-rate modulation (mini-sampler?) available as a modulation device for any mod parameter. then we would get complex fm and complex am functionality with deep integration.
technically you CAN perform fm natively within renoise (at least at the sample level) using the mix paste function, but this is admittedly far from ideal, especially if you want to modulate the amount of fm in real time. it is useful for generating some interesting and complex sounds though!
@Jalex, there’s a ton that can be done natively within renoise. keytrackers tied to various dsp can generate a lot of compelling karplus strong type sounds. The ring modulator can be tied to a single sample of max amplitude to get pure analog style waveforms, which can then be further effected/processed. I’ve set up vector synthesis and modal synthesis instruments natively within renoise as well. if you want precise tunings with most of these methods, there’s more work involved, but as far as generating interesting timbres, there are plenty of compelling synthesis avenues to explore natively within renoise, imo
We need phase modualtion , not fm
In the meantime I purchased a yamaha tg 77 , absolute monster of an fm synth
Still has features not found in it’s modern counterparts