First, the easier one (I hope).
How can I combine multiple channels into one for purposes of creating a single stream?
If the channels are all of the same format (eg. same sample rate), you can simply sum the samples from all the decoding channels (and clip the result). Depending on the number of channels you're mixing, you may want to reduce the level of the mix, so that it's not all clipped/distorted. Here's some example code...http://www.un4seen.com/forum/?board=1;action=display;threadid=610;start=msg3194#msg3194
I think once I get that done, I'm thinking I can use some routines from BASSENC to convert it to mp3 which shoutcast will need.
That should work, I guess, but you'll probably need to use the BASS_ENCODE_NOHEAD flag and pass the format details via the encoder command-line...http://www.un4seen.com/forum/?board=1;action=display;threadid=2476
If possible, it may be better to use the LAME_ENC.DLL though.
I've got my program connecting and making the initial handshake with the shoutcast server, but then comes the hard part. Do I just send a straight mp3 stream to the server?
Dunno, I've never tried