Has anyone here built a fuzz distortion? Seems like a relatively obscure/difficult thing to build, especially in Csound… Any help is appreciated
Fuzz distortion
I’m sure it could be done. Have you looked at the distortion opcodes in Csound? There are quite a few. Also, check out this waveshaping tutorial. Some waveshaping with a tanh function gives a pretty nice overdrive. Do you have a fuzz pedal you are trying to model?
I have been messing with the distort and distort1 opcodes, but not super pleased with my results thus far. I have not seen that tutorial, will check out right now, thanks!
I think you will get better results using your own transfer functions.
Those tutorials were very helpful, thanks!
I dont have a tutorial, but the one time I tried to make a multiband compressor in Csound, I got fuzz-like results when I pushed the compression way up and focused on mid-range bands. The extreme version of the effect, basically. Almost like brickwall limiting using dam
or similar.
For a typical overdrive style distortion, I made a REALLY simple tanh UDO wrapper, you can get it here if you’d like to check it out:
https://raw.githubusercontent.com/tgrey1/Flex-Cabbage/master/includes/udo/tanh.udo.csd
It basically takes audio in (mono or stereo version) and a k-rate “drive” setting that should be between 0 and 1. It adjusts pre and post gain levels feeding into tanh to keep a roughly “balanced” output level, but if you want to tweak it, you can adjust:
#define TANH_PRE_MIN #-3#
#define TANH_PRE_MAX #50#
#define TANH_POST_MIN #3#
#define TANH_POST_MAX #-27#
Another option I’m fond of is Steven Yi’s “tubewarmth” opcode, which is available here:
http://www.csounds.com/udo/displayOpcode.php?opcode_id=80