Xfer Serum advanced algorithm tutorial

VST, AU, AAX, CLAP, etc. Plugin Virtual Instruments Discussion
RELATED
PRODUCTS
Serum

Post

eatyourguitar wrote: to prove it works lets fade a sine to saw to square.
sin((x+1)*pi)*(-y*(y<0))+(-x)*(-abs(y)+1)+x/-abs(x)*(y*(y>=0))
I used that for this

https://soundcloud.com/matthijsbos/soun ... ple-trance


and made a short track example (yeah it's trance, deal with it KVR!)

https://soundcloud.com/matthijsbos/trac ... ple-trance


Here is the patch if anybody wants to play with it --> http://s000.tinyupload.com/index.php?fi ... 6854115276

Post

Endov wrote:Hi there!

first of all I really enjoy this topic! and thnx @eatyourguitar for your tutorials on Serum's parser.

I 'm searching for some years also that dsp stuff, and especially wavetable synthesis. I have made a patch in Max, that can create wavetables via additive,fm,am and extract it to tables (2048-samples) wav. or .h2p format (128-points) for u-he zebra tables.

The tables are generated in "almost" real time (with fast re-triggering of the lists,to receive back immediately the changes of the variables and parameters) with the combination of list management objects and the mathematical library of max. My basic idea was to construct an expression evaluator inside the patch like bitwiz app (http://kymatica.com/Software/BitWiz) and some other stuff on the net. But it's a really tough task to program an well working evaluator in java or c++(for max externals). In my dream plans was to construct a whole vsti based on this math idea.

And thank "DSP" God (Steve of course)... here comes the Serum.

When i see this wavetable monster, i lost my days and nights in the way to learn it's brand new features.
Beside the geometrical design of the parser, i m also love the wavetable processing with "in" variable, and the fantastic and extended control of q variable (spectral bins). All this wonderful stuff is a really big pallet to play around, and the mathematics that possibly can be used are endlessly.

Of course i agree with @eatyourguitar for the limit of Serum's parser at more complex stuff.. And my thought also goes straight to Galbanum wavetables, with the usage of some more complex math, like fractals etc.

But at the end, I think that Serum's wavetable tool is a fantastic add on a Vsti synth.

Here is some of my best formulas till now. hope you enjoy them guys!

[sum(((sin((rint(-y*32+32))*pi*x)*sin(z*pi))*0.5)+(sin((rint((y<0?-1-y:1-y)*32+32))*pi*x)*(1-(sin(z*pi)))*0.5))][rissetone]
in a common synth you could use 4 lfos and 2 osc's to achieve a nice sounding risset tone.. I know that sounds crappy (basically for the harmonic steps) but the illusion i think works as well as possible for a wavetable.
[sin(sin(x*pi)*rint(-sin(10*(z+0.08)*(x)*pi)*10*(z+0.055)))][tarantula]
[sin(w*pi)*sin((0.05+z)/(sin((y/z)*x*pi)))][cfm]

some complex spectra tables created with q
[q*(q-(sin(z*pi)+0.04))%((sin(sin(sin(q*z*pi)))+0.15)*6)*(1/q)][q experiment]
[q*(q-(z+0.04))%((z+0.15)*14)*(1/q)][fft magic 3]
Here the wavetables have really smooth shapes, and are phat and nice sounding for bell like sounds.

some multi process formulas also
[(x>=0)?0.8*(rint(rint(4*(x*z^2)))*in):abs(0.8*(rint(rint(4*(x*z^2)))*in))][spikes prc]
[z=q>=rint(z*256+2))?0:(in+(1-z)*sin(rint((z)*256+2)*in))][FM filter design]
either you can design some weird filters like this. it sounds like a phaser filter. try it at 256 saw waves, to hear this weird morphing from sine to saw.
Not a maths heads I'm afraid, so perhaps you can help me with this one. Would you know of a formula to get Vosim wavetables that can be modulated to generate pseudo talking effects?

Examples here:
https://www.youtube.com/watch?v=7GetTjx96D0

and here:

https://www.youtube.com/watch?v=qZ8L4vq0f30

This would be wild for bass lines. I studied maths at school, and got fairly good at it, but without continual usage that part of my mental hard drive got corrupted years ago, along with the bit that could speak French pretty well :dog:
So at the moment I'm just collecting formulas off the Web and seeing what happens, with out much of a clue as to what the result be or why something sounds good when it does work It's a bit random and arguably sub-mental but it keeps me off the streets :hihi: At some point I'll probably have to crack open my old text books, reignite long dead synaptic pathways and get more of clue here, but until then if you have a handy formula for creating Vosim type effects in Serum it would be much appreciated. Thanks.
Musicmaker: "I'm playing all the right notes, but not neccesarily in the right order" Eric Morecame : Comedy Bhoddisatva

Post

Making a basic VOSIM wavetable:

Half a sine wave:
sin(w*pi)

w is the current time-value getting plotted, from 0.0 to 1.0
whereas x is the current time-value getting plotted, from -1.0 to 1.0

The following gives us 4 sine waves. You can increase the multiplier, 8 in this case, to get more sine waves.
sin(w*pi*8)

The following takes the same and dampens the sines
w*sin(w*pi*8)

But it is backwards, so we change it to:
(w-1)*sin(w*pi*8)

Now we want to give the waveform a positive offset. This also doubles the number of sine waves:
(w-1)*sin(w*pi*8)^2

And flip it vertically:
-(w-1)*sin(w*pi*8)^2

Finally, we can add some modulation to it and create a full wavetable. In this case we'll just change the number of sines over time:
-(w-1)*sin(w*pi*8*(sin(y)+1.5))^2

Adding y or z somewhere in any single cycle formula will turn it into a full wavetable.

y is the current table number, from 0.0 to 1.0
z is the current table number, from -1.0 to 1.0

Post

A basic VOSIM example in Serum with a little extra FM modulation from the SUB...

https://soundcloud.com/fabled-audio/bas ... e-in-serum

Post

If you want one pretty much normalized:
(-(w-1)*sin(w*pi*9*(sin(y)+1.3))^2-.5)*2

Post

Another basic example; this one using the formula directly above. It may not be accurate to call it normalized since it has such a strong negative bias and doesn't even register in Serum's built-in meter. In any case...

https://soundcloud.com/fabled-audio/ano ... e-in-serum

Post

Is the G2 clip using a filter? The G2 clip sounds more throaty/nasally. Perhaps a more vowelly filter in Serum would work better.

Dang if only my math classes would've been like this, making it more interesting, it would've stuck more easily.

Post

My example is as basic as it gets. You can try dampening with a parabolic curve, half a parabola, instead of a perfect saw like I did and see what that does. Ultimately though you're going to get the most variety from experimentation with the original waveform that you are adding the dampening too. Fool around with the second order harmonics for example so your series of sines vary in amplitude and offset before they are dampened.

Post

The "Squarify" function, by default, completely removes all of the even harmonics in your wavetable via the additive synthesis engine. Is there any way to modify the default "squarify" formula to where you can set a amount/percentage to turn down the even harmonics?

Say you wanted to "Squarify" a wavetable....but not completely...just by like 40%. In my mind all you would need to do is have the formula turn down all the even harmonics by 40% instead of removing them completely (which is what the factory "squarify" does).

Squarify is amazing....it's 1 of the processes i use most on wavetables i create myself.....but sometimes i just want a little of the squarify process done to the sound. I'm sure i'm not the only 1 who would love to be able to do this. I'm pretty sure this can be done....the math is just beyond me. I'm hoping it would just be a minor modification to the original formula....and hopefully pretty straight forward so you can easily change the amount/percentage to anything you want.

Post

Kain wrote:
eatyourguitar wrote: to prove it works lets fade a sine to saw to square.
sin((x+1)*pi)*(-y*(y<0))+(-x)*(-abs(y)+1)+x/-abs(x)*(y*(y>=0))
I used that for this

https://soundcloud.com/matthijsbos/soun ... ple-trance


and made a short track example (yeah it's trance, deal with it KVR!)

https://soundcloud.com/matthijsbos/trac ... ple-trance


Here is the patch if anybody wants to play with it --> http://s000.tinyupload.com/index.php?fi ... 6854115276
Thanks for posting this Kain! That was fun to hear your walkthrough of this function. :tu:

Post

dadunn1700 wrote:Is there any way to modify the default "squarify" formula to where you can set a amount/percentage to turn down the even harmonics?
Looks like Steve answered you already on the Xfer Records forum. Cheers.

Post

Greg Houston wrote:
dadunn1700 wrote:Is there any way to modify the default "squarify" formula to where you can set a amount/percentage to turn down the even harmonics?
Looks like Steve answered you already on the Xfer Records forum. Cheers.
Yep :D

Love it! I almost posted the formulas here but figured the ppl that actually own Serum, like you, would notice it on the Serum forum on the Xfer website. For anyone else that has access to the Serum xfer forum all you'd need to do is search the Serum forum for "Anybody know a way to determine HOW MUCH "Squarify" effects the wavetable in the formula parser?" and you'll find the Squarify formulas.

Post

You could also probably use bazille to create VOSIM style waveforms and import them into serum. Might not be the same as recreating them with math, but i think you could come pretty close.
:borg:

Post

Old thread I know!

Is someone who contributed to this thread maybe able to write down the Serum formula for this wave?

Image

This is the wave used for the Pacman Waka sound.
See also this thread for some more details:
viewtopic.php?f=100&t=506039

As one can see there is a time line grid with values from 0 to 31.
Highest point of the first sinus cycle 4
zero crossing 8
lowest point 12
next zerocrossing 16
highest point of the next sinus cycle 19
next zerocrossing 22
lowest point 25
next zerocrossing 28
highest point of the last sinus cycle 29
next zerocrossing 30
lowest and last point 31

I am also not sure if the value 5 on the y axis sould be considered as 0
teacuemusic (Musicals)
youtube

Post

Try running the plotted numbers into an online regression calculator and get any wave you want. Or if you wanna get fancy..

https://www.youtube.com/watch?v=kemKaIzKjoA

http://www.mepx.org/
https://github.com/mepx/mepx-binaries

:tu:
SLH - Yes, I am a woman, deal with it.

Post Reply

Return to “Instruments”