SynthMaker

Hard distortions, any ideas?

Archive · 2006 9 old posts

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

jobro ·

I'm working on a plugin aimed to do some audio damage, so I was wondering: What is the best way to create a really hard digital distortion?

oddson ·

Distortion is a big subject.

A search of the forum will yield a fair bit of results

Angstrom has a neat idea here:

simple distortion

angstrom ·

tanh is a pleasant distortion, sine is just for siliness, a basic clip is what I would call a 'hard' distortion

sambean ·

There's always my Waveshaper You can get as nasty as you wish with that..

Remember to get the latest version (29 I think)

Sam

Kingston ·

for the simplest money can buy,

you could experiment with y=x-a*x^n

where 'a' is your saturation/distortion amount and 'n' is the shape. in SM you write x^4 as x*x*x*x, for example.

several of these in series and one can get pretty damn flexible (and efficient) with the waveshapes.

For those more serious about their shapers, a filtered version of a*x^n is recommended. The filter choice is yours obviously. The shaper is thus no longer what we call "memoryless", and nearly infinite flexibility is allowed, by good parametrisation and choice of co-efficients and/or order of the shaper.

Oversampling is highly recommended for anything above 2nd order.

Let's go one more level up... Asymmetry. Process each side of the signal with different shaper (making sure the zeros meet). One could even introduce asymmetry at arbitrary points of the signal.

Serialisation and parallelisation of these blocks has been the building ground for stompbox distortion designers for more than 50 years now. 😉

There are no rules. You do what sounds good.

jobro ·

Ok I'm stuck in the recent example. Here is my code, and it generates an error that I can't pin down at the last order:

Can anyone help me here?

monoout y; monoin x; monoin a; monoin n;

y=x-a*x^n;

cAPSLOCK ·

you gotta do power with multiplication. x^4 is x*x*x*x

Maybe a loop could be used to get there dynamically.

cAPSLOCK ·

Also it is possible to do this with regular SM math modules easily.

stefan ·

The code component does not support power.

However, there's something on the wiki: Fast Power Approximation

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.