On the fly digitizing audio from analog audio jack
Audio is not that high bandwidth, so is within the range of what a microcontroller can handle.

The quality level you want makes a large difference in the amount of data you have to handle.  If you just need to save and later replay voice, then 8 bit samples at 8 kHz is good enough.  If the 8 bit values are not constrained to be linear, then you can get better overall signal to noise ratio with the same amount of data.  This is what the phone company does.

At the other end is "Hi-Fi" audio, which is from 20 Hz to 20 kHz, usually at least 16 bits per sample (over 90 dB signal to noise ratio).  To digitize such audio, you sample much faster than the Nyquist limit, then apply digital filtering, then dessimation.  The reason you need digital filtering is that analog filtering can't be that accurate to have the very sharp drop off after 20 kHz you need in order to sample just a little faster than 40 kHz.

Let's say you do the worst case and end up with 16 bit samples at 44 kHz rate.  That's only 88 kB/s, or 5.3 MB/minute.  Any SD card can handle that data rate.  1 GB gives you over 3 hours of this Hi-Fi audio.

Of course if you just want the voice-quality audio, things are much easier, the data rates lower, and the storage requirements lower.  At 8 kB/s just 1 MB lasts over 2 minutes.  1 GB would hold nearly 1 1/2 days of audio.