DSPRelated.com
Forums

bass distortion

Started by Luis Fernando November 17, 2004
hello

i'm trying to implement a distortion for guitar with waveshapes like:
f(x) = ((1+A)*x)/(1+A*fabs(x))
or
f(x) = x*x*x/3;

the problem i'm having is that, for low frequencies (bass), the sound
is strange... it tends too much for treble (not exactly treble, but
more likely a medium frequency) and doesn't sound good... at the same
time, I can't cut those frequencies because, since it isn't "too
treble", I'd lose interesting frequencies when playing other strings

anyone has some suggestion on how to "fix" that?

Thanks in advance and sorry my English
Hi Luis,

these two types of distortion will create only odd harmonics which 
might or might not be what you want. Try using a distortion that 
creates odd *and* even harmonics for comparison, maybe this is more to 
your liking.

Also, if you use Chebychev polynomials as your nonlinear transfer 
function you can create exactly those harmonics that you want. For 
example, the second-order Cheby poly f(x) = 2x^2-1 creates the second 
harmonic, the third-order poly f(x) = 4x^3-3x the third, the 
fourth-order poly f(x) = 8x^4-8x^2+1 the fourth and so on. That way you 
have better control over both the bandwidth (important for aliasing 
considerations) and the harmonic content (important for the sound) of 
your output signal.

Hope this helps
-- 
Stephan M. Bernsee
http://www.dspdimension.com