Use an Arduino as an effects pedal?

On the input of an Arduino, I put an audio signal that has been amplified and offset (so that it now ranges from 0V to 5V oscillating around 2.5V). I want to make an effects pedal, so I want to change this waveform. This is my plan: Input > amplify > offset (this is where I am at right now) > ADC > change waveform > DAC > offset > amplify again > Ouput. How do program this? For example, lets say I wanted to create a phasing effect (I think thats what its called) where the same waveform is played twice, on slightly offset from the other. See link below.

The red will occur after the blue, so you need store the sampled waveform until it is time to play it back.

How do I do that?