Judging by the scarcity of mentions here, I’m guessing hardly anyone actually uses NdefMixer, the gui that’s supposed be “Ndef gui central”, but still I didn’t expect it to die so easily:
Ndef(\one, { arg amp = 0.3, freq1 = 333; amp * SinOsc.ar(freq1) });
Ndef(\two, { arg amp = 0.3, freq2 = 777; amp * SinOsc.ar(freq2) });
Ndef(\themix, Ndef(\one))
Ndef(\themix)[1] = Ndef(\two)
If you mix Ndefs like this, the plain Ndef(\themix).edit
isn’t very useful, because none of the “sub-ndefs” show up, i.e. you have a Ndef with zero parameters or “routes” shown.
So I thought that rather than opening each of Ndef(\one).edit
etc., or put them in a custom view myself, the panelized version of all Ndefs might be useful for something simple as the above, so I tried:
NdefMixer(s)
In that I can click on the “ed” button for one the “sub-ndefs” and it opens up its details on the right, which is nice and promising, but it also throws an error an becomes unresponsive at the same time, meaning that further clicks on other “ed” buttons do absolutely nothing.
-> a NdefMixer
ERROR: Message 'asSpec' not understood.
Perhaps you misspelled 'addSpec', or meant to call 'asSpec' on another receiver?
RECEIVER:
Instance of NodeProxy { (0000018291AACDB8, gc=0C, fmt=00, flg=00, set=04)
Any ideas how to fix that?
Or can someone suggest a more useable alternative approach that doesn’t involve coding my own gui? And by this I mean still using multiple Ndefs. It did occur to me to pull everything into one Ndef with \mix
roles, which with the addition of my own index-based control name mangler makes it possible to have the kitchen sink in one Ndef with no param name conflicts whatsoever, but there are usability limits to that approach. (For instance, Ndef loves to restart the whole array on xset
xfades. And the more obvious cognitive one is that one has to deal with slot numbers instead of names if everything goes in one Ndef.) Basically, I’m asking if there’s a useable multi-ndef gui in existence or if I’m missing some basic tweaks in my approach to NdefMixer.