Hi Ingo,<div><br></div><div>Thanks for the reply, [coll] and [poly] definitely look useful. However, I forget to mention I&#39;m using Pd Vanilla :(</div><div><br></div><div>The information you provided is really helpful though, I&#39;m thinking if I can try and replicate the functionality of [coll], maybe using tables or something similar. I tried a while ago but it ended up getting messy. </div>

<div><br></div><div>If you can extract your method from your patch that&#39;d be much appreciated. </div><div><br></div><div>Thanks,</div><div>Joe<br><br><div class="gmail_quote">On 21 April 2011 13:36, Ingo <span dir="ltr">&lt;<a href="mailto:ingo@miamiwave.com">ingo@miamiwave.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">I am using a [coll] object to store all notes being played and not yet<br>
released. When the current note is released it recalls the last note that<br>
was stored from the [coll] list by sending something like [end, bang( to<br>
[coll].<br>
You can play as many notes as you want and it will always go back to the<br>
last note played.<br>
When releasing a note (that may not even sound ATM) it gets erased from<br>
[coll] by using [remove $1(. To separate note on / off I use [nroute 0 2].<br>
Note priority in this case is &quot;last&quot; which is all I personally ever need. (I<br>
suppose other priorities can be set by using some sorting options within<br>
[coll].)<br>
<br>
In order to avoid other notes cutting off the current note I find the<br>
easiest (monophonic) solution is to add [poly 1 1] right before sound<br>
generation. This sends a note off to the last note played before starting<br>
the new one and avoids double note offs.<br>
<br>
I am using this in a rather complex patch. I’ll see if I can extract just<br>
this single part of it if you can&#39;t get it to work correctly. Although I<br>
don’t think I’ll be able get to it until next week.<br>
<br>
Ingo<br>
<br>
<br>
________________________________________<br>
Von: <a href="mailto:pd-list-bounces@iem.at">pd-list-bounces@iem.at</a> [mailto:<a href="mailto:pd-list-bounces@iem.at">pd-list-bounces@iem.at</a>] Im Auftrag von<br>
Joe White<br>
Gesendet: Donnerstag, 21. April 2011 13:48<br>
An: <a href="mailto:pd-list@iem.at">pd-list@iem.at</a><br>
Betreff: [PD] Midi note handling for monophonic synth<br>
<div><div></div><div class="h5"><br>
Hi all,<br>
<br>
I&#39;m implementing a synth in Pd using midi/notein as an input. <br>
<br>
One problem I keep coming up against is handling note off messages. This<br>
guy&#39;s blog post describes the issue<br>
- <a href="http://kemptonmooney.com/2010/09/pure-data-midi-note-off-solution/" target="_blank">http://kemptonmooney.com/2010/09/pure-data-midi-note-off-solution/</a><br>
<br>
However, I think his solution is not exactly what I&#39;m looking for. The<br>
synths I use in Logic have note priority methods and remember all held down<br>
notes (or at least 10). <br>
<br>
I wondering if anyone has managed to implement something like this in Pd or<br>
might know where I can find out more about it. <br>
<br>
ddg.mono from Max<br>
(<a href="http://www.cycling74.com/docs/max5/refpages/m4l-ref/ddg.mono.html" target="_blank">http://www.cycling74.com/docs/max5/refpages/m4l-ref/ddg.mono.html</a>) looks<br>
similar to what I want - but I don&#39;t use Max and I don&#39;t think I can access<br>
the source. <br>
<br>
Any ideas?<br>
<br>
Thanks,<br>
Joe<br>
<br>
</div></div></blockquote></div><br></div>