[.uhm] FM Synthesis in Hive
- KVRAF
- 4197 posts since 23 May, 2004 from Bad Vilbel, Germany
Here's a typical DX7-plus-analogue-pad layer thing. Included Urs's wavetable just in case.
You do not have the required permissions to view the files attached to this post.
- KVRAF
- 4197 posts since 23 May, 2004 from Bad Vilbel, Germany
True!EvilDragon wrote:DX Piano wavetable + 8 voice unison and some detuning = instant TX816!
- KVRian
- 544 posts since 1 Jan, 2013 from Saint-Petersburg, Russia
I have a question about editing envelopes. Is it supposed to be a little painful or I'm missing something?
For now I'm using this script to visualize the shape of the envelope:
For now I'm using this script to visualize the shape of the envelope:
Code: Select all
Envelope curve=exponential L0=0.2 T1=0.2 L1=0.5 T2=0.05 L2=1.00 T3=0.75 L3=0.00
Wave "env(phase)"
- u-he
- Topic Starter
- 30204 posts since 8 Aug, 2002 from Berlin
It's painful. But the alternative - partitioning the formulas - is a lot more tedious.drzhnn wrote:Is it supposed to be a little painful or I'm missing something?
Naturally, these envelopes are more intuitively laid out in a visual environment. But I still think we're better off this way than with the old synths with their cursor keys and their data entry sliders/buttons.
(but also, I don't know many visual wavetable editors which let one draw envelopes anyway...)
- KVRian
- 642 posts since 22 Jun, 2018
Maybe I'm weird, but they are very intuitive to me, at least once I figured out the times are relative and not absolute.
- KVRian
- 642 posts since 22 Jun, 2018
LovelyHoward wrote:Here's a typical DX7-plus-analogue-pad layer thing. Included Urs's wavetable just in case.
- KVRian
- 544 posts since 1 Jan, 2013 from Saint-Petersburg, Russia
I wasn't complaining, by the way
. I love everything about the envelopes, it's just that they are not very easy to read. But I still love them, they are geeky enough and the syntax has that 80s vibe, which is always a good thing 
I'm sure everybody knows, but I just discovered that I can shape curvature of an envelope by raising it to the power. Like this: env(table)^4. The poor schmuck's mind blown

Not sure if it's right to do it like this though, especially the env(t)^4 graph looks a little out of hand.
Here's this thing in action:
I'm sure everybody knows, but I just discovered that I can shape curvature of an envelope by raising it to the power. Like this: env(table)^4. The poor schmuck's mind blown

Not sure if it's right to do it like this though, especially the env(t)^4 graph looks a little out of hand.
Here's this thing in action:
Code: Select all
NumFrames = 100
Envelope L0=1.0 T1=1.0 L1=0.1
Wave "sin(phase*2*pi * 4)"
Wave "floor(x * 1)"
Wave "lowpass(x, env(table)^4, 0.0)"
Wave "sin(2*pi * (phase*2 + env(table) * x) / 2)"
- u-he
- Topic Starter
- 30204 posts since 8 Aug, 2002 from Berlin
drzhnn wrote:I wasn't complaining, by the way. I love everything about the envelopes, it's just that they are not very easy to read.
Btw. IIRC the curve=exponential and curve=logarithmic envelope shapes also change by envelope amplitude IIRC. So if you scale your Levels by 10 and then use 0.1 * exp( x ) in the formula, you get different shapes too. All IIRC.
- u-he
- Topic Starter
- 30204 posts since 8 Aug, 2002 from Berlin
Note that scaling the envelope with anything like env(x)^2 is very different from the built-in curves. Latter scale falling edges "upside down" of rising edges, like in analogue stuff. That's why I put them in, so there's the option for either kind of curvature.
- KVRist
- 430 posts since 4 Jun, 2018 from The UK
Thanks again Urs! Really appreciate the detail you put into explaining FM (I haven't heard it called Delta X before now!). I've been experimenting, and added a few layers of phase modulation. I haven't tried the envelopes yet (thanks for the utility script drzhnn!). The result I got is an interesting FM bass type thing.
I commented my findings and also commented out some of my experiments in case anyone fancies playing around with my wavetable:
This is an alternative version that I quite liked:
Don't ask me to explain it, I was effectively twiddling knobs in the operator matrix 
I commented my findings and also commented out some of my experiments in case anyone fancies playing around with my wavetable:
Code: Select all
Info "Ranokas First FM Wavetable, mostly experimented by doing multiple phase modulation passes. Can play as one shot, or Set Auto Mode to Loop <-> and play with Pos and Auto"
// fundamental tone
Wave "sin(2 * pi * phase * 4)"
// multiplying gives more movement, bigger number for a deeper sweep!
Wave "sin(2 * pi * phase + x * (16 - (table * 16) ))"
// another modulator that sweeps
// try doing table+2 of 2-table instead for something really nice!
Wave "sin(2 * pi * phase + x * 2 - table)"
// add/remove sections to change the timbre
//Wave "sin(2 * pi * phase + x * 1.5 - table)"
// ----- Try comment toggling the lines below, one at a time ----
// basic version
//Wave "sin(2 * pi * phase + x)"
// e represents Eulers number 2.718055556 - I used it here to experiment
Wave "sin(2 * pi * phase + x - (e * (4 * table)))"
// try changing table to frame - really crazy!
//Wave "sin(2 * pi * phase + x - (e * (4 * frame)))"
// If you put index need to multiply by smaller
//Wave "sin(2 * pi * phase + x - (0.002 * (2 * index)))"
// or add some noise with rands
//Wave "sin(2 * pi * phase + x - (2 * rands * 0.5))"
// removing the DC offset can make the waveform wobble up/down
//Spectrum lowest=0 highest=0 "0" // remove DC offset
Code: Select all
Wave "sin(2 * pi * phase * 4)"
Wave "sin(2 * pi * phase + x * (16 - (table * 16) ))"
Wave "sin(2 * pi * phase + x * table + 2)"
Wave "sin(2 * pi * phase + x - (e * (4 * table)))"- KVRian
- 544 posts since 1 Jan, 2013 from Saint-Petersburg, Russia
The "alternative version" sounds very ominous in low notes
Love it!
- u-he
- Topic Starter
- 30204 posts since 8 Aug, 2002 from Berlin
Now that I come to think about it, I might have just guessed that. It makes so much sense, because in geometry, "dx" is pretty much the standard way to define horizontal offsets (which is what this synthesis is about).Ranoka wrote:(I haven't heard it called Delta X before now!)
- KVRAF
- 24414 posts since 7 Jan, 2009 from Croatia
Yes, me neither! That's totally news to me. I did wonder why they called it DX, though.Ranoka wrote:(I haven't heard it called Delta X before now!)
-
- KVRAF
- 2770 posts since 3 Dec, 2006
Urs thank you very much for all the time you but into these tutorials. .Urs wrote:Note that scaling the envelope with anything like env(x)^2 is very different from the built-in curves. Latter scale falling edges "upside down" of rising edges, like in analogue stuff. That's why I put them in, so there's the option for either kind of curvature.
My question is how do I make a lately bass, fairlight vox type sound and a hard synch or Lazerharp type sound... sorry if I sound like a stuck record.. honestly this new addition to Hive is awesome!!
