Use Non-Frames Version Previous Page Next Page
Signal Modifiers: Special Effects

distort1


  ar      distort1   asig[, kpregain][, kpostgain[, kshape1[, kshape2]]]


Description

Implementation of modified hyperbolic tangent distortion. distort1 can be used to generate wave shaping distortion based on a modification of the tanh function.


         exp(asig * (pregain + shape1)) - exp(asig*(pregain+shape2))

  aout = -----------------------------------------------------------

         exp(asig*pregain)              + exp(-asig*pregain)

Performance

asig - is the input signal.

kpregain – determines the amount of gain applied to the signal before waveshaping. A value of 1 gives slight distortion.

kpostgain – determines the amount of gain applied to the signal after waveshaping.

kshape1 – determines the shape of the positive part of the curve. A value of 0 gives a flat clip, small positive values give sloped shaping.

kshape2 – determines the shape of the negative part of the curve.

All arguments except asig, were made optional in Csound version 3.52.

Example


  gadist  init     0

  

          instr    1

  iamp    =        p4

  ifqc    =        cpspch(p5)

  asig    pluck    iamp, ifqc, ifqc, 0, 1

  gadist  =       gadist + asig

          endin

  

          instr    50

  kpre    init     p4

  kpost   init     p5

  kshap1  init     p6

  kshap2  init     p7

  aout    distort1 gadist, kpre, kpost, kshap1, kshap2

          outs     aout, aout

  gadist  =        0

          endin

  

  

  ;   Sta  Dur  Amp    Pitch

  i1  0.0  3.0  10000  6.00

  i1  0.5  2.5  10000  7.00

  i1  1.0  2.0  10000  7.07

  i1  1.5  1.5  10000  8.00

  

  ;   Sta  Dur  PreGain PostGain Shape1 Shape2

  i50 0    3    2       1        0      0

  e

Author

Hans Mikelson
December 1998 (New in Csound version 3.50)


Use Non-Frames Version Previous Page Next Page
Signal Modifiers: Special Effects