[PD] newbie ? - quantize controller data

ba ba at uvic.ca
Wed Aug 4 19:55:53 CEST 2004

take your range, say it's values 24-72.  then normalize it to one (i don't 
know the proper terminology).  what I mean is since the difference here is 48, 
you subtract 24 then divide by 48.  so now you have decimal values from 0-1.  
now multiply by 4 and use [wrap] to subtract the decimal values.  with a 
calculator you can combine the "divide by 48 then multiply by 4" steps by just 
dividing by twelve, but for simplicity that's the thought process behind it.  
so it might look like

[moses 65] <--- filters out values above your desired range
[- 24] <--- sets the start of the range to zero
[/ 12] <---combination of dividing by the size of the range 
|    |     and multiplying by the desired # of intervals (/ 48 then * 4
|    | <-----(WIRE THIS FIRST)
|    [wrap]
|   /
|  /

this might be overly complicated, because there might be an easier way to 
truncate decimal values, but you can try that.  I pretty sure there is a 
control version of [wrap].

good luck


>===== Original Message From Mark Casey <reedman at reedmaninteractive.com> =====
>I'm new to Pd. I play MIDI wind controller and Pd looks like just the ticket
>to realize my long standing performance goal. That is to take the single
>note data stream and seamlessly switch between lead and rhythm parts. The
>rhythm parts would be chords but not locked into parallel voicings. The
>processed MIDI data will trigger hardware synths.
>I'm on OS X 10.2.8, dual 450, midiman 2x2 interface, Pd version 0.37.0
>Outputting chords based on MIDI note number is pretty straight forward
>thanks to Jim Aikin's transposer patch. Now I want to change voicings via
>continuous controller rather than the radio buttons currently used.
>The first attempt used moses to split the range into 4 zones but this bangs
>the transposer every time the controller changes. What I need is a single
>bang for the entire time the controller stays in a range - only sending a
>new bang when the controller passes a upper or lower threshold.
>Would you point me to a resource or perhaps offer suggestions for achieving
>Thanks for your help.
>Mark Casey
>PD-list mailing list
>PD-list at iem.at
>to manage your subscription (including un-subscription) see

More information about the Pd-list mailing list