[PD] [zyx-patchbay] graphical patchbay/router for control and signal connections.

João Pais jmmmpais at googlemail.com
Fri Jan 13 11:09:30 CET 2012


another pitfall, after selecting a receive-send pair, if you click another  
receive, the last selected send will still be active, and the connection  
will be made with only 1 click. Or maybe this is more clear:
- create "in receive foo1", "out send bar", "in receive foo2"
- make a connection by clicking foo1 and bar
- if you now press foo2, bar will connect with it.
A way to prevent unwanted connections would be to force the left->right  
connection order.

Wouldn't it make more sense to put the sends in the left side, and the  
receives in the right side? (unless for arabic or hebrew speakers)

Nice patch, I've done a similar one to manage jack connections in my  
ardourjack-gui, but without the nice data-s gui with cables and dynamic  
patching, just a dynamic list of sends/receives. The graphical part would  
be the next step, but for now I'm not using ubuntu that often.
The [ardourjack-gui] is packed only with 0.43-ext, but a version is here.  
You can use it to both control ardour from pd, and to create/delete jack  
connections. It only works with linux, as it relies on [ggee/shell] (last  
time I tried it in macos it didn't work).


> hi folks,
> it's the start of a new year and i've had some free time to work on pd
> stuff after a long break.
> wanting to get myself back in the data structures head-space, i
> developed this little project, a graphical patchbay/router for control
> and signal connections.
> the premise is pretty simple, the interface provides a symbolic
> representation of an object pool which is created dynamically - when you
> make connections through the interface those same connections are
> created in the object pool.
> the main patch is 'zyx-patchbay.pd', which has a GOP container holding
> the data-structure, a subpatch holding the object pool and a subpatch
> for the logic.
> the secondary patches are 'zyx-pbi.pd', 'zyx-pbo.pd', 'zyx-pbi~.pd' and
> 'zyx-pbo~.pd', which act as wrappers to objects (typically
> s/r/s~/r~/throw~/catch~) and dynamically insert themselves into the
> patchbay object pool. there is an example patch for these objects at
> 'patchbay-test.pd'.
> i use the patchbay to provide a single patching interface for
> connections that may be scattered over many patches or in hard to reach
> places, for example to quickly reroute a signal generator to an effect
> and back to the dac. this has been particularly useful on the
> constricted screen space of my n900 phone, which also tends to be
> painful to draw connections manually.
> some features:
> * purepd (tested in 0.43 and 0.42-6)
> * colour coded object handles
> * multiple object handles can be selected to connect to another object
> * objects handles can be dragged around and rearranged for better
> readability (drag the tip of a connection wire or use edit mode to move
> object handles within data structure window).
> * state saving between saves - the object pool and connections are
> maintained and it's still possible to add more object handles.
> * full $0 namespace handling in case someone wants to hack it into a
> multiple instance GOP.
> some pitfalls:
> * currently no safeguards for bad connections (signal to wire etc).
> * arbitrary width of object handle - this is set to 50px, i've begun
> experimenting with allowing the width to be dragged but but it will
> require more tinkering to get right.
> * fixed GOP window size for patchbay interface - a trivial change but
> i've not needed to alter this yet and dynamically altering GOP can have
> some undesired consequences.
> i know that there are folks on this list that would consider this patch
> set blasphemous for using dynamic construction and abstracted interface
> to obscure workflow, but it fulfills my requirements and hopefully
> others will find it useful. if anything it's another example of
> data-structures that people can learn from or tear apart.
> i'm going to use the prefix 'zyx' for abstractions, so there aren't any
> namespace clashes, if you want to edit and release your own version
> please use a different prefix.
> i welcome any questions, comments or feature requests!
> cheers,
> dmotd

Friedenstr. 58
10249 Berlin (Deutschland)
Tel +49 30 42020091 | Mob +49 162 6843570
Studio +49 30 69509190
jmmmpais at googlemail.com | skype: jmmmpjmmmp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ardourjack-gui.zip
Type: application/zip
Size: 150845 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20120113/c3da7ac3/attachment-0001.zip>

More information about the Pd-list mailing list