Conceptually it's pretty easy. Mixing is done by summation (analog mixers are built-around analog summing amplifiers). You just sum sample-by-sample and you have a mix.
However, you do have to scale-down the data before or after summing to prevent clipping. Most DSP is done in floating-point so you can scale-down after summing as long as the data sent to the DAC doesn't go over 0dBFS.
If the streams have different sample rates, you'll have to re-sample at least one stream.
I'm not sure if the Arduino is fast-enough to do this, and I'm almost certain that you can't sum 6-channels of floating-point data with the Arduino.