30/6/10

Reverb Effect

My first contact with the digital audio, a work done during my academic studies. Basically it was to implement the audio processing illustrated below.



If we study this scheme can be seen that the stereo input signal is converted to mono and that there isn't any output branch. That's because the output is a linear combination of the different nodes of the scheme, each of them delayed a number of samples.

Left channel output
float outputL = null;
outputL = scale_factor * NODE1[266];
outputL += scale_factor * NODE1[2974];
outputL -= scale_factor * NODE2[1913];
outputL += scale_factor * NODE3[1996];
outputL -= scale_factor * NODE4[1990];
outputL -= scale_factor * NODE4[187];
outputL -=
scale_factor * NODE5[1066];

Right channel output
float outputR = null;
outputR = scale_factor * NODE6[353];
outputR += scale_factor * NODE6[3627];
outputR -= scale_factor * NODE4[1228];
outputR += scale_factor * NODE5[2673];
outputR -= scale_factor * NODE1[2111];
outputR -= scale_factor * NODE2[335];
outputR -= scale_factor * NODE3[121];


Listening the code


All this stuff has no sense without any actual implementation in reality.

Here you can listen a piece of an original composition, without the effect applied.


And finally here is the same piece of song with the reverb applied. Sometimes you hear a very annoying background noise, but to be my first effect (about year 2003) I am satisfied.


You can download source code an read more about here.





27/6/10

26/6/10

Starting whatever

For some time is rounding my head the idea of having a blog in which to go about all the things that I look interesting related to the world of the audio programming. Now, finally, I'm deeping into audio programming and would like to share with all of you.

Enjoy!