Hi all,
I'm a music composition/technology major at the University of Wisconsin-Milwaukee, currently taking a course in PD, and also studying it in private lessons. I am wondering if anyone has any experience with matrix-type switching, i.e. a modular system in which any module can connect to any other module in any order. I'm especially concerned with expandability, in my current layout, if I have n objects, I have to have n-squared switches. Above a certain number, adding a module could become very time-consuming.
I'm curious about using an array with stored coordinates. I also need the ability for the system to allow recursive patching. I'd really appreciate it if anyone has any insight into this problem and could possibly shine some light towards a solution.
Thanks!
-Greg
On Mon, 23 Oct 2006, Greg Surges wrote:
I'm a music composition/technology major at the University of Wisconsin-Milwaukee, currently taking a course in PD, and also studying it in private lessons. I am wondering if anyone has any experience with matrix-type switching, i.e. a modular system in which any module can connect to any other module in any order.
Matrix-type switching doesn't allow "in any order", it's just a super-spigot that can handle all connections from M outlets to N outlets using a M by N grid of toggles.
I'm especially concerned with expandability, in my current layout, if I have n objects, I have to have n-squared switches. Above a certain number, adding a module could become very time-consuming.
The only way around that is to not include every possibility. Break down your matrix into smaller matrices according to which effect combinations are least likely.
I also need the ability for the system to allow recursive patching.
Recursively patching the DSP requires delay lines.
I'd really appreciate it if anyone has any insight into this problem and could possibly shine some light towards a solution.
Maybe if you shone some light towards a complete analysis of your problem...
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju | Freelance Digital Arts Engineer, Montréal QC Canada
Hi Greg,
I can't seem to find the original post for this, hope I'm not missing any important points!
On Mon, 23 Oct 2006, Greg Surges wrote:
I'm a music composition/technology major at the University of Wisconsin-Milwaukee, currently taking a course in PD, and also studying it in private lessons.
That's really interesting! Sara Kolster and I just lectured at UW earlier this year, and did a PD workshop at the Hotcakes Gallery. Who is teaching PD there now?
I am wondering if anyone has any experience with matrix-type switching, i.e. a modular system in which any module can connect to any other module in any order.
Like Frank Barknecht mentioned, the IEM matrix objects are one way to go. Otherwise, you could dynamically generate [send~] + [receive~] pairs via named abstractions.
I also need the ability for the system to allow recursive patching.
Recursive patching can really cause problems in PD, since it relies quite heavily on a specific order of operations to keep from getting into DSP loops. Using [send~] and [receive~] pairs is one way around this, since they automatically include a delay of one DSP block. But you still have problems of a depth-first order of operations, so that if you use oscillatorA to amplitude modulate oscillatorB (for example), and oscillatorB goes on to modify some parameter of osciallatorA again, you have to be very careful about where all these patches are depth-wise in relation to each other. If one is "less deep" (i.e. fewer subpatches/abstractions down) than the other, your feedback system will not work. The first amplitude modulation will not occur because the second modulation which starts the whole chain hasn't happened yet, resulting in a no signal situation which would not occur in the analog synthesis world AFAIK. I have not seen this issue addressed or documented very well (aside from the warnings about depth first message passing in Miller's examples), and I just recently ran into it myself which trying to make a supercomplex self-modulating synthesizer. Let me know if this does/doesn't make sense or apply to your work, and I'll try to clarify.
best, derek
On Mon, 23 Oct 2006 22:08:34 -0500 Greg Surges surgesg@ameritech.net wrote:
Hi all,
I'm a music composition/technology major at the University of Wisconsin-Milwaukee, currently taking a course in PD, and also studying it in private lessons. I am wondering if anyone has any experience with matrix-type switching, i.e. a modular system in which any module can connect to any other module in any order. I'm especially concerned with expandability, in my current layout, if I have n objects, I have to have n-squared switches. Above a certain number, adding a module could become very time-consuming.
Yeah, doing it the hard way with connections means you have to wire every permutation. Look at this example for a 4 to 4 matrix. Imagine how much fun an 8 to 8 or higher looks like.
The most extensible way probably involves sending [connect( messages since Pd GUI is itself very much the arbitary patcher you descibe.
I'm curious about using an array with stored coordinates. I also need the ability for the system to allow recursive patching. I'd really appreciate it if anyone has any insight into this problem and could possibly shine some light towards a solution.
Thanks!
-Greg
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Hallo, padawan12 hat gesagt: // padawan12 wrote:
Yeah, doing it the hard way with connections means you have to wire every permutation. Look at this example for a 4 to 4 matrix. Imagine how much fun an 8 to 8 or higher looks like.
The most extensible way probably involves sending [connect( messages since Pd GUI is itself very much the arbitary patcher you descibe.
Hint: This is much easier to do this with the iemmatrix objects. I use it in the PDX7 which allows all kinds of connections between the six FM operators.
Frank Barknecht _ ______footils.org_ __goto10.org__
On Wed, 25 Oct 2006, padawan12 wrote:
expandability, in my current layout, if I have n objects, I have to have n-squared switches. Above a certain number, adding a module could become very time-consuming.
Yeah, doing it the hard way with connections means you have to wire every permutation. Look at this example for a 4 to 4 matrix. Imagine how much fun an 8 to 8 or higher looks like.
If you have an abstraction for 4x4, you could make an abstraction for 8x8 quite easily, by using four 4x4 blocks. This also applies to any other sizes, recursively.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju | Freelance Digital Arts Engineer, Montréal QC Canada