[PD] pd <--> maxmsp compatibility

Frank Barknecht fbar at footils.org
Sat Nov 1 12:04:32 CET 2008


Hallo,
volker böhm hat gesagt: // volker böhm wrote:

> very often i find myself sitting infront of a pretty trivial patching  
> problem, but i just can't find the right objects names in pd.

One major difference between Max and Pd is the number of available
objects. Ignoring objects that aren't available in Pd at all (like the
Jitter stuff) generally I'd say we have four kinds of differences: 

1) some objects just have different names (osc~ vc. cycle~) 
2) some serve the same purpose, but behave differently and 
   may have different names (spigot vs. gate)
3) some can be build from Pd's builtin objects (counter) 
4) some objects are only available as externals (Cyclone is great)

Items 1) and 2) just require users to learn a different vocabulary.
There's no way around that, but it shouldn't be too hard. With Pd and
Max this is a bit like learning different variants of natural
languages e.g. the Austrian and the German German - "Sessel" vs.
"Stuhl". ;)

It would be cool to document these differences in a Wiki page or so.

Reading through all the docs and learning the help files for vanilla
objects (i.e. the objects in 5.referemce/help-intro.pd) should help
with that. pdpedia may help as a search engine.

Which solution to choose from 3) and 4) depends on what kind of
philosophy you are a fan of, or what kind of "patching school" you
want to be a part of. Externals sometimes have to be used, but quite
often you can also approach a task using just the builtin objects.
This requires a slightly deeper knowledge of Pd, but in the long run
will make your patches be more portable and easier to install. Of
course for some purposes you have to use externals for various reasons
like performance.

But objects like [uzi] or [counter] can be patched perfectly well
using only what Pd vanilla offers - they show the fundamental
algorithms that IMO every Pd user should have seen or created at least
once in their patching life. Of course Max-users are pretty much used
to using [counter] or [prepend] where Pd users use [f 0]X[+ 1] and
[list prepend]---[list trim]. In a dual platform course for Max and Pd
users I think it's important to spend one or more session(s) working
on the differences between platforms.

As an example for approach 3) attached is a clone of uzi built as a
pure Pd abstraction. As I wrote before in many usecases a simple
[until] activated with a float number will serve the same purpose. It
won't give you the bang counter and will not resume, but for many
loops that's not necessary anyway. And the advantage of using a plain
[until] is that you cannot forget to include the [unzi] abstraction
when giving away your patches to someone else.

Ciao
-- 
 Frank Barknecht            Do You RjDj.me?          _ ______footils.org__
-------------- next part --------------
A non-text attachment was scrubbed...
Name: unzi-help.pd
Type: application/puredata
Size: 1116 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20081101/600707ba/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: unzi.pd
Type: application/puredata
Size: 1488 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20081101/600707ba/attachment-0001.bin>


More information about the Pd-list mailing list