Version 1.0.0 did not implement any functionality based on its "Drive" socket input. This new version implements "Drive" along with an output gain compensation stage that keeps the output level relatively uniform across the whole drive range.
I really like the way this effect is starting to open up. It started out as a very "dumb" basic distortion and with the implementation of Drive it suddenly has some real character and an interesting tonal range. Next up will be a new Socket to control the slope of the gain in the clipping region (it is hard coded at 32:1 right now), and then maybe I'll see if I can't add a feature to soften the transition knee a little. It would be pretty cool to have a knob you could turn to go from a hard knee to a very rounded one and everything in between. It would also be easy to add an asymmetrical clipping option; right now it clips both the positive and negative going wave.
The attached patch file (.c1p) has been slightly updated to set a starting drive level of 70% (Setting the drive level all the way to 100% will clip the signal so much that it disappears).
- Code: Select all
''=======================================================================
'' TITLE: COYOTE1_MODULE_Distortion.spin
''
'' DESCRIPTION:
''
'' A basic "knee" distortion which implements a transfer gain change from 1:1
'' to 32:1 at a selectable "drive" threshold. The distortion is applied to
'' both the positive and negative sides of the signal. An output gain
'' compensation stage boosts the output signal to maintain a relatively
'' uniform output level across the drive range.
''
'' INPUTS:
'' IN: Audio In
'' DRIVE: Sets the distortion knee point. Higher settings produce more
'' more crunch.
'' +BYPASS: Effect bypass control
''
'' OUTPUTS:
'' OUT: Audio Out
'' +ON: Set when effect is active (i.e. not bypassed).
