does anyone know how to make a distortion?

Oct 6, 2006 at 1:03am

does anyone know how to make a distortion?

hey, sorry for another problem of mine… I’m just addicted to knowledge!
I was wondering if anyone out there knows how to make a distortion effect? A little look around has pinted me in the direction of [kink~] to generate a phase distorion. But I’m not at all sure how to go about creating a distortion using the kink object? Anyone know how this can be achieved?
Also, just wondering, does anyone know what kinda processes are used to make vintage sounding distortions? Max being very basic, I’m thinking it will be too easy to make a very digital sounding drive.
thanks very much
tom

#27998
Oct 6, 2006 at 2:26am

There’s overdrive~, and other objects like it. People spend a lot of
many to get vintage sounding distortions, and I imagine it’s not the
easiest task to emulate a cranked marshall amp or a vintage stomp
pedal. Doesn’t at all mean that you shouldn’t try!

Keith

On 10/5/06, register wrote:
>
> hey, sorry for another problem of mine… I’m just addicted to knowledge!
> I was wondering if anyone out there knows how to make a distortion effect? A little look around has pinted me in the direction of [kink~] to generate a phase distorion. But I’m not at all sure how to go about creating a distortion using the kink object? Anyone know how this can be achieved?
> Also, just wondering, does anyone know what kinda processes are used to make vintage sounding distortions? Max being very basic, I’m thinking it will be too easy to make a very digital sounding drive.
> thanks very much
> tom
>

#85430
Oct 6, 2006 at 3:12am

one obvious but often overlooked option is to actually use an analog
overdrive stomper
or preamp, which will have the virtue of not sounding like crap.
… The downside is that
you *might* need to use a DI box or reamp box to get your signal to
the right level, but i have
had some luck w/o having to use a DI/reamp box but routing other
devices through the signal
chain before hitting the dirt box (for example my delay box which
takes about any type signal and
puts out guitar level sig)… since i have half a dozen dirt boxes/
preamps/boosters sitting
in my closet that is an easier option for me…. pleasing analog
sounding squash hair dirt fuzz is easily
had if you just do it in the analog domain. It depends on what sonic
results you are ultimately after.

But , If there is a Max object that makes yo $400 guitbox sound like
it is ’53 tele
coming out a dimed out blackface Vibrolux, please let me know, you
can save me
a huge amount of cash and closet space. :-)

-kp–

On Oct 5, 2006, at 10:26 PM, keith manlove wrote:

> There’s overdrive~, and other objects like it. People spend a lot of
> many to get vintage sounding distortions, and I imagine it’s not the
> easiest task to emulate a cranked marshall amp or a vintage stomp
> pedal. Doesn’t at all mean that you shouldn’t try!
>
> Keith
>
> On 10/5/06, register wrote:
>>
>> hey, sorry for another problem of mine… I’m just addicted to
>> knowledge!
>> I was wondering if anyone out there knows how to make a distortion
>> effect? A little look around has pinted me in the direction of
>> [kink~] to generate a phase distorion. But I’m not at all sure
>> how to go about creating a distortion using the kink object?
>> Anyone know how this can be achieved?
>> Also, just wondering, does anyone know what kinda processes are
>> used to make vintage sounding distortions? Max being very basic,
>> I’m thinking it will be too easy to make a very digital sounding
>> drive.
>> thanks very much
>> tom
>>

#85431
Oct 6, 2006 at 3:38am

“which will have the virtue of not sounding like crap. “
… tell me about it! Overdrive is the clostest I’ve got, and it still sounds way too harsh and digital.
I have and love a copy of NI guitar rig 2, I think the distortion stomp boxes on it are very good. I was kinda hoping I could make something with their qualities, with a pretty low CPU usage (guitar rig is v.hungry)
I imagine it’s a case of some complex waveshaping and synthesis- subjects I’m both poor at.
If anyone’s had any success, or knows of any available patches, please let me know!
thanks!
tom

#85432
Oct 6, 2006 at 4:01am

I have two suggestions.

1

just play. don’t worry about theory. most of my successful
distortion algorithms come from different combinations of overdrive~
and extreme filtering (notch and peak). don’t be afraid to overdrive
twice, serially or in parallel. you can also try rectification
compression and crossover effects. even a little combing doesn’t
hurt beforehand.

my first inclination would be to put tall peaks in the spectrum,
around 200, 500 and a shorter wider in the 2k range. then distort the
piss out of it so that you’ve evened the spectrum back out.

2

have a look at the genx category of the percolate library.
http://www.maxobjects.com/?
v=objects&id_objet=148&requested=gen10&operateur=AND&id_plateforme=0

#85433
Oct 6, 2006 at 12:48pm

this arctan thing is cheaper than overdrive~

max v2;
#N vpatcher 100 100 691 584;
#P window setfont “Sans Serif” 9.;
#P flonum 164 95 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 72 201 32 196617 *~ 1;
#P newex 72 149 32 196617 *~ 1;
#P newex 72 173 35 196617 atan~;
#P newex 148 170 92 196617 expr 1./atan($f1);
#P inlet 72 95 15 0;
#P outlet 72 231 15 0;
#P connect 1 0 4 0;
#P connect 4 0 3 0;
#P connect 3 0 5 0;
#P connect 5 0 0 0;
#P connect 6 0 4 1;
#P connect 2 0 5 1;
#P connect 6 0 2 0;
#P pop;

#85434
Oct 6, 2006 at 2:19pm

lp.nn~ and lp.scamp~ are two powerful tools for distortion.

There is an example patch with Litter Power that demonstrates the use of scamp~ for very flexible phase distortion effects. I think I even posted it to the mail list not long ago.

Both objects are in Litter Pro. More information at < http://www.bek.no/~pcastine/Litter/>.

Best, Peter

#85435
Oct 6, 2006 at 2:35pm

cool, I think that has much more potential than overdrive. I used it to make this guitar amp sim patch, it’s a start.
thanks a lot for your help.
Here’s the patch, if anyone wants do develop it, please post it!
tom

#P window setfont “Sans Serif” 9.;
#P window linecount 3;
#P comment 696 156 100 196617 distortion amount (sounds best kept low);
#P user uslider 24 366 18 128 100 1 0 0;
#P window setfont “Fixedwidth Serif” 10.;
#P window linecount 1;
#P newex 24 539 43 1441802 * 0.01;
#P newex 24 570 68 1441802 expr 1-$f1;
#P window setfont “Sans Serif” 9.;
#P newex 153 601 27 196617 *~;
#P newex 119 601 27 196617 *~;
#P newex 190 222 41 196617 *~ 0.7;
#P newex 119 222 41 196617 *~ 0.7;
#P newex 119 317 41 196617 *~ 0.7;
#P newex 119 254 70 196617 overdrive~ 2;
#P newex 119 189 70 196617 overdrive~ 2;
#P user meter~ 210 646 290 659 50 0 168 0 103 103 103 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3;
#P user meter~ 129 521 209 534 50 0 168 0 103 103 103 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3;
#P user ezdac~ 119 685 163 718 0;
#P newex 190 188 70 196617 overdrive~ 2;
#P flonum 461 488 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 420 486 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 379 486 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 338 486 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 297 485 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 256 508 42 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont Helvetica 9.;
#P user filtergraph~ 215 338 256 128 21 9 20. 20000. 0.0625 16. 0 1 1 0 0 1 1;
#X frgb 245 75 255;
#X brgb 255 255 255;
#X rgb2 0 0 0;
#X rgb3 0 0 0;
#X rgb4 245 75 255;
#X rgb5 0 0 0;
#X rgb6 245 75 255;
#X rgb7 255 9 9;
#X linmarkers 6000. 12000. 18000.;
#X logmarkers 10. 100. 1000. 10000.;
#X nfilters 5;
#X setfilter 4 5 1 0 0 203.405899 3.372052 1.813734 0. 0. 0. 0. 0. 0.;
#X setfilter 3 1 0 0 0 16163.436523 1. 0.695823 0. 0. 0. 0. 0. 0.;
#X setfilter 2 5 1 1 0 1919.860229 0.070299 1.410539 0. 0. 0. 0. 0. 0.;
#X setfilter 1 5 1 1 0 3638.671387 11.820841 0.829032 0. 0. 0. 0. 0. 0.;
#X setfilter 0 2 1 0 0 106.430939 0.44044 0.666131 0. 0. 0. 0. 0. 0.;
#X done;
#P window setfont “Sans Serif” 9.;
#P newex 119 487 51 196617 cascade~;
#P user meter~ 26 127 106 140 50 0 168 0 103 103 103 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3;
#P user ezadc~ 119 71 163 104 0;
#P window setfont Helvetica 9.;
#P user filtergraph~ 866 315 256 128 21 9 20. 20000. 0.0625 16. 0 1 1 0 0 1 1;
#X frgb 170 170 170;
#X brgb 209 209 209;
#X rgb2 0 0 0;
#X rgb3 130 130 130;
#X rgb4 0 0 0;
#X rgb5 76 108 172;
#X rgb6 210 74 54;
#X rgb7 255 22 22;
#X linmarkers 6000. 12000. 18000.;
#X logmarkers 10. 100. 1000. 10000.;
#X nfilters 3;
#X setfilter 2 5 1 0 0 6198.088867 2.716106 0.800293 0. 0. 0. 0. 0. 0.;
#X setfilter 1 5 1 0 0 1096.865601 0.261492 0.990036 0. 0. 0. 0. 0. 0.;
#X setfilter 0 2 1 0 0 135.784576 0.403817 0.909706 0. 0. 0. 0. 0. 0.;
#X done;
#P window setfont “Sans Serif” 9.;
#P flonum 1112 481 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 1071 478 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 1030 478 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 989 478 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 948 477 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 907 500 42 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 622 435 51 196617 cascade~;
#P user meter~ 712 334 792 347 50 0 168 0 103 103 103 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3;
#P flonum 698 207 66 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 622 296 32 196617 *~ 1;
#P newex 622 244 32 196617 *~ 1;
#P newex 622 268 35 196617 atan~;
#P newex 698 265 92 196617 expr 1./atan($f1);
#P window linecount 3;
#P comment 8 322 100 196617 distortion mix (sounds best kept low);
#P connect 38 0 37 0;
#P connect 37 0 36 0;
#P connect 15 0 16 0;
#P connect 15 0 29 0;
#P connect 29 0 32 0;
#P connect 32 0 30 0;
#P fasten 33 0 30 0 195 246 124 246;
#P connect 30 0 31 0;
#P connect 31 0 17 0;
#P connect 17 0 34 0;
#P fasten 35 0 26 0 158 628 124 628;
#P connect 34 0 26 0;
#P connect 17 0 27 0;
#P fasten 36 0 34 1 29 595 141 595;
#P fasten 7 0 35 0 627 575 158 575;
#P connect 35 0 26 1;
#P fasten 34 0 26 1 124 648 158 648;
#P fasten 18 0 17 1 220 480 165 480;
#P fasten 37 0 35 1 29 562 175 562;
#P fasten 15 0 25 0 124 170 195 170;
#P connect 25 0 33 0;
#P connect 35 0 28 0;
#P connect 34 0 28 0;
#P connect 18 1 19 0;
#P connect 18 2 20 0;
#P connect 18 3 21 0;
#P connect 18 4 22 0;
#P connect 18 5 23 0;
#P connect 18 6 24 0;
#P connect 15 0 3 0;
#P connect 3 0 2 0;
#P connect 2 0 4 0;
#P connect 4 0 7 0;
#P connect 5 0 3 1;
#P connect 1 0 4 1;
#P fasten 14 0 7 1 871 450 668 450;
#P connect 5 0 1 0;
#P connect 4 0 6 0;
#P connect 14 1 8 0;
#P connect 14 2 9 0;
#P connect 14 3 10 0;
#P connect 14 4 11 0;
#P connect 14 5 12 0;
#P connect 14 6 13 0;
#P window clipboard copycount 40;

#85436
Oct 6, 2006 at 8:23pm

register wrote:
> Max being very basic, I’m thinking it will be too easy to make a very
> digital sounding drive.

There was some discussion on the topic recently on the list, search the
archive. My favorite is lookup~ in combination with chebychev
polynomials. There is an example in the examples folder (you did look
there didn’t you ;-?)

Though to make it really sound nice, you need to go deeper in it. It
works wonder with defined sine waves, but with real signals its way more
complicated, I am still working on a way to treat it better.

Main problem for me, the range is limited from -1. to 1…
You have to prepare the signal carefully…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#85437

You must be logged in to reply to this topic.