Jack have you ever wanted to take the audio output of one piece of software and send it to another? How about taking the output of that same program and send it to two others, then record the result in the first program? If so, JACK may be what you've been looking for.
JACK is a low-latency audio server, written for POSIX conformant operating systems such as GNU/Linux and Apple's OS X. It can connect a number of different applications to an audio device, as well as allowing them to share audio between themselves. Its clients can run in their own processes (ie. as normal applications), or can they can run within the JACK server (ie. as a "plugin").
JACK was designed from the ground up for professional audio work, and its design focuses on two key areas: synchronous execution of all clients, and low latency operation. More background information is available.
[Source - puredyne.goto10.org]
Have you ever tried after running one audio program to run a second may be different audio program, only to find that an error message is flagged indicating the audio server is in use by the first program.
Now provided your audio program is equipped with a suitable jack-plugin you can with a Jack server run multiple audio applications simultaneously and direct the audio output and input for that matter to any other equally equipped application.
Think of it without the need to use a separate audio mixer you could mix all your audio samples, music sets, drum machines and sequencers, on the same PC or laptop.