I have a system set up where any number of sound sources can be routed into a few different buses, i.e. throw~ 0-bus, throw~ 1-bus, throw~ 2-bus, throw~ 3-bus.
I also have an effects chain that can pull audio from any of the buses (except for the master bus, which could cause serious feedback loop problems) and then output to any bus.
Because send~ is one-to-many and throw~ is many-to-one, and I want many-to-many, I have a subpatch that does this for each bus N:
[catch~ N-bus]
|
[send~ N-bus-s]
So, that way, I can have anything write to any bus as well as read from any bus.
The 3-bus acts as the master bus - anything thrown to it will be output via a subpatch that contains a [r~ 3-bus-s] connected to a [dac~].
There's a problem: If i have sound source S connected to the master bus, and if I then have the effects chain receiving a signal from bus B, and then have source S throw to bus B while remaining connected to the master bus as well, I get a comb filter, where the signal going from S through an empty effects chain to the master bus is added 64 samples later to the signal going straight from S to the master bus.
I want a solution that retains all the flexibility in routing of signals. Am I asking the impossible? I think the [throw~ 3-bus] from the end of the effects chain is the problem, because it then has to go through the [catch~ 3-bus]-[send~ 3-bus-s] before it is finally picked up by the [r~ 3-bus-s]-[dac~].
I guess I could just try to an add an artificial latency to the master bus... I thought I tried that, though, and it didn't work.
Thanks a million!