Thanks to help from Randy.
Ive managed to get EigenD (the Eigenharp software) talking natively to Kaivo/Aalto using the T3D OSC protocol of the Soundplane.
The expression in this OSC mode is amazing, I imagine, it must be fantastic on a Soundplane too.
Quick demo here: http://youtu.be/wyX1HFCYHfs
Hope to add more features from T3D in the future!
Thanks again Randy for your help, documentation and having your code open source and most of all for producing software instruments that really add something new!
I've added some more info on the g+ eigenharp community that may be of interest.
This is really super interesting work. Thanks for giving some validation to the open-source approach! I look forward to helping you do better Eigenharp -> Madrona software integration on down the line. And to seeing more of you playing!
btw... i mentioned it would be useful to have an input into sustain level on the envelopes.
I think perhaps I should have said, one of the reason for this, is existing patches always end up very 'quiet', and have to be modified...
the reason for this seems to be they use x Vel on the envelopes, but there is no velocity from t3d (though of course Kaivo/aalto may be calculating one?)
or have I missed something?
so I thought perhaps route Z to sustain level (currently ive just been mapping to where ever the envelope goes - which is ok, as this means the user controls envelope with pressure)
but perhaps it might be nice to introduce dz (as velocity), and then have a velocity input on envelopes,
or perhaps even better just a multiplier input, could be nice with the LFO/Seq ... and even used between env 1 / 2 and you could remove the x Env1.. as this could be handled by the more generic solution.
anyway just ideas...
BTW, agent has been released, to hopefully a few will be playing with it this weekend :o)
There may be a problem with the xvel switch in Aalto / Kaivo and t3d right now. I will check this out very soon.
Ideally it would be possible to either add the envelope to the pressure input, or multiply it. A general purpose multiplier would be nice too, or at least one on the gate.
Chiming in here ... Randy, do you think there would be a possibility to totally bypass the OSC transport and to go straight over VST/AU host parameters. They give full floating point data access. I still have to try the OSC mode out, but I think this could work by simply creating a repeated number of host automation parameters: x1, y1, z1, key1, x2, y2, z2, key2, ...
This would allow any host to directly provide data to Kaivo and Aalto in high resolution and without having any networking involved. It would also make it very easy to have multiple instances of your plugin running on the same machine for different purposes.
Chiming in here ... Randy, do you think there would be a possibility to totally bypass the OSC transport and to go straight over VST/AU host parameters.
That should work fine if the host environment supports it.
That's why I'm asking, if you add support for that in Aalto/Kaivo, I can add direct support for it to the EigenD software and other hosts like Bidule or Max would have access to it too for people that want to tinker without having to go over OSC.
OK, I see what you mean now. I guess it should be possible to add host automation parameters that control the KEY module outputs. I can see how this would be useful.
I wonder what to do when MIDI / OSC data does come in then. Just add it, possibly? Or would this be a separate mode that the synths go into? There are some other details like this and I'll think about them as I am fixing some of the other things I have to work on.
Seems like summing the inputs would be the most flexible approach. This would allow users to mix and match their inputs or even have them influence each-other.