SynthMaker

Vibrato LFO

Archive · 2006 7 old posts

From the original SynthMaker forum (2004–2014), with its members’ names and dates.

Eska ·

This is a Cheap-pseudo-sinusoidal-lfo, basic formula grabbed from the musicdsp.org by fumminger:

polyin Freq;//in Hz polyin Level; polyin Samplerate; polyout Out;

float y; float x; float stp; float t; stage(0) { t=128/Samplerate; Freq=Freq*2; } stage(1) { hop(128) { stp = Freq * t ; x=x+stp; // Compute 2*(x^2-1.0)^2-1.0 y=((x*x-1.0)*(x*x-1.0)*-2.0)+1.0; x=x-(x>=1.0)&2.0;

Out = y *Level; } }

oddson ·

Welcome to the forum... 🙂

Freq=Freq*2;

Won't work. SM won't allow you to write to input variables. (At least last time I tried to get away with it. Let me know if I'm mistaken.)

Declare a new variable first and then store Freq*2 to it.

Eska ·

Howdy oddson. Freq=Freq*2; Works fine here.

stefan ·

It works sometimes, and others not. Because it's a bit dangerous. What you actually end up doing is changing the external value, which might lead to weird stuff 🙂

Eska ·

I see. To put this calculation in stage(0) was stupid anyway. Here is the corrected version:

polyin Freq;//in Hz polyin Level; polyin Samplerate; polyout Out;

float y; float x; float stp; float t; stage(0) { t=128/Samplerate; } stage(1) { hop(128) { stp = Freq*2.0 * t ; x=x+stp; // Compute 2*(x^2-1.0)^2-1.0 y=((x*x-1.0)*(x*x-1.0)*-2.0)+1.0; x=x-(x>=1.0)&2.0;

Out = (y-1.0) *Level; } }

Tom7777 ·

Welcome 🙂

Eska ·

Hi Tom777. One last change, I hope. Removed the DC-offset and added sin to ~saw modulation:

polyin Freq;//in Hz polyin Level; polyin Samplerate; polyout Out; polyin form;//0to1 float y; float x; float stp; float t; stage(0) { t=128/Samplerate; } stage(1) { hop(128) { stp = Freq*2.0 * t ; x=x+stp; // Compute 2*(x^2-1.0)^2-1.0 y=((x*x-1.0)*(x*x-1.0)*-2.0)+1.0; x=x-(x>=1.0)&(2.0 - form);

Out = y *Level; } }

Wrote something here? To have a post removed or your name hidden, write to [email protected].

Before your first post

A few rules keep this a friendly place. You agree to them once.

Shown next to what you post, here and in the app. It doesn’t have to be your real name: 3–24 lower-case letters, digits or _ (capitals become lower case, spaces become _).

    Then your post goes up straight away.

    Delete this reply?

    Open it in SynthMaker?

    It goes on the track you’re editing there, in place of that track’s sound, and into My sounds. Your other tracks stay as they are.

    Want to keep that track’s sound? Start a new song in SynthMaker first (Song › New song), then open this.

    Report this reply?

    Only the developer reads reports. The person isn’t told who reported them.

    What’s wrong with it?

    Block this person?

    You won’t see their posts and replies here any more. They aren’t told, and you can unblock them at any time.

    People you’ve blocked

    Their posts and replies are hidden from you. Unblock someone to see them again.

    The community rules

    A few rules keep this a friendly place. Everyone agrees to them once, before their first post.