[PD] Preset management for Pd Vanilla

Ico Bukvic ico at vt.edu
Sun Nov 12 05:37:31 CET 2023


I encourage Miller and the vanilla community to explore pd-l2ork's
preset_hub and preset_node (see x_preset.c). It will require pd to adopt
keeping glist consistent across various operations (cut/copy/undo/redo
etc.). Once done, it allows for presetting of individual objects through
various contexts that are both embeddable in the patch or can be saved into
a file. Most importantly, this mechanism is able to distinguish between
multiple instances of the same abstraction.

Best,

Ico

-- 
Ivica Ico Bukvic, D.M.A.
Director, Creativity + Innovation
Director, Human-Centered Design iPhD
Institute for Creativity, Arts, and Technology

Virginia Tech
Creative Technologies in Music
School of Performing Arts – 0141
Blacksburg, VA 24061
(540) 231-6139
ico at vt.edu

ci.icat.vt.edu
l2ork.icat.vt.edu
ico.bukvic.net



On Sat, Nov 11, 2023 at 7:58 PM Alexandre Torres Porres <porres at gmail.com>
wrote:

>
>
> Em sáb., 11 de nov. de 2023 às 16:11, Alexandre Torres Porres <
> porres at gmail.com> escreveu:
>
>> Or yet a new functionality for [pdcontrol] if not in [send] or a whole
>> new object
>>
>
> A "retrieve" method to [value] would actually make sense.
>
> Anyway, I'm giving ideas and most probably most of you don't really know
> about my preset system in ELSE in detail. The key element is [savestate],
> which saves the data in a patch, which are values and receive destinations.
> So I'm not thinking of another object for preset management, just using
> this existing one for that, as a side product. The data is saved in a
> [text] object, which is the best plase to store such a thing and it's the
> 2nd key element per se.
>
> The "retrieve" function is to "grab" the data from objects connected or
> bound to existing "receive" objects/symbols. This makes things much easier
> and I hope things are clearer.
>
> [value] seems now like a good candidate for this functionality. It would
> require the injection of a lot of code for this, but maybe that's ok, not
> sure if this is a good reason to create a whole new object. And it fits
> into the idea of [value], which can already send a value to another object,
> so why can't it also 'grab'/'retrieve'?
>
> And also, the external abstraction that I mentioned could also be part of
> the 'extra' library that comes with the Pd distribution, which already has
> some abstractions anyway. While we're at it, I was already hoping to
> include yet another abstraction there, a biquad coefficient calculator for
> the [biquad~] object.
>
> cheers
>
>
>>
>> On Sat, 11 Nov 2023 at 16:08 Alexandre Torres Porres <porres at gmail.com>
>> wrote:
>>
>>> Else’s has morphing, interpolation, etc and is an abstraction that uses
>>> [savestate] and [text] mainly.
>>>
>>> It also relies on an external, [retrieve], similar to [grab] from MAX.
>>> This one gets data from objects connected to named [receive] objects. One
>>> could make a vanilla version without it, but it’d be much more complicated.
>>> Or we could have a new [grab] / [retrieve] like object in Vanilla, and I
>>> could build a Vanilla external abstraction and bring my system to vanilla
>>> like that.
>>>
>>> We maybe don’t even need a new object and could have something like an
>>> extra functionality in [send] where it can get things back. I think some
>>> net objects work like that and it would hopefully not be too weird or
>>> crazy, and maybe people would likewise abuse this for other use cases.
>>>
>>> Seems like a very not much intrusive addition that opens the door for
>>> this. What do you people think?
>>>
>>> Cheers
>>>
>>> On Sat, 11 Nov 2023 at 08:39 KHM t.hartmann <t.hartmann at khm.de> wrote:
>>>
>>>> +1 as well, for a native preset system.
>>>> Best would be the possibility for interpolation between values in
>>>> various ways, from jump to customisable interpolation curves.
>>>>
>>>>
>>>>
>>>> __________________________________________
>>>>
>>>> Dr. Tobias Hartmann
>>>> Künstlerisch-Wissenschaftlicher Mitarbeiter / Assistant Professor
>>>>
>>>> exMedia - Sound
>>>>
>>>> Kunsthochschule für Medien Köln (KHM)
>>>> Academy of Media Arts Cologne
>>>> Peter-Welter-Platz 2
>>>> 50676 Köln
>>>>
>>>> t.hartmann at khm.de
>>>> +49 (0) 221 20189 228
>>>>
>>>> www.khm.de
>>>> www.exmedia.khm.de
>>>>
>>>> www.hartmanntobias.com
>>>>
>>>> Am 11.11.2023 um 12:02 schrieb hans w. koch <hansw.koch at gmail.com>:
>>>>
>>>> +1 for a native preset system. thats the one thing i miss thinking
>>>> back of the times i used max/msp (particularily the morphing feature).
>>>>
>>>>
>>>> advantage over else: it can then be used in PdParty e.g. :-)
>>>>
>>>> cheers
>>>> hans
>>>>
>>>> Am 11.11.2023 um 06:47 schrieb Alexandre Torres Porres <
>>>> porres at gmail.com>:
>>>>
>>>>
>>>> I'm revisiting this. I'm proud of my presets system in ELSE but I think
>>>> Pd needs something natively. What do you people think and say?
>>>>
>>>>
>>>> cheers
>>>>
>>>>
>>>> Em sex., 22 de jan. de 2021 às 14:27, Alexandre Torres Porres <
>>>> porres at gmail.com> escreveu:
>>>>
>>>> Em sex., 22 de jan. de 2021 às 01:35, Alexandre Torres Porres <
>>>> porres at gmail.com> escreveu:
>>>>
>>>> There's the "morphing" or "interpolation" thing that I may be still
>>>> neglecting and thinking that using things "line" objects is just as fine,
>>>> but let's see. I'll also look into how max does interpolation, someone
>>>> already told me that, I think I have an idea for that too.
>>>>
>>>>
>>>> I neglected the fact that [line] doesn't work with lists :) so I
>>>> created an object that does it called [morph]. Hence, this takes care of
>>>> preset transitions. I don't think it's necessary to put this feature inside
>>>> the preset object as it makes it more complicated and in the end it's good
>>>> this is a separate object as it's also useful outside the preset system and
>>>> can be used on its own to morph into different arrays and stuff.
>>>>
>>>>
>>>> I'm doing something similar for interpolation, with another object to
>>>> allow one to manually interpolate between values and lists of values, also
>>>> incorporating that feature from Max. This should all be up in my repository
>>>> this weeked.
>>>>
>>>>
>>>> cheers
>>>>
>>>> _______________________________________________
>>>>
>>>> Pd-list at lists.iem.at mailing list
>>>>
>>>> UNSUBSCRIBE and account-management ->
>>>> https://lists.puredata.info/listinfo/pd-list
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pd-list at lists.iem.at mailing list
>>>> UNSUBSCRIBE and account-management ->
>>>> https://lists.puredata.info/listinfo/pd-list
>>>>
>>>> _______________________________________________
> Pd-list at lists.iem.at mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20231111/383136e1/attachment.htm>


More information about the Pd-list mailing list