Are there any tutorials on how to add an overdrive effect to real-time audio using C # and NAudio?

I am making an overdrive pedal for an electric guitar using C # and NAudio. So far, I have managed to output sound from the microphone input in real time, but now we need a way to reflash the sound.

+4
source share
1 answer

The best way to implement your own effects is to get sound in a 32-bit floating point, and then implement your own ISampleProvider interface. In the Read method, you read the requested number of samples from your source, execute your DSP, and then write them to the output buffer. Unfortunately, NAudio does not include the overdrive effect, but you can find the code to get started with musicdsp.org .

To see some examples of using NAudio to apply sound effects, see the .NET recorder (which can perform auto-tuning) and the Skype Voice Changer (which includes pitch changes). Both of these patterns precede the ISampleProvider interface, so they implement their own conversion from byte arrays to floating point patterns.

+3
source

All Articles