Send / Receive patch similar to Pd

a "send" and "receive" node to pass data without the need of a wire would be very useful when working with huge and messy compositions... Like the ones we have in Pd, Jitter or vvvv ....

cwright's picture
I can see some utility

I can see some utility, but I can also imagine it getting abused into the ground...

smokris's picture
Useful --- spec suggestion

Franz is definitely right about this being useful on large patches --- I've felt the need for it on several occasions (particularly our PURE installation).

I think it needs the following to be optimally useful:

  1. Custom rendering of the patch itself (in the composition window) --- maybe send/receive pairs each have their own distinct patch background color? or a HUGE number or short title or something you can clearly see when zoomed out.

  2. A plus/minus inspector button to increase/decrease the number of inputs (outputs in the corresponding module increase/decrease correspondingly)

  3. One input, multiple output patches.

  4. Virtual inputs/outputs.

cwright's picture
Sounds good

I'm not sure how possible the patch rendering changes will be, but something useful should be possible. Point 3 seems a bit superfluous: you can already pull multiple outputs out of a single output...

Can you expound on 4? What do you mean?

smokris's picture

regarding point 3 --- i'm thinking a single "send patch" would be able to connect to multiple "receive patches" (possibly in different macro patches). this is not the same as dragging multiple output cables.

point 4 --- check out QCVirtualPort and the "Input Splitter" patch.

cwright's picture
Good point

Didn't think of macro usage. In that case, send/receive makes way more sense.

Is the purpose of the input splitter to do a kind of Sample-and-Hold operation? I've noticed some shearing when using multiple output cables in complex compositions I've made; is the Input Splitter intended to remedy that effect or address something else I'm not grasping?

smokris's picture
Input Splitter

Let's move this to the forum ---

franz's picture
point 3:

yes, /send/ patch should be able to "publish" its value to any /receive/ patch, may it be deep into some macro...

tobyspark's picture
++ can act as "global variable" as well as patch clarity

to paint it slightly over the top, anybody who'se done large stuff in max etc and then looked at qc has flagged the lack of this in their first breath.

the other main use i've wanted it for is for setting global variables. how annoying is it to have to patch some constants through your whole world of nested macros.


smokris's picture
SpookySendPatch / SpookyReceivePatch

I vote for naming it SpookySendPatch / SpookyReceivePatch, referencing the quantum physics concept (and reinforcing that this violates the standard notion of cables directly causing action).

franz's picture
i go for it

... and vote the same. Spooky-S / Spooky-R

smokris's picture

This could also provide a convenient mechanism for allowing feedback within a composition.

franz's picture
feedback: Frame Delay node

Yes, this would be interesting for feedbacking data. However, to keep things clear, i would personnaly prefer a "Frame Delay" patch, that would allow to feedback any data type, since data could be stored 1 frame and then sent back up in the graph. VVVV uses this mechanism, and it is working as a charm....

cwright's picture
Image Buffer

Ok, this seems to behave almost exactly like the Image Buffer concept. Perhaps these two ideas should be merged into one generic patch of some sort?

cwright's picture
Spooky Patch 0.1

Released today. Please let me know if this satisfies your needs :)

franz's picture

Hey Chris, i forgot to say: Thank you !