Hallo, hard off hat gesagt: // hard off wrote:
none of the libraries are very good general all-purpose toolkits though, in my opinion. i guess that's mainly because none of them have really been designed as general toolkits. there is heaps of good stuff in rjdj, but it's all for the phone, which has no pd GUI component.
Well, the RjDj patches (scenes) are written on a computer as well.
The focus on GUI-less objects so far is by design: I believe, that we need to have basic building blocks *without* GUI first (maybe you remember the list thread about a dsp or "tilde" library? That had an influence on the RjDj design). Later we can decorate any abstraction with GUIs, provided the basic block offer a standardized communication interface.
In RjDj the rightmost inlet in (most) abstractions is this interface: This inlet accepts tagged messages like "freq <num>" or "delay <num>" or "note <num> <num>". RjDjlib includes a handful of custom GUI elements which just are GOP wrappers around sliders, numbers etc. that automatically create these messages. For example you can create a [g_hsl freq 0 22050] to get a slider GUI, that will have a range of 0...22050 and outputs messages like "freq <value>" and can be set with "freq <val>" messages to its inlet.
The g_* abstractions in RjDj all can be chained:
[g_hsl pitch 0 127] | [g_hsl vel 0 127] | [g_hradio octave 4] | [mycoolsynthesiszer]
so GUIs can be built in a consistent way and they can even be reused in parts.
Having the GUI separate from the DSP abstraction also makes polyphony easy: You can use just one GUI to control many voices in a synth.
Frank Barknecht Do You RjDj.me? _ ______footils.org__