Without having ever used any of those parts, let me see if I can take a stab. Do you happen to have access to an oscope? If so you might want to check your signal before you start building anything.
Most likely your microphone/amp is outputting a wave that is centered around 0v, meaning you have + and - voltages. Think of a sin wave that fluctuates between -1v and 1v. In order for your micro to use this, you will need to add a DC offset such that you most negative voltage becomes slightly above 0v and your most positive voltage is slightly below the max that your micro can read (probably around 5v).
With out looking into your components in more, it is hard to tell you specifically what you need to do in order to get your DC offset, but maybe this will put you in the right direction.
Let's do some math:
16 tracks * 44 ksample/s *2 channels *16 bit = 22.528 Mbps
This is the minimum speed you need for the SPI interface, if you want to transmit all the data through a single serial port. Can be done, with an adequate clock, but you need a fast SD card (see here for the speed).
Then there is the microcontroller: you have to add 16 tracks and output them through a DAC, so you have 44*2 ksamples for each track, or
$$ 44 \cdot 10^{3} \cdot 2 \cdot 16 = 1408 \cdot 10^{3} $$
16-bit sums for every sample (probably with some scaling to avoid overflow) result in about 1.4 M operations/sec, that can be handled by a good 32-bit microcontroller. Probably a Cortex-M3, or better M4 (but M3 is probably better documented) can work for you.
I've just seen this which can be clocked up to 204 MHz, has 4 SPI interfaces, up to 40 MB/s, and has also a floating point unit that can help in the accumulation process (but may be too slow). You may also use the dual core structure to handle separately the processing and the output.
But for the DAC I think that you should go for an external converter, specifically designed for audio (which means 16 bit probably).
Update
It's not so clear how are you going to manage the 16 different tracks on the SD:
- what about pre-loading tracks on the internal memory of the MCU?
Check the I2S interface, which is a 4-wire serial protocol especially designed for audio applications.
Important question:
You said that you want also to record tracks and save them to the SD card: do you want to do that at the same time? You need the controller to encode the audio in WAV and store it, and the writing bandwith of the SD card is lower.
The looping feature WILL need some buffering memory (may also use the internal memory) because looping requires real time operation, and the SD card will introduce too much latency. You may need an external RAM, and you may also think about storing some data there to reduce delays.
Best Answer
The AVR microcontroller used on Arduinos is easily fast enough to do the audio mixing. The problem will instead be reading the data from SD. The SD protocol permits reading only in sector sizes (512 bytes on current cards), and you generally don't have much RAM to store the data in. At 22kHz 16bit mono audio, that corresponds to 11.6ms so you can probably permit joining the samples on a sector basis, but that still means reading 430 sectors per second over an SPI port that cannot do DMA. It is absolutely possible but may present a notable coding challenge. If your set of samples is fairly small and static, it could be better to load them into an SPI NOR flash which is more easily read.