Monitoring inputs and copy the outputs (without the monitors)

For relatively easy routing audio between applications in OSX, I want to make an audio router in SuperCollider that does the following:

  • Monitors the input channels 2 and 3
  • Duplicates the output channels 0 and 1 to 2 and 3 without duplicating the monitors.

In principle, I want what comes to input channels 2 and 3 to be captured (by and listened to, while every sound that the user generates in the local server is duplicated in the output channels 2 and 3. Any ideas?

So it would be, in order:

  1. Copy output buses 0-1 to output buses 2-3. (Doing this first takes care of “not duplicating the monitors”.)
  2. Copy input buses 2-3 to output buses 0-1.

Note in this scheme that input buses 2-3 are different from output buses 2-3 – I don’t see how to do it if they’re the same, you would need a third stereo pair to save the mic signal before overwriting. But I’m not sure this would make sense anyway.

SynthDef(\route, {,, 2));,[2, 3]));

This should keep the operations in order… put it at the end of the chain and see how it goes…?


1 Like

Thanks! That worked smoothly. I was trying,,2)) for copying the output 1 and 2 to 3 and 4 but this was duplicating the monitoring signals.