# HG changeset patch # User Andrew N Robertson # Date 1321385705 0 # Node ID f0abb0e414eca3d37df41e0085544969cd887389 # Parent 9e972948d6545fe43a895bc3c7d77ea07f87df93 reorders the MIDI matrix once loaded from all channels, chop the beginning now less relevant - check how this might work... diff -r 9e972948d654 -r f0abb0e414ec maxPatchToPlayFiles/playMidiTranscription2.maxhelp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/maxPatchToPlayFiles/playMidiTranscription2.maxhelp Tue Nov 15 19:35:05 2011 +0000 @@ -0,0 +1,2438 @@ +{ + "patcher" : { + "fileversion" : 1, + "rect" : [ 967.0, 100.0, 713.0, 776.0 ], + "bglocked" : 0, + "defrect" : [ 967.0, 100.0, 713.0, 776.0 ], + "openrect" : [ 0.0, 0.0, 0.0, 0.0 ], + "openinpresentation" : 1, + "default_fontsize" : 10.0, + "default_fontface" : 0, + "default_fontname" : "Verdana", + "gridonopen" : 0, + "gridsize" : [ 15.0, 15.0 ], + "gridsnaponopen" : 0, + "toolbarvisible" : 1, + "boxanimatetime" : 200, + "imprint" : 0, + "enablehscroll" : 1, + "enablevscroll" : 1, + "devicewidth" : 0.0, + "boxes" : [ { + "box" : { + "maxclass" : "message", + "text" : "144 73 100", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-12", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 102.0, 517.0, 101.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "speed", + "fontsize" : 10.0, + "presentation_rect" : [ 245.0, 62.0, 150.0, 19.0 ], + "id" : "obj-9", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 269.0, 68.0, 150.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "MIDI representation", + "fontsize" : 10.0, + "presentation_rect" : [ 16.0, -3.0, 150.0, 19.0 ], + "id" : "obj-24", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 72.0, 129.0, 150.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "audio", + "fontsize" : 10.0, + "presentation_rect" : [ 14.0, 119.0, 150.0, 19.0 ], + "id" : "obj-23", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 57.0, 114.0, 150.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "send notes", + "fontsize" : 10.0, + "presentation_rect" : [ 149.0, 169.0, 67.0, 19.0 ], + "id" : "obj-10", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 174.0, 161.0, 150.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "loadmess 1", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-3", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 204.0, 548.0, 68.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "midi playing on/off", + "presentation_linecount" : 2, + "fontsize" : 10.0, + "presentation_rect" : [ 215.0, 84.0, 73.0, 31.0 ], + "id" : "obj-8", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 289.0, 294.0, 150.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "plays midi and accompanying audio too", + "linecount" : 2, + "presentation_linecount" : 2, + "fontsize" : 10.0, + "presentation_rect" : [ 337.0, 464.0, 150.0, 31.0 ], + "id" : "obj-6", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 337.0, 464.0, 150.0, 31.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "toggle", + "outlettype" : [ "int" ], + "presentation_rect" : [ 188.0, 84.0, 20.0, 20.0 ], + "id" : "obj-4", + "numinlets" : 1, + "patching_rect" : [ 12.0, 493.0, 20.0, 20.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "gate", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-1", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 30.0, 510.0, 33.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "midi", + "fontsize" : 10.0, + "presentation_rect" : [ 52.0, 420.0, 150.0, 19.0 ], + "id" : "obj-11", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 55.0, 428.0, 150.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "loadmess 1", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-138", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 123.0, 815.0, 68.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "prepend /setSpeedPrior", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 128.0, 383.0, 129.0, 19.0 ], + "id" : "obj-137", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 122.0, 877.0, 129.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "flonum", + "outlettype" : [ "float", "bang" ], + "fontsize" : 10.0, + "minimum" : 0.0, + "presentation_rect" : [ 133.0, 351.0, 50.0, 19.0 ], + "id" : "obj-136", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 122.0, 838.0, 50.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 2 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "id" : "obj-134", + "numinlets" : 1, + "patching_rect" : [ 328.0, 585.0, 20.0, 20.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "toggle", + "outlettype" : [ "int" ], + "id" : "obj-132", + "numinlets" : 1, + "patching_rect" : [ 662.0, 249.0, 20.0, 20.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "id" : "obj-130", + "numinlets" : 1, + "patching_rect" : [ 663.0, 307.0, 20.0, 20.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "0", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-128", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 660.0, 329.0, 32.5, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "gate", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-126", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 660.0, 282.0, 33.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "1", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-125", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 633.0, 226.0, 32.5, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "loadbang", + "outlettype" : [ "bang" ], + "fontsize" : 10.0, + "id" : "obj-123", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 618.0, 190.0, 56.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "p otherFtmControls", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-115", + "numinlets" : 0, + "fontname" : "Verdana", + "patching_rect" : [ 19.0, 88.0, 108.0, 19.0 ], + "numoutlets" : 1, + "patcher" : { + "fileversion" : 1, + "rect" : [ 25.0, 69.0, 640.0, 480.0 ], + "bglocked" : 0, + "defrect" : [ 25.0, 69.0, 640.0, 480.0 ], + "openrect" : [ 0.0, 0.0, 0.0, 0.0 ], + "openinpresentation" : 0, + "default_fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "gridonopen" : 0, + "gridsize" : [ 15.0, 15.0 ], + "gridsnaponopen" : 0, + "toolbarvisible" : 1, + "boxanimatetime" : 200, + "imprint" : 0, + "enablehscroll" : 1, + "enablevscroll" : 1, + "devicewidth" : 0.0, + "boxes" : [ { + "box" : { + "maxclass" : "comment", + "text" : "ordinary file following (x) or else one shot test", + "linecount" : 2, + "presentation_linecount" : 2, + "fontsize" : 10.0, + "presentation_rect" : [ 52.0, 186.0, 156.0, 31.0 ], + "id" : "obj-111", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 87.0, 206.0, 153.0, 31.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set speed", + "fontsize" : 10.0, + "id" : "obj-3", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 362.0, 263.0, 57.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "ftm_scope" : 1, + "ftm_objref_conv" : 0, + "#loadbang" : 0, + "text" : [ "_loop 500 1500 1." ], + "presentation_rect" : [ 216.0, 166.0, 92.157234, 17.0 ], + "#untuple" : 0, + "id" : "obj-4", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 216.0, 166.0, 92.157234, 17.0 ], + "#triggerall" : 0, + "numoutlets" : 1, + "#init" : "" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (begin, end and speed) and loop", + "fontsize" : 10.0, + "id" : "obj-5", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 306.0, 167.0, 240.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "ftm_scope" : 0, + "ftm_objref_conv" : 0, + "#loadbang" : 0, + "text" : [ "_play $play.seq 500 1500 1." ], + "presentation_rect" : [ 216.0, 146.0, 142.66507, 17.0 ], + "#untuple" : 0, + "id" : "obj-6", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 216.0, 146.0, 142.66507, 17.0 ], + "#triggerall" : 0, + "numoutlets" : 1, + "#init" : "" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (track, begin, end and speed) and play", + "fontsize" : 10.0, + "id" : "obj-7", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 370.0, 147.0, 272.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "advance to next time", + "fontsize" : 10.0, + "id" : "obj-8", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 88.0, 258.0, 115.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "slider", + "outlettype" : [ "" ], + "size" : 1001.0, + "id" : "obj-9", + "numinlets" : 1, + "patching_rect" : [ 162.0, 238.0, 169.0, 15.0 ], + "numoutlets" : 1, + "mult" : 10.0, + "orientation" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "locate or jump at given time", + "fontsize" : 10.0, + "id" : "obj-10", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 114.0, 121.0, 151.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "next", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-11", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 50.0, 257.0, 33.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "jump 300.", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-12", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 50.0, 119.0, 62.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set speed by giving a duration for the current segment", + "fontsize" : 10.0, + "id" : "obj-23", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 336.0, 281.0, 285.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (only begin and end) and play straight", + "fontsize" : 10.0, + "id" : "obj-24", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 354.0, 120.0, 270.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "play current segment", + "fontsize" : 10.0, + "id" : "obj-25", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 86.0, 147.0, 116.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "speed 0.5", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-26", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 299.0, 262.0, 58.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "ftm_scope" : 0, + "ftm_objref_conv" : 0, + "#loadbang" : 0, + "text" : [ "_set 0 9999999" ], + "presentation_rect" : [ 274.0, 119.0, 78.998055, 17.0 ], + "#untuple" : 0, + "id" : "obj-27", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 274.0, 119.0, 78.998055, 17.0 ], + "#triggerall" : 0, + "numoutlets" : 1, + "#init" : "" + } + + } +, { + "box" : { + "maxclass" : "flonum", + "outlettype" : [ "float", "bang" ], + "fontsize" : 10.0, + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "triscale" : 0.9, + "id" : "obj-28", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 104.0, 238.0, 56.0, 19.0 ], + "numoutlets" : 2, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "duration 1000", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-29", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 252.0, 281.0, 79.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "speed 2.", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-30", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 252.0, 262.0, 52.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "pause", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-31", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 50.0, 192.0, 40.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "locate 300.", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-32", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 50.0, 100.0, 67.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "sync $1", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-33", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 50.0, 238.0, 49.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "ftm_scope" : 0, + "ftm_objref_conv" : 0, + "#loadbang" : 0, + "text" : [ "_set $play.seq 500 1500 1." ], + "presentation_rect" : [ 274.0, 100.0, 136.952179, 17.0 ], + "#untuple" : 0, + "id" : "obj-40", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 274.0, 100.0, 136.952179, 17.0 ], + "#triggerall" : 0, + "numoutlets" : 1, + "#init" : "" + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "loop", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-41", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 50.0, 165.0, 32.5, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "id" : "obj-50", + "numinlets" : 1, + "patching_rect" : [ 50.0, 292.0, 15.0, 15.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "advance to gven time (output all events on the way)", + "fontsize" : 10.0, + "id" : "obj-54", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 326.0, 238.0, 274.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "locate halted at given time", + "fontsize" : 10.0, + "id" : "obj-55", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 119.0, 101.0, 143.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "loop current segment", + "fontsize" : 10.0, + "id" : "obj-57", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 85.0, 166.0, 116.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "stop playing and reset", + "fontsize" : 10.0, + "id" : "obj-58", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 86.0, 212.0, 121.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "halt playing", + "fontsize" : 10.0, + "id" : "obj-59", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 93.0, 193.0, 67.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "play current segment straight", + "fontsize" : 10.0, + "id" : "obj-60", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 67.0, 292.0, 158.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "note that setting a new track stops and resets the player (play and loop start from beginning)", + "linecount" : 2, + "fontsize" : 10.0, + "id" : "obj-62", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 277.0, 196.0, 266.0, 31.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "outlet", + "id" : "obj-114", + "numinlets" : 1, + "patching_rect" : [ 147.357147, 371.0, 25.0, 25.0 ], + "numoutlets" : 0, + "comment" : "" + } + + } + ], + "lines" : [ { + "patchline" : { + "source" : [ "obj-9", 0 ], + "destination" : [ "obj-28", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-28", 0 ], + "destination" : [ "obj-33", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-32", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-12", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-41", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-31", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-33", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-11", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-50", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-6", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-4", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-30", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-29", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-40", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-27", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-26", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } + ] + } +, + "saved_object_attributes" : { + "fontface" : 0, + "fontsize" : 12.0, + "default_fontsize" : 12.0, + "fontname" : "Arial", + "default_fontface" : 0, + "default_fontname" : "Arial", + "globalpatchername" : "" + } + + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "open", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 65.0, 173.0, 35.0, 17.0 ], + "id" : "obj-113", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 320.0, 23.0, 35.0, 17.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "0", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-110", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 281.0, 23.0, 32.5, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "1", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 26.0, 173.0, 32.5, 17.0 ], + "id" : "obj-105", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 240.0, 23.0, 32.5, 17.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "sfplay~ 2", + "outlettype" : [ "signal", "signal", "bang" ], + "fontsize" : 10.0, + "id" : "obj-65", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 230.0, 46.0, 58.0, 19.0 ], + "numoutlets" : 3, + "save" : [ "#N", "sfplay~", "", 2, 120960, 0, "", ";" ] + } + + } +, { + "box" : { + "maxclass" : "toggle", + "outlettype" : [ "int" ], + "presentation_rect" : [ 126.0, 169.0, 20.0, 20.0 ], + "id" : "obj-109", + "numinlets" : 1, + "patching_rect" : [ 198.0, 688.0, 20.0, 20.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "gswitch2", + "int" : 1, + "outlettype" : [ "", "" ], + "id" : "obj-107", + "numinlets" : 2, + "patching_rect" : [ 201.0, 719.0, 39.0, 32.0 ], + "numoutlets" : 2 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "60 100", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-106", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 50.0, 751.0, 46.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "presentation_rect" : [ 25.0, 144.0, 20.0, 20.0 ], + "id" : "obj-104", + "numinlets" : 1, + "patching_rect" : [ 50.0, 712.0, 20.0, 20.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "id" : "obj-102", + "numinlets" : 1, + "patching_rect" : [ 122.0, 744.0, 20.0, 20.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "0", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-103", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 167.0, 719.0, 32.5, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "gate", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-100", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 169.0, 776.0, 33.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "toggle", + "outlettype" : [ "int" ], + "presentation_rect" : [ 153.0, 23.0, 20.0, 20.0 ], + "id" : "obj-90", + "numinlets" : 1, + "patching_rect" : [ 173.0, 745.0, 21.0, 21.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "zl slice 1", + "outlettype" : [ "", "" ], + "fontsize" : 10.0, + "id" : "obj-82", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 90.0, 562.0, 54.0, 19.0 ], + "numoutlets" : 2 + } + + } +, { + "box" : { + "maxclass" : "flonum", + "outlettype" : [ "float", "bang" ], + "fontsize" : 12.0, + "presentation_rect" : [ 184.0, 62.0, 57.0, 21.0 ], + "id" : "obj-99", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 261.0, 351.0, 57.0, 21.0 ], + "presentation" : 1, + "numoutlets" : 2 + } + + } +, { + "box" : { + "maxclass" : "ezdac~", + "varname" : "autohelp_dac", + "presentation_rect" : [ 186.0, 14.0, 45.0, 45.0 ], + "id" : "obj-94", + "numinlets" : 2, + "patching_rect" : [ 135.0, 619.0, 45.0, 45.0 ], + "presentation" : 1, + "numoutlets" : 0, + "local" : 1 + } + + } +, { + "box" : { + "maxclass" : "panel", + "varname" : "startwinwdow_panel", + "border" : 2, + "presentation_rect" : [ 15.0, 136.0, 205.0, 57.0 ], + "bordercolor" : [ 0.392157, 0.792157, 0.117647, 1.0 ], + "id" : "obj-95", + "numinlets" : 1, + "patching_rect" : [ 87.0, 614.0, 100.0, 55.0 ], + "presentation" : 1, + "numoutlets" : 0, + "bgcolor" : [ 1.0, 1.0, 1.0, 1.0 ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "73 100 24849.472656", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 19.0, 197.0, 196.0, 17.0 ], + "id" : "obj-85", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 256.0, 729.0, 196.0, 17.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "zl join", + "outlettype" : [ "", "" ], + "fontsize" : 10.0, + "id" : "obj-83", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 247.0, 675.0, 41.0, 19.0 ], + "numoutlets" : 2 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "- 0.", + "outlettype" : [ "float" ], + "fontsize" : 10.0, + "id" : "obj-80", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 261.0, 644.0, 32.5, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "t l b", + "outlettype" : [ "", "bang" ], + "fontsize" : 10.0, + "id" : "obj-79", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 247.0, 586.0, 32.5, 19.0 ], + "numoutlets" : 2 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "cpuclock", + "outlettype" : [ "float" ], + "fontsize" : 10.0, + "id" : "obj-78", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 328.0, 615.0, 53.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "cpuclock", + "outlettype" : [ "float" ], + "fontsize" : 10.0, + "id" : "obj-76", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 261.0, 614.0, 53.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "id" : "obj-71", + "numinlets" : 1, + "patching_rect" : [ 583.0, 277.0, 20.0, 20.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "/stopplaying", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-72", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 614.0, 378.0, 73.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "id" : "obj-70", + "numinlets" : 1, + "patching_rect" : [ 418.0, -27.0, 20.0, 20.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "/startplaying", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-63", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 365.0, 551.0, 75.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "prepend /midinoteon", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-69", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 352.0, 837.0, 116.0, 19.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "udpsend 127.0.0.1 12121", + "fontsize" : 10.0, + "id" : "obj-68", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 353.0, 860.0, 141.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "73 100", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-67", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 97.0, 591.0, 50.0, 17.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "syntax:", + "fontsize" : 10.0, + "id" : "obj-2", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 282.0, 382.0, 46.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "kill hanging notes when looping", + "hidden" : 1, + "fontsize" : 10.0, + "id" : "obj-13", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 215.0, 417.0, 168.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "ftm.object", + "text" : "sequence midi", + "outlettype" : [ "", "" ], + "fontsize" : 12.0, + "ftm_scope" : 0, + "ftm_objref_conv" : 0, + "description" : "sequence midi", + "presentation_rect" : [ 369.0, 807.0, 161.785156, 20.0 ], + "editor_interface" : "matrix", + "id" : "obj-14", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 369.0, 807.0, 161.785156, 20.0 ], + "scope" : 0, + "numoutlets" : 2, + "name" : "play.seq", + "persistence" : 0 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "import", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 15.0, 57.0, 43.0, 17.0 ], + "id" : "obj-15", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 369.0, 779.0, 43.0, 17.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "import MIDI file", + "fontsize" : 10.0, + "presentation_rect" : [ 60.0, 56.0, 90.0, 19.0 ], + "id" : "obj-16", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 414.0, 778.0, 90.0, 19.0 ], + "presentation" : 1, + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "play an FTM track", + "fontsize" : 10.0, + "id" : "obj-17", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 61.0, 57.0, 98.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "ftm.play", + "fontsize" : 24.0, + "id" : "obj-18", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 55.0, 24.0, 108.0, 36.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "FTM basic objects", + "fontsize" : 10.0, + "id" : "obj-19", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 49.0, 12.0, 97.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "fpic", + "id" : "obj-20", + "numinlets" : 1, + "patching_rect" : [ 9.0, 9.0, 54.0, 74.0 ], + "pic" : "ftm.help.jpg", + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment end", + "fontsize" : 10.0, + "id" : "obj-21", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 357.0, 334.0, 93.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "change 0 -", + "hidden" : 1, + "outlettype" : [ "", "int", "int" ], + "fontsize" : 10.0, + "id" : "obj-34", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 48.0, 418.0, 62.0, 19.0 ], + "numoutlets" : 3 + } + + } +, { + "box" : { + "maxclass" : "slider", + "outlettype" : [ "" ], + "size" : 1001.0, + "id" : "obj-35", + "numinlets" : 1, + "patching_rect" : [ 186.0, 334.0, 169.0, 15.0 ], + "numoutlets" : 1, + "mult" : 10.0, + "orientation" : 1 + } + + } +, { + "box" : { + "maxclass" : "slider", + "outlettype" : [ "" ], + "size" : 1001.0, + "id" : "obj-36", + "numinlets" : 1, + "patching_rect" : [ 111.0, 314.0, 169.0, 15.0 ], + "numoutlets" : 1, + "mult" : 10.0, + "orientation" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "GM", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 127.0, 442.0, 32.5, 17.0 ], + "id" : "obj-37", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 127.0, 442.0, 32.5, 17.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "panic", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 85.0, 442.0, 37.0, 17.0 ], + "id" : "obj-38", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 85.0, 442.0, 37.0, 17.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "off", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "presentation_rect" : [ 48.0, 442.0, 32.5, 17.0 ], + "id" : "obj-39", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 48.0, 442.0, 32.5, 17.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "flonum", + "outlettype" : [ "float", "bang" ], + "fontsize" : 10.0, + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "triscale" : 0.9, + "id" : "obj-42", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 186.0, 357.0, 55.0, 19.0 ], + "numoutlets" : 2, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ] + } + + } +, { + "box" : { + "maxclass" : "flonum", + "outlettype" : [ "float", "bang" ], + "fontsize" : 10.0, + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "triscale" : 0.9, + "id" : "obj-43", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 111.0, 357.0, 55.0, 19.0 ], + "numoutlets" : 2, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "midiout", + "fontsize" : 10.0, + "id" : "obj-44", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 36.0, 538.0, 48.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "ftm.midiunparse", + "outlettype" : [ "" ], + "fontsize" : 10.0, + "id" : "obj-45", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 36.0, 463.0, 93.0, 19.0 ], + "numoutlets" : 1, + "saved_object_attributes" : { + "ftm_scope" : 0, + "ftm_objref_conv" : 0 + } + + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "play", + "outlettype" : [ "" ], + "fontsize" : 18.0, + "presentation_rect" : [ 25.0, 17.0, 52.0, 26.0 ], + "id" : "obj-46", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 424.0, 52.0, 52.0, 26.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "stop", + "outlettype" : [ "" ], + "fontsize" : 18.0, + "presentation_rect" : [ 93.0, 19.0, 51.0, 26.0 ], + "id" : "obj-49", + "numinlets" : 2, + "fontname" : "Verdana", + "patching_rect" : [ 539.0, 55.0, 51.0, 26.0 ], + "presentation" : 1, + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "button", + "outlettype" : [ "bang" ], + "id" : "obj-51", + "numinlets" : 1, + "patching_rect" : [ 261.0, 442.0, 15.0, 15.0 ], + "numoutlets" : 1 + } + + } +, { + "box" : { + "maxclass" : "flonum", + "outlettype" : [ "float", "bang" ], + "fontsize" : 10.0, + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "triscale" : 0.9, + "id" : "obj-52", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 149.0, 418.0, 55.0, 19.0 ], + "numoutlets" : 2, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "ftm.play $play.seq", + "outlettype" : [ "", "", "" ], + "fontsize" : 18.0, + "id" : "obj-53", + "numinlets" : 4, + "fontname" : "Verdana", + "patching_rect" : [ 36.0, 380.0, 244.0, 28.0 ], + "numoutlets" : 3, + "saved_object_attributes" : { + "ftm_scope" : 2, + "ftm_objref_conv" : 0 + } + + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (track, begin, end and speed)", + "fontsize" : 10.0, + "id" : "obj-56", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 402.0, 91.0, 226.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment beginning", + "fontsize" : 10.0, + "id" : "obj-61", + "numinlets" : 1, + "fontname" : "Verdana", + "patching_rect" : [ 282.0, 314.0, 123.0, 19.0 ], + "numoutlets" : 0 + } + + } +, { + "box" : { + "maxclass" : "panel", + "varname" : "startwinwdow_panel[1]", + "border" : 2, + "presentation_rect" : [ 13.0, 13.0, 167.0, 98.0 ], + "bordercolor" : [ 0.392157, 0.792157, 0.117647, 1.0 ], + "id" : "obj-5", + "numinlets" : 1, + "patching_rect" : [ 102.0, 629.0, 100.0, 55.0 ], + "presentation" : 1, + "numoutlets" : 0, + "bgcolor" : [ 1.0, 1.0, 1.0, 1.0 ] + } + + } + ], + "lines" : [ { + "patchline" : { + "source" : [ "obj-1", 0 ], + "destination" : [ "obj-12", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-3", 0 ], + "destination" : [ "obj-109", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-71", 0 ], + "destination" : [ "obj-110", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-106", 0 ], + "destination" : [ "obj-79", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-82", 1 ], + "destination" : [ "obj-79", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-136", 0 ], + "destination" : [ "obj-137", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-137", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-138", 0 ], + "destination" : [ "obj-136", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-134", 0 ], + "destination" : [ "obj-78", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-63", 0 ], + "destination" : [ "obj-134", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-130", 0 ], + "destination" : [ "obj-63", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-71", 0 ], + "destination" : [ "obj-125", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-82", 1 ], + "destination" : [ "obj-126", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-125", 0 ], + "destination" : [ "obj-132", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-128", 0 ], + "destination" : [ "obj-132", 0 ], + "hidden" : 0, + "midpoints" : [ 669.5, 343.0, 669.5, 354.0, 651.0, 354.0, 651.0, 245.0, 671.5, 245.0 ] + } + + } +, { + "patchline" : { + "source" : [ "obj-130", 0 ], + "destination" : [ "obj-128", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-126", 0 ], + "destination" : [ "obj-130", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-132", 0 ], + "destination" : [ "obj-126", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-123", 0 ], + "destination" : [ "obj-125", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-115", 0 ], + "destination" : [ "obj-53", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-102", 0 ], + "destination" : [ "obj-90", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-100", 0 ], + "destination" : [ "obj-102", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-99", 0 ], + "destination" : [ "obj-53", 3 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-83", 0 ], + "destination" : [ "obj-85", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-80", 0 ], + "destination" : [ "obj-83", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-76", 0 ], + "destination" : [ "obj-80", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-78", 0 ], + "destination" : [ "obj-80", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-79", 1 ], + "destination" : [ "obj-76", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-69", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-49", 0 ], + "destination" : [ "obj-53", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-46", 0 ], + "destination" : [ "obj-53", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-37", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-38", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-39", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-53", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-52", 0 ], + "destination" : [ "obj-34", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-34", 0 ], + "destination" : [ "obj-39", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-36", 0 ], + "destination" : [ "obj-43", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-43", 0 ], + "destination" : [ "obj-53", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-53", 1 ], + "destination" : [ "obj-52", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-35", 0 ], + "destination" : [ "obj-42", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-42", 0 ], + "destination" : [ "obj-53", 2 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-53", 2 ], + "destination" : [ "obj-51", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-15", 0 ], + "destination" : [ "obj-14", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-46", 0 ], + "destination" : [ "obj-70", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-63", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-71", 0 ], + "destination" : [ "obj-72", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-72", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-49", 0 ], + "destination" : [ "obj-71", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-45", 0 ], + "destination" : [ "obj-82", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-82", 1 ], + "destination" : [ "obj-67", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-90", 0 ], + "destination" : [ "obj-100", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-46", 0 ], + "destination" : [ "obj-103", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-103", 0 ], + "destination" : [ "obj-90", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-104", 0 ], + "destination" : [ "obj-106", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-104", 0 ], + "destination" : [ "obj-90", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-83", 0 ], + "destination" : [ "obj-107", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-107", 0 ], + "destination" : [ "obj-100", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-109", 0 ], + "destination" : [ "obj-107", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-79", 0 ], + "destination" : [ "obj-83", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-107", 1 ], + "destination" : [ "obj-69", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-70", 0 ], + "destination" : [ "obj-105", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-113", 0 ], + "destination" : [ "obj-65", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-105", 0 ], + "destination" : [ "obj-65", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-110", 0 ], + "destination" : [ "obj-65", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-65", 0 ], + "destination" : [ "obj-94", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-65", 1 ], + "destination" : [ "obj-94", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-45", 0 ], + "destination" : [ "obj-1", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-1", 0 ], + "destination" : [ "obj-44", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-4", 0 ], + "destination" : [ "obj-1", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } + ] + } + +} diff -r 9e972948d654 -r f0abb0e414ec maxPatchToPlayFiles/playMidiTranscription3.maxpat --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/maxPatchToPlayFiles/playMidiTranscription3.maxpat Tue Nov 15 19:35:05 2011 +0000 @@ -0,0 +1,2775 @@ +{ + "patcher" : { + "fileversion" : 1, + "rect" : [ 391.0, 59.0, 1089.0, 872.0 ], + "bglocked" : 0, + "defrect" : [ 391.0, 59.0, 1089.0, 872.0 ], + "openrect" : [ 0.0, 0.0, 0.0, 0.0 ], + "openinpresentation" : 1, + "default_fontsize" : 10.0, + "default_fontface" : 0, + "default_fontname" : "Verdana", + "gridonopen" : 0, + "gridsize" : [ 15.0, 15.0 ], + "gridsnaponopen" : 0, + "toolbarvisible" : 1, + "boxanimatetime" : 200, + "imprint" : 0, + "enablehscroll" : 1, + "enablevscroll" : 1, + "devicewidth" : 0.0, + "boxes" : [ { + "box" : { + "maxclass" : "message", + "text" : "/offline", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 783.0, 954.0, 46.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-74", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "/realtime", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 714.0, 951.0, 56.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-73", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "sel 1 2", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 699.0, 921.0, 46.0, 19.0 ], + "numoutlets" : 3, + "id" : "obj-64", + "fontname" : "Verdana", + "outlettype" : [ "bang", "bang", "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "for offline", + "fontsize" : 10.0, + "presentation_rect" : [ 120.0, 86.0, 58.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ 351.0, 174.0, 150.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-62", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "p ftmPlayer", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ -26.0, 314.0, 476.0, 19.0 ], + "numoutlets" : 2, + "id" : "obj-60", + "fontname" : "Verdana", + "outlettype" : [ "", "" ], + "patcher" : { + "fileversion" : 1, + "rect" : [ 0.0, 0.0, 640.0, 480.0 ], + "bglocked" : 0, + "defrect" : [ 0.0, 0.0, 640.0, 480.0 ], + "openrect" : [ 0.0, 0.0, 0.0, 0.0 ], + "openinpresentation" : 0, + "default_fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "gridonopen" : 0, + "gridsize" : [ 15.0, 15.0 ], + "gridsnaponopen" : 0, + "toolbarvisible" : 1, + "boxanimatetime" : 200, + "imprint" : 0, + "enablehscroll" : 1, + "enablevscroll" : 1, + "devicewidth" : 0.0, + "boxes" : [ { + "box" : { + "maxclass" : "comment", + "text" : "midi", + "fontsize" : 10.0, + "presentation_rect" : [ 52.0, 420.0, 150.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ 131.0, 214.0, 150.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-11", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "p otherFtmControls", + "fontsize" : 10.0, + "numinlets" : 0, + "patching_rect" : [ 50.0, 109.0, 108.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-115", + "fontname" : "Verdana", + "outlettype" : [ "" ], + "patcher" : { + "fileversion" : 1, + "rect" : [ 25.0, 69.0, 640.0, 480.0 ], + "bglocked" : 0, + "defrect" : [ 25.0, 69.0, 640.0, 480.0 ], + "openrect" : [ 0.0, 0.0, 0.0, 0.0 ], + "openinpresentation" : 0, + "default_fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "gridonopen" : 0, + "gridsize" : [ 15.0, 15.0 ], + "gridsnaponopen" : 0, + "toolbarvisible" : 1, + "boxanimatetime" : 200, + "imprint" : 0, + "enablehscroll" : 1, + "enablevscroll" : 1, + "devicewidth" : 0.0, + "boxes" : [ { + "box" : { + "maxclass" : "comment", + "text" : "ordinary file following (x) or else one shot test", + "linecount" : 2, + "presentation_linecount" : 2, + "fontsize" : 10.0, + "presentation_rect" : [ 52.0, 186.0, 156.0, 31.0 ], + "numinlets" : 1, + "patching_rect" : [ 87.0, 206.0, 153.0, 31.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-111", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set speed", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 362.0, 263.0, 57.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-3", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "#triggerall" : 0, + "ftm_scope" : 1, + "fontsize" : 10.0, + "#init" : "", + "text" : [ "_loop 500 1500 1." ], + "presentation_rect" : [ 216.0, 166.0, 92.157234, 17.0 ], + "ftm_objref_conv" : 0, + "numinlets" : 2, + "#loadbang" : 0, + "patching_rect" : [ 216.0, 166.0, 92.157234, 17.0 ], + "numoutlets" : 1, + "id" : "obj-4", + "fontname" : "Verdana", + "#untuple" : 0, + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (begin, end and speed) and loop", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 306.0, 167.0, 240.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-5", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "#triggerall" : 0, + "ftm_scope" : 0, + "fontsize" : 10.0, + "#init" : "", + "text" : [ "_play $play.seq 500 1500 1." ], + "presentation_rect" : [ 216.0, 146.0, 142.66507, 17.0 ], + "ftm_objref_conv" : 0, + "numinlets" : 2, + "#loadbang" : 0, + "patching_rect" : [ 216.0, 146.0, 142.66507, 17.0 ], + "numoutlets" : 1, + "id" : "obj-6", + "fontname" : "Verdana", + "#untuple" : 0, + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (track, begin, end and speed) and play", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 370.0, 147.0, 272.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-7", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "advance to next time", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 88.0, 258.0, 115.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-8", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "slider", + "orientation" : 1, + "numinlets" : 1, + "size" : 1001.0, + "patching_rect" : [ 162.0, 238.0, 169.0, 15.0 ], + "numoutlets" : 1, + "id" : "obj-9", + "mult" : 10.0, + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "locate or jump at given time", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 114.0, 121.0, 151.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-10", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "next", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 50.0, 257.0, 33.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-11", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "jump 300.", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 50.0, 119.0, 62.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-12", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set speed by giving a duration for the current segment", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 336.0, 281.0, 285.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-23", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (only begin and end) and play straight", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 354.0, 120.0, 270.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-24", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "play current segment", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 86.0, 147.0, 116.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-25", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "speed 0.5", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 299.0, 262.0, 58.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-26", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "#triggerall" : 0, + "ftm_scope" : 0, + "fontsize" : 10.0, + "#init" : "", + "text" : [ "_set 0 9999999" ], + "presentation_rect" : [ 274.0, 119.0, 78.998055, 17.0 ], + "ftm_objref_conv" : 0, + "numinlets" : 2, + "#loadbang" : 0, + "patching_rect" : [ 274.0, 119.0, 78.998055, 17.0 ], + "numoutlets" : 1, + "id" : "obj-27", + "fontname" : "Verdana", + "#untuple" : 0, + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "flonum", + "fontsize" : 10.0, + "triscale" : 0.9, + "numinlets" : 1, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ], + "patching_rect" : [ 104.0, 238.0, 56.0, 19.0 ], + "numoutlets" : 2, + "id" : "obj-28", + "fontname" : "Verdana", + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "outlettype" : [ "float", "bang" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "duration 1000", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 252.0, 281.0, 79.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-29", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "speed 2.", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 252.0, 262.0, 52.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-30", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "pause", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 50.0, 192.0, 40.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-31", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "locate 300.", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 50.0, 100.0, 67.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-32", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "sync $1", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 50.0, 238.0, 49.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-33", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "ftm.mess", + "#triggerall" : 0, + "ftm_scope" : 0, + "fontsize" : 10.0, + "#init" : "", + "text" : [ "_set $play.seq 500 1500 1." ], + "presentation_rect" : [ 274.0, 100.0, 136.952179, 17.0 ], + "ftm_objref_conv" : 0, + "numinlets" : 2, + "#loadbang" : 0, + "patching_rect" : [ 274.0, 100.0, 136.952179, 17.0 ], + "numoutlets" : 1, + "id" : "obj-40", + "fontname" : "Verdana", + "#untuple" : 0, + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "loop", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 50.0, 165.0, 32.5, 17.0 ], + "numoutlets" : 1, + "id" : "obj-41", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "button", + "numinlets" : 1, + "patching_rect" : [ 50.0, 292.0, 15.0, 15.0 ], + "numoutlets" : 1, + "id" : "obj-50", + "outlettype" : [ "bang" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "advance to gven time (output all events on the way)", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 326.0, 238.0, 274.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-54", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "locate halted at given time", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 119.0, 101.0, 143.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-55", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "loop current segment", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 85.0, 166.0, 116.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-57", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "stop playing and reset", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 86.0, 212.0, 121.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-58", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "halt playing", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 93.0, 193.0, 67.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-59", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "play current segment straight", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 67.0, 292.0, 158.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-60", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "note that setting a new track stops and resets the player (play and loop start from beginning)", + "linecount" : 2, + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 277.0, 196.0, 266.0, 31.0 ], + "numoutlets" : 0, + "id" : "obj-62", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "outlet", + "numinlets" : 1, + "patching_rect" : [ 147.357147, 371.0, 25.0, 25.0 ], + "numoutlets" : 0, + "id" : "obj-114", + "comment" : "" + } + + } + ], + "lines" : [ { + "patchline" : { + "source" : [ "obj-9", 0 ], + "destination" : [ "obj-28", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-28", 0 ], + "destination" : [ "obj-33", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-32", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-12", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-41", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-31", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-33", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-11", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-50", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-6", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-4", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-30", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-29", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-40", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-27", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-26", 0 ], + "destination" : [ "obj-114", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } + ] + } +, + "saved_object_attributes" : { + "globalpatchername" : "", + "fontface" : 0, + "fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "fontname" : "Arial", + "default_fontsize" : 12.0 + } + + } + + } +, { + "box" : { + "maxclass" : "flonum", + "fontsize" : 12.0, + "presentation_rect" : [ 184.0, 62.0, 57.0, 21.0 ], + "numinlets" : 1, + "patching_rect" : [ 337.0, 137.0, 57.0, 21.0 ], + "numoutlets" : 2, + "presentation" : 1, + "id" : "obj-99", + "fontname" : "Verdana", + "outlettype" : [ "float", "bang" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "syntax:", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 358.0, 168.0, 46.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-2", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "kill hanging notes when looping", + "hidden" : 1, + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 291.0, 203.0, 168.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-13", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment end", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 433.0, 120.0, 93.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-21", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "change 0 -", + "hidden" : 1, + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 128.0, 202.0, 62.0, 19.0 ], + "numoutlets" : 3, + "id" : "obj-34", + "fontname" : "Verdana", + "outlettype" : [ "", "int", "int" ] + } + + } +, { + "box" : { + "maxclass" : "slider", + "orientation" : 1, + "numinlets" : 1, + "size" : 1001.0, + "patching_rect" : [ 262.0, 120.0, 169.0, 15.0 ], + "numoutlets" : 1, + "id" : "obj-35", + "mult" : 10.0, + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "slider", + "orientation" : 1, + "numinlets" : 1, + "size" : 1001.0, + "patching_rect" : [ 187.0, 100.0, 169.0, 15.0 ], + "numoutlets" : 1, + "id" : "obj-36", + "mult" : 10.0, + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "GM", + "fontsize" : 10.0, + "presentation_rect" : [ 127.0, 442.0, 32.5, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 203.0, 228.0, 32.5, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-37", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "panic", + "fontsize" : 10.0, + "presentation_rect" : [ 85.0, 442.0, 37.0, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 161.0, 228.0, 37.0, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-38", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "off", + "fontsize" : 10.0, + "presentation_rect" : [ 48.0, 442.0, 32.5, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 124.0, 228.0, 32.5, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-39", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "flonum", + "fontsize" : 10.0, + "triscale" : 0.9, + "numinlets" : 1, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ], + "patching_rect" : [ 262.0, 143.0, 55.0, 19.0 ], + "numoutlets" : 2, + "id" : "obj-42", + "fontname" : "Verdana", + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "outlettype" : [ "float", "bang" ] + } + + } +, { + "box" : { + "maxclass" : "flonum", + "fontsize" : 10.0, + "triscale" : 0.9, + "numinlets" : 1, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ], + "patching_rect" : [ 187.0, 143.0, 55.0, 19.0 ], + "numoutlets" : 2, + "id" : "obj-43", + "fontname" : "Verdana", + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "outlettype" : [ "float", "bang" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "ftm.midiunparse", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 112.0, 249.0, 93.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-45", + "fontname" : "Verdana", + "outlettype" : [ "" ], + "saved_object_attributes" : { + "ftm_scope" : 0, + "ftm_objref_conv" : 0 + } + + } + + } +, { + "box" : { + "maxclass" : "button", + "numinlets" : 1, + "patching_rect" : [ 337.0, 228.0, 15.0, 15.0 ], + "numoutlets" : 1, + "id" : "obj-51", + "outlettype" : [ "bang" ] + } + + } +, { + "box" : { + "maxclass" : "flonum", + "fontsize" : 10.0, + "triscale" : 0.9, + "numinlets" : 1, + "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ], + "patching_rect" : [ 215.0, 201.0, 55.0, 19.0 ], + "numoutlets" : 2, + "id" : "obj-52", + "fontname" : "Verdana", + "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], + "outlettype" : [ "float", "bang" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "ftm.play $play.seq", + "fontsize" : 18.0, + "numinlets" : 4, + "patching_rect" : [ 112.0, 166.0, 244.0, 28.0 ], + "numoutlets" : 3, + "id" : "obj-53", + "fontname" : "Verdana", + "outlettype" : [ "", "", "" ], + "saved_object_attributes" : { + "ftm_scope" : 0, + "ftm_objref_conv" : 0 + } + + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment beginning", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 358.0, 100.0, 123.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-61", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "inlet", + "numinlets" : 0, + "patching_rect" : [ 112.0, 40.0, 25.0, 25.0 ], + "numoutlets" : 1, + "id" : "obj-57", + "outlettype" : [ "" ], + "comment" : "" + } + + } +, { + "box" : { + "maxclass" : "outlet", + "numinlets" : 1, + "patching_rect" : [ 112.0, 328.0, 25.0, 25.0 ], + "numoutlets" : 0, + "id" : "obj-58", + "comment" : "" + } + + } +, { + "box" : { + "maxclass" : "outlet", + "numinlets" : 1, + "patching_rect" : [ 224.0, 328.0, 25.0, 25.0 ], + "numoutlets" : 0, + "id" : "obj-59", + "comment" : "" + } + + } + ], + "lines" : [ { + "patchline" : { + "source" : [ "obj-115", 0 ], + "destination" : [ "obj-53", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-99", 0 ], + "destination" : [ "obj-53", 3 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-37", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-38", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-39", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-53", 0 ], + "destination" : [ "obj-45", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-52", 0 ], + "destination" : [ "obj-34", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-34", 0 ], + "destination" : [ "obj-39", 0 ], + "hidden" : 1, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-36", 0 ], + "destination" : [ "obj-43", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-43", 0 ], + "destination" : [ "obj-53", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-53", 1 ], + "destination" : [ "obj-52", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-35", 0 ], + "destination" : [ "obj-42", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-42", 0 ], + "destination" : [ "obj-53", 2 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-53", 2 ], + "destination" : [ "obj-51", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-57", 0 ], + "destination" : [ "obj-53", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-45", 0 ], + "destination" : [ "obj-58", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-53", 1 ], + "destination" : [ "obj-59", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } + ] + } +, + "saved_object_attributes" : { + "globalpatchername" : "", + "fontface" : 0, + "fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "fontname" : "Arial", + "default_fontsize" : 12.0 + } + + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "pause", + "fontsize" : 10.0, + "presentation_rect" : [ 62.0, 86.0, 51.0, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 155.0, 267.0, 40.0, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-55", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "hear MIDI playing", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ -147.0, 346.0, 150.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-54", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "p weirdStarter", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 240.0, 618.0, 83.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-48", + "fontname" : "Verdana", + "outlettype" : [ "bang" ], + "patcher" : { + "fileversion" : 1, + "rect" : [ 0.0, 0.0, 640.0, 480.0 ], + "bglocked" : 0, + "defrect" : [ 0.0, 0.0, 640.0, 480.0 ], + "openrect" : [ 0.0, 0.0, 0.0, 0.0 ], + "openinpresentation" : 0, + "default_fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "gridonopen" : 0, + "gridsize" : [ 15.0, 15.0 ], + "gridsnaponopen" : 0, + "toolbarvisible" : 1, + "boxanimatetime" : 200, + "imprint" : 0, + "enablehscroll" : 1, + "enablevscroll" : 1, + "devicewidth" : 0.0, + "boxes" : [ { + "box" : { + "maxclass" : "toggle", + "numinlets" : 1, + "patching_rect" : [ 94.0, 159.0, 20.0, 20.0 ], + "numoutlets" : 1, + "id" : "obj-132", + "outlettype" : [ "int" ] + } + + } +, { + "box" : { + "maxclass" : "button", + "numinlets" : 1, + "patching_rect" : [ 95.0, 217.0, 20.0, 20.0 ], + "numoutlets" : 1, + "id" : "obj-130", + "outlettype" : [ "bang" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "0", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 92.0, 239.0, 32.5, 17.0 ], + "numoutlets" : 1, + "id" : "obj-128", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "gate", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 92.0, 192.0, 33.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-126", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "1", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 65.0, 136.0, 32.5, 17.0 ], + "numoutlets" : 1, + "id" : "obj-125", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "loadbang", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 50.0, 100.0, 56.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-123", + "fontname" : "Verdana", + "outlettype" : [ "bang" ] + } + + } +, { + "box" : { + "maxclass" : "inlet", + "numinlets" : 0, + "patching_rect" : [ 65.0, 40.0, 25.0, 25.0 ], + "numoutlets" : 1, + "id" : "obj-40", + "outlettype" : [ "bang" ], + "comment" : "" + } + + } +, { + "box" : { + "maxclass" : "inlet", + "numinlets" : 0, + "patching_rect" : [ 106.0, 40.0, 25.0, 25.0 ], + "numoutlets" : 1, + "id" : "obj-41", + "outlettype" : [ "" ], + "comment" : "" + } + + } +, { + "box" : { + "maxclass" : "outlet", + "numinlets" : 1, + "patching_rect" : [ 95.0, 331.5, 25.0, 25.0 ], + "numoutlets" : 0, + "id" : "obj-47", + "comment" : "" + } + + } + ], + "lines" : [ { + "patchline" : { + "source" : [ "obj-125", 0 ], + "destination" : [ "obj-132", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-128", 0 ], + "destination" : [ "obj-132", 0 ], + "hidden" : 0, + "midpoints" : [ 101.5, 253.0, 101.5, 264.0, 83.0, 264.0, 83.0, 155.0, 103.5, 155.0 ] + } + + } +, { + "patchline" : { + "source" : [ "obj-130", 0 ], + "destination" : [ "obj-128", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-126", 0 ], + "destination" : [ "obj-130", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-132", 0 ], + "destination" : [ "obj-126", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-123", 0 ], + "destination" : [ "obj-125", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-40", 0 ], + "destination" : [ "obj-125", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-41", 0 ], + "destination" : [ "obj-126", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-130", 0 ], + "destination" : [ "obj-47", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } + ] + } +, + "saved_object_attributes" : { + "globalpatchername" : "", + "fontface" : 0, + "fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "fontname" : "Arial", + "default_fontsize" : 12.0 + } + + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "loadmess 1", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 415.0, 762.0, 68.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-33", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "umenu", + "fontsize" : 10.0, + "presentation_rect" : [ 232.0, 138.0, 100.0, 19.0 ], + "items" : [ "off", ",", "realtime", ",", "offline" ], + "numinlets" : 1, + "types" : [ ], + "patching_rect" : [ 418.0, 792.0, 100.0, 19.0 ], + "numoutlets" : 3, + "presentation" : 1, + "id" : "obj-32", + "fontname" : "Verdana", + "outlettype" : [ "int", "", "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "switch", + "fontsize" : 10.0, + "numinlets" : 3, + "patching_rect" : [ 426.0, 856.0, 46.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-31", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "gate", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 87.0, 845.0, 33.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-30", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "78 100 2750.", + "fontsize" : 10.0, + "presentation_rect" : [ 422.0, 937.0, 201.0, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 422.0, 937.0, 201.0, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-29", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "prepend set", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 495.0, 697.0, 70.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-27", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "append", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 495.0, 725.0, 47.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-26", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "next", + "fontsize" : 10.0, + "presentation_rect" : [ 23.0, 86.0, 33.0, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 111.0, 266.0, 33.0, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-25", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "speed", + "fontsize" : 10.0, + "presentation_rect" : [ 245.0, 62.0, 150.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ 269.0, 68.0, 150.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-9", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "MIDI representation", + "fontsize" : 10.0, + "presentation_rect" : [ 16.0, -3.0, 150.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ 1141.0, 862.0, 150.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-24", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "audio", + "fontsize" : 10.0, + "presentation_rect" : [ 14.0, 119.0, 150.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ 1126.0, 847.0, 150.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-23", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "send notes", + "fontsize" : 10.0, + "presentation_rect" : [ 149.0, 169.0, 67.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ 1243.0, 894.0, 150.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-10", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "loadmess 1", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 21.0, 762.0, 68.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-3", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "midi playing on/off", + "presentation_linecount" : 2, + "fontsize" : 10.0, + "presentation_rect" : [ 215.0, 84.0, 73.0, 31.0 ], + "numinlets" : 1, + "patching_rect" : [ 712.0, 190.0, 150.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-8", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "plays midi and accompanying audio too", + "linecount" : 2, + "presentation_linecount" : 2, + "fontsize" : 10.0, + "presentation_rect" : [ 337.0, 464.0, 150.0, 31.0 ], + "numinlets" : 1, + "patching_rect" : [ 906.0, 904.0, 150.0, 31.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-6", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "toggle", + "presentation_rect" : [ 188.0, 84.0, 20.0, 20.0 ], + "numinlets" : 1, + "patching_rect" : [ -170.0, 351.0, 20.0, 20.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-4", + "outlettype" : [ "int" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "gate", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ -152.0, 368.0, 33.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-1", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "loadmess 1", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ -28.0, 861.0, 68.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-138", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "prepend /setSpeedPrior", + "fontsize" : 10.0, + "presentation_rect" : [ 128.0, 383.0, 129.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ -29.0, 923.0, 129.0, 19.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-137", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "flonum", + "fontsize" : 10.0, + "minimum" : 0.0, + "presentation_rect" : [ 133.0, 351.0, 50.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ -29.0, 884.0, 50.0, 19.0 ], + "numoutlets" : 2, + "presentation" : 1, + "id" : "obj-136", + "fontname" : "Verdana", + "outlettype" : [ "float", "bang" ] + } + + } +, { + "box" : { + "maxclass" : "button", + "numinlets" : 1, + "patching_rect" : [ 204.0, 687.0, 20.0, 20.0 ], + "numoutlets" : 1, + "id" : "obj-134", + "outlettype" : [ "bang" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "open", + "fontsize" : 10.0, + "presentation_rect" : [ 65.0, 173.0, 35.0, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 320.0, 23.0, 35.0, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-113", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "0", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 281.0, 23.0, 32.5, 17.0 ], + "numoutlets" : 1, + "id" : "obj-110", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "1", + "fontsize" : 10.0, + "presentation_rect" : [ 26.0, 173.0, 32.5, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 240.0, 23.0, 32.5, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-105", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "sfplay~ 2", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 230.0, 46.0, 58.0, 19.0 ], + "numoutlets" : 3, + "id" : "obj-65", + "fontname" : "Verdana", + "outlettype" : [ "signal", "signal", "bang" ], + "save" : [ "#N", "sfplay~", "", 2, 120960, 0, "", ";" ] + } + + } +, { + "box" : { + "maxclass" : "toggle", + "presentation_rect" : [ 126.0, 169.0, 20.0, 20.0 ], + "numinlets" : 1, + "patching_rect" : [ 74.0, 790.0, 20.0, 20.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-109", + "outlettype" : [ "int" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "zl slice 1", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 51.0, 608.0, 54.0, 19.0 ], + "numoutlets" : 2, + "id" : "obj-82", + "fontname" : "Verdana", + "outlettype" : [ "", "" ] + } + + } +, { + "box" : { + "maxclass" : "ezdac~", + "varname" : "autohelp_dac", + "presentation_rect" : [ 186.0, 14.0, 45.0, 45.0 ], + "numinlets" : 2, + "patching_rect" : [ 229.0, 91.0, 45.0, 45.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-94", + "local" : 1 + } + + } +, { + "box" : { + "maxclass" : "panel", + "varname" : "startwinwdow_panel", + "border" : 2, + "bordercolor" : [ 0.392157, 0.792157, 0.117647, 1.0 ], + "presentation_rect" : [ 15.0, 136.0, 205.0, 57.0 ], + "numinlets" : 1, + "bgcolor" : [ 1.0, 1.0, 1.0, 1.0 ], + "patching_rect" : [ 1093.0, 826.0, 100.0, 55.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-95" + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "zl join", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 123.0, 777.0, 41.0, 19.0 ], + "numoutlets" : 2, + "id" : "obj-83", + "fontname" : "Verdana", + "outlettype" : [ "", "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "- 0.", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 137.0, 746.0, 32.5, 19.0 ], + "numoutlets" : 1, + "id" : "obj-80", + "fontname" : "Verdana", + "outlettype" : [ "float" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "t l b", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 123.0, 688.0, 32.5, 19.0 ], + "numoutlets" : 2, + "id" : "obj-79", + "fontname" : "Verdana", + "outlettype" : [ "", "bang" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "cpuclock", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 204.0, 717.0, 53.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-78", + "fontname" : "Verdana", + "outlettype" : [ "float" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "cpuclock", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 137.0, 716.0, 53.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-76", + "fontname" : "Verdana", + "outlettype" : [ "float" ] + } + + } +, { + "box" : { + "maxclass" : "button", + "numinlets" : 1, + "patching_rect" : [ 284.0, 534.0, 20.0, 20.0 ], + "numoutlets" : 1, + "id" : "obj-71", + "outlettype" : [ "bang" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "/stopplaying", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 283.0, 569.0, 73.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-72", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "button", + "numinlets" : 1, + "patching_rect" : [ 418.0, -27.0, 20.0, 20.0 ], + "numoutlets" : 1, + "id" : "obj-70", + "outlettype" : [ "bang" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "/startplaying", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 241.0, 653.0, 75.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-63", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "prepend /midinoteon", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 262.0, 939.0, 116.0, 19.0 ], + "numoutlets" : 1, + "id" : "obj-69", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "udpsend 127.0.0.1 12121", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 229.0, 962.0, 141.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-68", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "78 100", + "fontsize" : 10.0, + "numinlets" : 2, + "patching_rect" : [ 58.0, 637.0, 50.0, 17.0 ], + "numoutlets" : 1, + "id" : "obj-67", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "ftm.object", + "text" : "sequence midi", + "description" : "sequence midi", + "persistence" : 0, + "ftm_scope" : 2, + "fontsize" : 12.0, + "presentation_rect" : [ 712.0, 250.0, 161.785156, 20.0 ], + "ftm_objref_conv" : 0, + "numinlets" : 1, + "editor_interface" : "matrix", + "patching_rect" : [ 712.0, 250.0, 161.785156, 20.0 ], + "numoutlets" : 2, + "id" : "obj-14", + "fontname" : "Verdana", + "scope" : 0, + "name" : "play.seq", + "outlettype" : [ "", "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "import", + "fontsize" : 10.0, + "presentation_rect" : [ 15.0, 57.0, 43.0, 17.0 ], + "numinlets" : 2, + "patching_rect" : [ 712.0, 222.0, 43.0, 17.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-15", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "import MIDI file", + "fontsize" : 10.0, + "presentation_rect" : [ 60.0, 56.0, 90.0, 19.0 ], + "numinlets" : 1, + "patching_rect" : [ 757.0, 221.0, 90.0, 19.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-16", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "play an FTM track", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 60.0, 23.0, 98.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-17", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "ftm.play", + "fontsize" : 24.0, + "numinlets" : 1, + "patching_rect" : [ 54.0, -10.0, 108.0, 36.0 ], + "numoutlets" : 0, + "id" : "obj-18", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "FTM basic objects", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 48.0, -22.0, 97.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-19", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "fpic", + "numinlets" : 1, + "patching_rect" : [ 8.0, -25.0, 54.0, 74.0 ], + "numoutlets" : 0, + "pic" : "ftm.help.jpg", + "id" : "obj-20" + } + + } +, { + "box" : { + "maxclass" : "newobj", + "text" : "midiout", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ -146.0, 396.0, 48.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-44", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "play", + "fontsize" : 18.0, + "presentation_rect" : [ 25.0, 17.0, 52.0, 26.0 ], + "numinlets" : 2, + "patching_rect" : [ 424.0, 52.0, 52.0, 26.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-46", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "message", + "text" : "stop", + "fontsize" : 18.0, + "presentation_rect" : [ 93.0, 19.0, 51.0, 26.0 ], + "numinlets" : 2, + "patching_rect" : [ 539.0, 55.0, 51.0, 26.0 ], + "numoutlets" : 1, + "presentation" : 1, + "id" : "obj-49", + "fontname" : "Verdana", + "outlettype" : [ "" ] + } + + } +, { + "box" : { + "maxclass" : "comment", + "text" : "set segment (track, begin, end and speed)", + "fontsize" : 10.0, + "numinlets" : 1, + "patching_rect" : [ 402.0, 91.0, 226.0, 19.0 ], + "numoutlets" : 0, + "id" : "obj-56", + "fontname" : "Verdana" + } + + } +, { + "box" : { + "maxclass" : "panel", + "varname" : "startwinwdow_panel[1]", + "border" : 2, + "bordercolor" : [ 0.392157, 0.792157, 0.117647, 1.0 ], + "presentation_rect" : [ 13.0, 13.0, 167.0, 98.0 ], + "numinlets" : 1, + "bgcolor" : [ 1.0, 1.0, 1.0, 1.0 ], + "patching_rect" : [ 1093.0, 886.0, 100.0, 55.0 ], + "numoutlets" : 0, + "presentation" : 1, + "id" : "obj-5" + } + + } + ], + "lines" : [ { + "patchline" : { + "source" : [ "obj-31", 0 ], + "destination" : [ "obj-69", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-74", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-64", 1 ], + "destination" : [ "obj-74", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-73", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-64", 0 ], + "destination" : [ "obj-73", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-32", 0 ], + "destination" : [ "obj-64", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-49", 0 ], + "destination" : [ "obj-60", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-46", 0 ], + "destination" : [ "obj-60", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-25", 0 ], + "destination" : [ "obj-60", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-55", 0 ], + "destination" : [ "obj-60", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-60", 0 ], + "destination" : [ "obj-82", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-60", 0 ], + "destination" : [ "obj-1", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-60", 1 ], + "destination" : [ "obj-27", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-71", 0 ], + "destination" : [ "obj-48", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-82", 1 ], + "destination" : [ "obj-48", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-48", 0 ], + "destination" : [ "obj-63", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-31", 0 ], + "destination" : [ "obj-29", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-32", 0 ], + "destination" : [ "obj-31", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-33", 0 ], + "destination" : [ "obj-32", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-30", 0 ], + "destination" : [ "obj-31", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-26", 0 ], + "destination" : [ "obj-31", 2 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-83", 0 ], + "destination" : [ "obj-30", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-109", 0 ], + "destination" : [ "obj-30", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-82", 1 ], + "destination" : [ "obj-26", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-27", 0 ], + "destination" : [ "obj-26", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-4", 0 ], + "destination" : [ "obj-1", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-1", 0 ], + "destination" : [ "obj-44", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-65", 1 ], + "destination" : [ "obj-94", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-65", 0 ], + "destination" : [ "obj-94", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-110", 0 ], + "destination" : [ "obj-65", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-105", 0 ], + "destination" : [ "obj-65", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-113", 0 ], + "destination" : [ "obj-65", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-70", 0 ], + "destination" : [ "obj-105", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-79", 0 ], + "destination" : [ "obj-83", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-82", 1 ], + "destination" : [ "obj-67", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-49", 0 ], + "destination" : [ "obj-71", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-72", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-71", 0 ], + "destination" : [ "obj-72", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-63", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-46", 0 ], + "destination" : [ "obj-70", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-15", 0 ], + "destination" : [ "obj-14", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-69", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-79", 1 ], + "destination" : [ "obj-76", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-78", 0 ], + "destination" : [ "obj-80", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-76", 0 ], + "destination" : [ "obj-80", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-80", 0 ], + "destination" : [ "obj-83", 1 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-63", 0 ], + "destination" : [ "obj-134", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-134", 0 ], + "destination" : [ "obj-78", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-138", 0 ], + "destination" : [ "obj-136", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-137", 0 ], + "destination" : [ "obj-68", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-136", 0 ], + "destination" : [ "obj-137", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-82", 1 ], + "destination" : [ "obj-79", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-71", 0 ], + "destination" : [ "obj-110", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } +, { + "patchline" : { + "source" : [ "obj-3", 0 ], + "destination" : [ "obj-109", 0 ], + "hidden" : 0, + "midpoints" : [ ] + } + + } + ] + } + +} diff -r 9e972948d654 -r f0abb0e414ec src/CannamMidiFileLoader.cpp --- a/src/CannamMidiFileLoader.cpp Tue Nov 15 13:10:12 2011 +0000 +++ b/src/CannamMidiFileLoader.cpp Tue Nov 15 19:35:05 2011 +0000 @@ -11,7 +11,7 @@ #include "CannamMidiFileLoader.h" CannamMidiFileLoader::CannamMidiFileLoader(){ - chopBeginning = true; + chopBeginning = false; } int CannamMidiFileLoader::loadFile(std::string& filename, midiEventHolder& myMidiEvents){ @@ -154,7 +154,6 @@ if (noteOnIndex == 0){ - firstNoteTime = myMidiEvents.getEventTimeMillis(t); firstTickTime = t; } @@ -172,13 +171,6 @@ v.push_back(j->getDuration()); myMidiEvents.recordedNoteOnMatrix.push_back(v); - if (!chopBeginning) - myMidiEvents.recordedEventTimes.push_back(myMidiEvents.getEventTimeMillis(t)); - else { - myMidiEvents.recordedEventTimes.push_back(myMidiEvents.getEventTimeMillis(t) - firstNoteTime); - // printf("chopping beginning %f \n", myMidiEvents.getEventTimeMillis(t) - firstNoteTime); - } - myMidiEvents.noteOnMatches.push_back(false); break; @@ -251,10 +243,29 @@ } + + myMidiEvents.printRecordedEvents(); + printf("|||||||||||||||||||||| \n\n\n\n\n\n\n"); + myMidiEvents.reorderMatrixFromNoteTimes(myMidiEvents.recordedNoteOnMatrix); + myMidiEvents.correctTiming(myMidiEvents.recordedNoteOnMatrix); + + + long t; + t = myMidiEvents.recordedNoteOnMatrix[0][0]; + firstNoteTime = myMidiEvents.getEventTimeMillis(t); + + for (int i = 0; i < myMidiEvents.recordedNoteOnMatrix.size();i++){ + t = myMidiEvents.recordedNoteOnMatrix[i][0]; + if (!chopBeginning) + myMidiEvents.recordedEventTimes.push_back(myMidiEvents.getEventTimeMillis(t)); + else { + myMidiEvents.recordedEventTimes.push_back(myMidiEvents.getEventTimeMillis(t) - firstNoteTime); - - + } + } + myMidiEvents.printRecordedEvents(); + }//end cannam midi main diff -r 9e972948d654 -r f0abb0e414ec src/midiEventHolder.cpp --- a/src/midiEventHolder.cpp Tue Nov 15 13:10:12 2011 +0000 +++ b/src/midiEventHolder.cpp Tue Nov 15 19:35:05 2011 +0000 @@ -665,5 +665,64 @@ printf("\n"); } +} + + + +void midiEventHolder::printRecordedEvents(){ + printf("Recorded Events:\n"); + for (int i = 0;i < recordedNoteOnMatrix.size() && i < recordedEventTimes.size();i++){ + for (int k = 0;k < recordedNoteOnMatrix[i].size();k++){ + printf("[%i] = %i ,", i, recordedNoteOnMatrix[i][k]); + } + printf("time %f \n", recordedEventTimes[i]); + } -} \ No newline at end of file +} + + + +void midiEventHolder::reorderMatrixFromNoteTimes(IntMatrix& noteOnMatrix){ + double currentTime = -19999.; + for (int i = 0;i < noteOnMatrix.size();i++){ + int nextIndex = getIndexOfMinimumAboveTime(currentTime, noteOnMatrix); + cout << "index of min time " << currentTime << " is " << nextIndex << " at time " << noteOnMatrix[nextIndex][0] << endl; + // cout << "next index " << nextIndex << " time " << noteOnMatrix[nextIndex][0] << endl; + if (nextIndex >= 0 && nextIndex > i && noteOnMatrix[nextIndex][0] < noteOnMatrix[i][0] ){ + //which it should be + cout << " index " << nextIndex << " at time " << noteOnMatrix[nextIndex][0] << " swaps with inex " << i << " at time " << noteOnMatrix[i][0] << endl; + noteOnMatrix[i].swap(noteOnMatrix[nextIndex]); + currentTime = noteOnMatrix[i][0]; + } + + } + + +} + +int midiEventHolder::getIndexOfMinimumAboveTime(const double& time, IntMatrix& noteOnMatrix){ + int index = 0; + double minimumTime = 100000000.; + int bestIndex = -1; + while (index < noteOnMatrix.size()){ + + if (noteOnMatrix[index][0] > time && noteOnMatrix[index][0] < minimumTime){ + bestIndex = index; + minimumTime = noteOnMatrix[index][0]; + } + index++; + } + return bestIndex; +} + + +void midiEventHolder::correctTiming(IntMatrix& noteOnMatrix){ + + if (noteOnMatrix.size() > 0 && noteOnMatrix[0][0] < 0) { + int offset = noteOnMatrix[0][0]; + for (int i = 0;i < noteOnMatrix.size();i++){ + noteOnMatrix[i][0] -= offset; + } + } + +} diff -r 9e972948d654 -r f0abb0e414ec src/midiEventHolder.h --- a/src/midiEventHolder.h Tue Nov 15 13:10:12 2011 +0000 +++ b/src/midiEventHolder.h Tue Nov 15 19:35:05 2011 +0000 @@ -77,6 +77,7 @@ double likelihoodToNoiseRatio; void printMatchMatrix(); + void printRecordedEvents(); void setMatchLikelihoods(int numberOfMatches); @@ -128,5 +129,8 @@ double minimumMatchError;//recent best error between observed note and aligned midi file + void reorderMatrixFromNoteTimes(IntMatrix& noteOnMatrix); + int getIndexOfMinimumAboveTime(const double& time, IntMatrix& noteOnMatrix); + void correctTiming(IntMatrix& noteOnMatrix); }; #endif \ No newline at end of file