thank you for the explanation.
i will test today evening.
one question:
how can i patch a cable with 0 channels?
modules that i used allow 1 to 16 channels.
any idea?
Agreed. I think this list should be restricted to modules that are able to treat individual polyphonic channels differently. In other words, modules that provide one or more of the following features
some form of control over the routing of individual channels. Examples include merge, split, rotate, clone, etc.
Individual controls (knobs, buttons, etc.) for multiple channels of a polyphonic input.
polyphonic inputs for modulation
Having polyphonic inputs and polyphonic outputs is not enough if all channels are treated equally.
The other criteria deals with whether a module is considered a utility or not. That is a very subjective slippery slope. For example, some VCOs have a huge number of polyphonic inputs that allow for amazing possibilities (like Venom VCO Lab for example) But is that considered a utility? Probably not. But is it useful to know which VCOs are fully polyphonic - absolutely.
What about fully polyphonic VCAs?
What about fully polyphonic envelope generators or function generators?
Where do you draw the line?
It might be worth reconsidering the utility constraint.
There aren’t many modules that provide for this. I am aware of three:
VCV Merge (context menu option)
Sapphire Moots (the purpose of the module)
Venom Bypass (Any output will have 0 channels if the corresponding input is unpatched)
There may be a few more.
I just realized it might be worthwhile adding the capability to my Venom Multi Split. Each output port already has a context menu to specify the number of channels from 1-16. I think I could add an option for 0 channels.
Hey everyone! Moots is definitely not polyphonic, nor would it make sense, because its sole purpose is to act as a “cable plugger/unplugger”. It acts exactly like you either have the cable connected or not, regardless of how many channels the cable carries.
More precisely, when one of the 5 controllers is enabled, the output cable has the same number of channels as the input cable, with the same voltages on each channel. When disabled, the output cable has zero channels. This is a very weird thing, but a quirk of VCV Rack is that it treats a zero-channel cable exactly the same as an unplugged cable.
The whole reason I created Moots is that there are cases where a 1-channel cable with a constant 0V signal is treated differently from no cable at all (or a 0-channel cable). The result is a way to automate connecting/disconnecting cables entirely.
Because there is only one answer about whether a cable should be connected or not, there is nothing sensible I can do with multiple channels on each gate/trigger input. Therefore, if the gate/trigger input is polyphonic, I sum the voltages to get a single voltage level that decides whether to connect or disconnect the cable.
Summing the voltages was based on early feedback here on the forum. The first version of Moots only used the first channel of the gate/trigger port and ignored all the others. The change was a welcome idea because it works the same for monophonic gate/trigger signals but enables more advanced usage with negligible overhead.
If you want to operate independently on the channels inside a polyphonic cable, chances are you want to either pass through an input signal or set it to zero, independently for each channel, but without changing how many channels the cable has. I think VCV VCA will do that for you. Send a polyphonic input cable and a polyphonic amplitude signal with the same number of channels, and you’re done!
I hope this explanation makes sense. It’s possible I’ve misunderstood the point, so please let me know if that’s the case!
I think my Sort module is a more direct implementation of this idea: A gate/logical polyphonic pattern on the “Select” input will selectively include or exclude entire channels from the “Data input” through to the output (not just muting them to 0v, but removing the channel itself).
These inputs:
Data
Sort
Select
x
2v
10v
y
3v
0v
z
1v
10v
Would output:
Output
z
x
However, it doesn’t have Moots’ “empty cable” behavior; if you pass through all zeroes to the Select input, it outputs a single channel of 0v- I looked at trying to mimic Moots behavior for that case, but it just didn’t quite fit in with the types of places where I wanted to use Sort. You could combine it with Moots though.
unfortunately it does not work with VCV VCA.
the number of polyphonic output channels are always like the input channels and only 0V.
so if i change one channel inside the poly input, the rest channels are zero and do not contain the notes from my sequence.
For the “Polyphonic meters/visualizers” category, Grande Clip can also be used to display and monitor two polyphonic logic signals. Leave the clip voltage at its default 5V value, and ignore the outputs.
It’s late here and I need a bit more time to read through and answer the many good points that have emerged.
But I was fascinated by Quad LFO (Surge XT) to allow for polyphonic modulation (see pic). So, by your criterion, this module should be added to the list? Despite this going beyond the original objective, I would concur that it would be really good to highlight diamonds like these.
Perhaps we should make up another (large font, bold) category (e.g. called Inputs for Polyphonic Modulation) for these modules.
So, here we come back full circle to attenuverters, originally brought in by @Loops, with inputs for polyphonic modulation in Offset (Bogaudio). Include?
When I were a lad, we called those “snakes”. They probably still do. I think there was one model with the brand name of “Anaconda”, which seemed appropriate.
@octex912 - Their main purpose was to simplify handling of many signals over a long distance, like from the stage to a mixer at the back of an auditorium, instead of running individual cables.
In the VCV application of polyphony the intention (according to my understanding) is more that you can process many related signals simultaneously (and, typically, identically) by a single poly-capable module, without mixing them down to a single mono channel or running them through several identical modules.
Thank you for thinking more about this! Based on your ideas, going forward I would suggest the following five defined criteria for inclusion, which would then also make up five main classes with respective sub-classes, where applicable.
I am just brainstorming, how does this taxonomy sound to everyone?
1.) ROUTING: Routing of individual polyphony channels (includes merge, split, rotate, clone etc. sub-categories)
2.) MAIN: Control over main input and/or output signals in individual polyphony channels (includes sub-categories for scale, offset, unison etc.)
3.) MODULATION: Processing of modulation input signals in individual polyphony channels (includes e.g. Quad LFO, Offset etc. modules; possibly sub-categories by module function)
4.) FIXED: Control over fixed voltage output signals in individual polyphony channels, i.e. modules that have no input signal ports (sub-categories could include buttons with only two states (on/off, 0/10V) and knobs with multiple or continuous CV-values)
5.) METER: Metering or visualization of individual polyphony channels (sub-categories could include graphical and text/number-based)
The word ‘utility’ can indeed mean a lot of things :-), and its origin here only stems from the tag in the library (which is not applied very systematically), so I would not be too concerned if we payed less attention to this term.
Well, at least Moots is listed as ‘Polyphonic’ in the library and does pass polyphonic signals. But I am also positive that you know best what is possible and what not, so no worries.
For me, I would like to clarify whether it is wrong to think of a polyphonic cable as a thick cable with up to 16 thin cables (channels) inside. In this way of thinking, couldn’t it be done in principle (not necessarily in Moots) to ‘unplug’ individual thin cables while keeping the thick cable plugged/intact?
No, the absence of a thin cable is different than a thin cable carrying 0V.
Think about a normalized connection, or default routing, where if you patch an input, it breaks the normal or default routing.
When you patch a cable that has 0 channels, it behaves as if the cable is not even there, and the normal connection remains in effect.
With VCV poly cables, it is not possible to do the same thing for individual channels within the poly cable.
I suppose you could remove a thin cable, but that would destroy the integrity of the channel number assignment of the remaining thin cables. For example, suppose you have a poly cable with 4 channels, each with a different value:
1234
ABCD
If you try to remove channel 3 like so
12 4
AB D
that collapses into a poly cable with only 3 channels
123
ABD
Such a module certainly could be created, but it is not what @karlderletzte is looking for.
This example explained it clearly to me, thank you, Dave! Thin cables fill the void of empty slots (no cables, not ‘zero’ cables) and thereby disturb the order (channel assignment).