hello,
Here is a vanilla patch simulating a sustain pedal. It stores the note-offs while the pedal is down and releases them when the pedal is lifted.

best, Hans

On 1/3/21 7:55 PM, alfonso santimone wrote:
Let's see...if any other Pure Data fellow will test your [else\voices] and [else\suspedal] externals i guess we can have more test cases and see what's going on. In the meantime i'll still try to find the simplest way to show my findings while testing this particular Else objects ;-)

best!

www.elgallorojorecords.bandcamp.com/ <https://elgallorojorecords.bandcamp.com/>
soundcloud.com/alfonsosantimone <http://soundcloud.com/alfonsosantimone>
www.facebook.com/alfonsosantimone <http://www.facebook.com/alfonsosantimone>


On Sun, Jan 3, 2021 at 7:42 PM Alexandre Torres Porres <por...@gmail.com <mailto:por...@gmail.com>> wrote:



    Em dom., 3 de jan. de 2021 às 07:18, alfonso santimone
    <alfonso.santim...@gmail.com <mailto:alfonso.santim...@gmail.com>>
    escreveu:

        I'm doing some experiment with [else/voices] and
        [else/suspedal] to. Alexandre Torres Porres is doing a very
        good work with Else lib.


    but unfortunately I can't reproduce your bug and understand what
    you need :( I'll gladly work on a solution with that when the
    picture is clear ;)


_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


--
#N canvas 506 169 637 309 12;
#N canvas 614 219 863 761 suspedal 0;
#X obj 15 18 inlet;
#X obj 148 72 inlet;
#X obj 658 489 unpack;
#N canvas 0 50 450 250 (subpatch) 0;
#X array bagoff 128 float 3;
#A 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
#X coords 0 2 128 0 200 140 1 0 0;
#X restore 615 23 graph;
#X obj 248 329 128;
#X obj 248 358 until;
#X obj 366 360 0;
#X obj 250 395 f;
#X obj 299 397 + 1;
#X obj 223 295 t b b b;
#X obj 658 518 t b f;
#X obj 659 590 f;
#X obj 749 546 == 0;
#X text 206 71 pedal on or off;
#X obj 569 326 > 0;
#X obj 512 359 spigot;
#X obj 223 258 select 0;
#X obj 304 428 t f f f;
#X obj 276 498 > 0;
#X obj 342 559 f;
#X obj 276 527 select 1;
#X obj 344 591 pack f 0;
#X msg 87 359 \; bagoff const 0;
#X obj 659 626 tabwrite bagoff;
#X obj 277 465 tabread bagoff;
#X obj 512 475 unpack;
#X obj 512 504 stripnote;
#X obj 513 533 pack;
#X obj 15 328 spigot;
#X obj 73 290 == 0;
#X obj 148 217 t f f f;
#N canvas 1 78 767 501 check-repetitions 0;
#X obj 32 18 inlet;
#X obj 64 425 outlet;
#X obj 179 209 0;
#X obj 65 248 tabread bagoff;
#X obj 32 47 unpack;
#X obj 32 76 stripnote;
#X text 131 22 check for repeated notes (thus \, if the note-pitch
is already written into the bagoff array. If so \, first send this
pitch with a note-off);
#X obj 179 181 b;
#X obj 64 352 f;
#X obj 65 284 > 0;
#X obj 65 320 select 1;
#X obj 64 381 pack f 0;
#X obj 32 146 t b f f;
#X connect 0 0 4 0;
#X connect 3 0 9 0;
#X connect 4 0 5 0;
#X connect 4 1 5 1;
#X connect 5 0 12 0;
#X connect 7 0 2 0;
#X connect 8 0 11 0;
#X connect 9 0 10 0;
#X connect 10 0 8 0;
#X connect 11 0 1 0;
#X connect 12 1 3 0;
#X connect 12 2 7 0;
#X connect 12 2 8 1;
#X restore 575 425 pd check-repetitions;
#X obj 512 397 t l l;
#X obj 163 154 loadbang;
#X obj 163 183 0;
#X obj 227 645 unpack;
#X obj 211 692 outlet;
#X obj 287 693 outlet;
#X text 182 716 pitch;
#X text 290 717 velocity;
#X obj 15 96 pack;
#X obj 95 18 inlet;
#X text 24 39 pitch;
#X text 101 43 velocity;
#X connect 0 0 40 0;
#X connect 1 0 30 0;
#X connect 2 0 10 0;
#X connect 2 1 12 0;
#X connect 4 0 5 0;
#X connect 5 0 7 0;
#X connect 6 0 7 1;
#X connect 7 0 8 0;
#X connect 8 0 7 1;
#X connect 8 0 17 0;
#X connect 9 0 22 0;
#X connect 9 1 4 0;
#X connect 9 2 6 0;
#X connect 10 0 11 0;
#X connect 10 1 23 1;
#X connect 11 0 23 0;
#X connect 12 0 11 1;
#X connect 14 0 15 1;
#X connect 15 0 32 0;
#X connect 16 0 9 0;
#X connect 17 1 24 0;
#X connect 17 2 19 1;
#X connect 18 0 20 0;
#X connect 19 0 21 0;
#X connect 20 0 19 0;
#X connect 21 0 35 0;
#X connect 24 0 18 0;
#X connect 25 0 26 0;
#X connect 25 1 26 1;
#X connect 26 0 27 0;
#X connect 26 1 27 1;
#X connect 27 0 35 0;
#X connect 28 0 35 0;
#X connect 29 0 28 1;
#X connect 30 0 29 0;
#X connect 30 1 14 0;
#X connect 30 1 16 0;
#X connect 31 0 35 0;
#X connect 32 0 2 0;
#X connect 32 0 25 0;
#X connect 32 1 31 0;
#X connect 33 0 34 0;
#X connect 34 0 30 0;
#X connect 35 0 36 0;
#X connect 35 1 37 0;
#X connect 40 0 28 0;
#X connect 40 0 15 0;
#X connect 41 0 40 1;
#X restore 36 117 pd suspedal;
#X text 171 114 store note-offs when the pedal is down/on \, release
the note-offs when the pedal is lifted/off.;
#X obj 36 63 notein;
#X obj 110 66 ctlin 64;
#X connect 2 0 0 0;
#X connect 2 1 0 1;
#X connect 3 0 0 2;
_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list

Reply via email to