what's the best and most cpu efficient way to clip a signal in an analogue fashion, rather than getting nasty digital distortion?
On Tue, 2007-05-08 at 19:18 +0900, hard off wrote:
what's the best and most cpu efficient way to clip a signal in an analogue fashion, rather than getting nasty digital distortion?
Have you tried waveshaping? I.e. use your signal as an index to a function (usually stored in a table)? A good place to start would be a stored sigmoid, and then introduce a few small 'glitches' into it to taste.
Jamie
hard off wrote:
what's the best and most cpu efficient way to clip a signal in an analogue fashion, rather than getting nasty digital distortion?
I quite like [expr~ tanh($v1)] - but it isn't especially cpu efficient. To hear it in action, just about every sound in this has been through several [expr~ tanh($v1)] ::
http://www.archive.org/details/ClaudiusMaximus_-_Incidents_At_Sea
Otherwise, I think there are some theorems about waveshaping and the amount of oversampling necessary to avoid aliased frequencies and that nasty digital sound...
Claude Heiland-Allen wrote:
Otherwise, I think there are some theorems about waveshaping and the amount of oversampling necessary to avoid aliased frequencies and that nasty digital sound...
http://groups.google.co.uk/group/comp.dsp/msg/9576a7a248851937
hard off wrote:
what's the best and most cpu efficient way to clip a signal in an analogue fashion, rather than getting nasty digital distortion?
i have used the function x/abs(x+a) applied to the audio input, and it sounded quite ok. a controls the 'steepness' of the 'distortion-function', good values are between 0.1 and 0.8.
bis denn! martin