I think I mentioned before about using SDL. Right now it's cross-platform, handles multiple channels, and is probably as fast as you get with Perl (it's used for Perl games). I havn't seen an example of recording with it though, and it dosn't really handle all the various audio formats well. SDL::Mixer and SDL::Music
P.S. I just googled for "recording SDL" and found some interesting links.