Forums > MaxMSP

Ping pong speed using groove and waveform

November 25, 2009 | 8:23 am

Hi everyone !
Maybe someone could help me for that.

I’m trying to do a ping pong effect with the speed. So, when my sound begins, it’s played with a forward speed, and when it reached the loop max, it’s played with a backward speed.

The tool work, but when I move the loop min and max into the waveform, the effect goes nuts and the sounds stops or doesn’t play the good loop selection ! Especially with a backward speed and if I selected a loop completely different from the previous one.

Any idea to improve this effect ? I use edge~ and ==~ to do this but maybe there’s a better way to do that ? I also use the groove with loop off and I think that’s why I got troubles, so if someone have a solution using the loop mode on, it would be great !

Thanks.

Sorry I don’t know how to post a patch, so I give it to you like this :

{
"patcher" : {
"fileversion" : 1,
"rect" : [ 167.0, 46.0, 1028.0, 823.0 ],
"bglocked" : 0,
"defrect" : [ 167.0, 46.0, 1028.0, 823.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" : [ 2.0, 2.0 ],
"gridsnaponopen" : 0,
"toolbarvisible" : 1,
"boxanimatetime" : 200,
"imprint" : 0,
"boxes" : [ {
"box" : {
"maxclass" : "newobj",
"text" : "loadmess 1",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-12",
"fontsize" : 12.0,
"patching_rect" : [ 682.0, 256.0, 72.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "message",
"text" : "set hitme",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-25",
"fontsize" : 11.595187,
"patching_rect" : [ 296.0, 76.0, 58.0, 18.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "waveform~",
"buffername" : "hitme",
"numoutlets" : 6,
"outlettype" : [ "float", "float", "float", "float", "list", "" ],
"id" : "obj-21",
"textcolor" : [ ],
"patching_rect" : [ 296.0, 106.0, 413.0, 92.0 ],
"setmode" : 1,
"numinlets" : 5
}

}
, {
"box" : {
"maxclass" : "button",
"numoutlets" : 1,
"outlettype" : [ "bang" ],
"id" : "obj-24",
"patching_rect" : [ 444.0, 552.0, 39.0, 39.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "button",
"numoutlets" : 1,
"outlettype" : [ "bang" ],
"id" : "obj-22",
"patching_rect" : [ 400.0, 552.0, 39.0, 39.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "edge~",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "bang", "bang" ],
"id" : "obj-11",
"fontsize" : 12.0,
"patching_rect" : [ 446.0, 462.0, 44.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "edge~",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "bang", "bang" ],
"id" : "obj-9",
"fontsize" : 12.0,
"patching_rect" : [ 396.0, 470.0, 44.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "prepend set",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-67",
"fontsize" : 12.0,
"patching_rect" : [ 696.0, 412.0, 74.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "prepend set",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-66",
"fontsize" : 12.0,
"patching_rect" : [ 682.0, 356.0, 74.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "flonum",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "float", "bang" ],
"id" : "obj-64",
"maximum" : 0.0,
"fontsize" : 12.0,
"patching_rect" : [ 694.0, 444.0, 109.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "flonum",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "float", "bang" ],
"minimum" : 0.0,
"id" : "obj-65",
"fontsize" : 12.0,
"patching_rect" : [ 692.0, 466.0, 109.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "t f f",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "float", "float" ],
"id" : "obj-63",
"fontsize" : 12.0,
"patching_rect" : [ 682.0, 326.0, 32.5, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "* -1.",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "float" ],
"id" : "obj-58",
"fontsize" : 12.0,
"patching_rect" : [ 696.0, 384.0, 33.0, 20.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "f",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "float" ],
"id" : "obj-51",
"fontsize" : 12.0,
"patching_rect" : [ 448.0, 502.0, 32.5, 20.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "f",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "float" ],
"id" : "obj-32",
"fontsize" : 12.0,
"patching_rect" : [ 394.0, 502.0, 32.5, 20.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "flonum",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "float", "bang" ],
"id" : "obj-10",
"fontsize" : 12.0,
"patching_rect" : [ 682.0, 280.0, 109.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : ">=~ 1.",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "signal" ],
"id" : "obj-8",
"fontsize" : 12.0,
"patching_rect" : [ 444.0, 440.0, 45.0, 20.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "==~ 0.",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "signal" ],
"id" : "obj-2",
"fontsize" : 12.0,
"patching_rect" : [ 396.0, 444.0, 45.0, 20.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "number~",
"numoutlets" : 2,
"fontname" : "Arial",
"sig" : 0.0,
"outlettype" : [ "signal", "float" ],
"id" : "obj-1",
"fontsize" : 12.0,
"mode" : 2,
"patching_rect" : [ 456.0, 332.0, 56.0, 20.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "flonum",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "float", "bang" ],
"id" : "obj-7",
"fontsize" : 11.595187,
"patching_rect" : [ 222.0, 373.0, 50.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "ezdac~",
"varname" : "autohelp_dac",
"numoutlets" : 0,
"id" : "obj-3",
"local" : 1,
"patching_rect" : [ 167.0, 438.0, 45.0, 45.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "*~ 1.",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "signal" ],
"id" : "obj-4",
"fontsize" : 11.595187,
"patching_rect" : [ 167.0, 401.0, 74.0, 20.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "button",
"numoutlets" : 1,
"outlettype" : [ "bang" ],
"id" : "obj-15",
"patching_rect" : [ 47.0, 152.0, 20.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "message",
"text" : "startloop",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-17",
"fontsize" : 11.595187,
"patching_rect" : [ 23.0, 277.0, 53.0, 18.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "message",
"text" : "stop",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-18",
"fontsize" : 11.595187,
"patching_rect" : [ 24.0, 254.0, 30.0, 18.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "flonum",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "float", "bang" ],
"id" : "obj-20",
"fontsize" : 11.595187,
"patching_rect" : [ 47.0, 177.0, 50.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "toggle",
"numoutlets" : 1,
"outlettype" : [ "int" ],
"id" : "obj-27",
"patching_rect" : [ 190.0, 271.0, 20.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "message",
"text" : "loop $1",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-28",
"fontsize" : 11.595187,
"patching_rect" : [ 190.0, 296.0, 49.0, 18.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "toggle",
"numoutlets" : 1,
"outlettype" : [ "int" ],
"id" : "obj-33",
"patching_rect" : [ 167.0, 163.0, 20.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "sig~",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "signal" ],
"id" : "obj-34",
"fontsize" : 11.595187,
"patching_rect" : [ 167.0, 191.0, 30.0, 20.0 ],
"numinlets" : 1
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "groove~ hitme",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "signal", "signal" ],
"id" : "obj-35",
"fontsize" : 11.595187,
"patching_rect" : [ 167.0, 320.0, 261.0, 20.0 ],
"numinlets" : 3
}

}
, {
"box" : {
"maxclass" : "message",
"text" : "replace",
"numoutlets" : 1,
"fontname" : "Arial",
"outlettype" : [ "" ],
"id" : "obj-36",
"fontsize" : 11.595187,
"patching_rect" : [ 226.0, 27.0, 49.0, 18.0 ],
"numinlets" : 2
}

}
, {
"box" : {
"maxclass" : "newobj",
"text" : "buffer~ hitme 0",
"numoutlets" : 2,
"fontname" : "Arial",
"outlettype" : [ "float", "bang" ],
"id" : "obj-37",
"fontsize" : 11.595187,
"patching_rect" : [ 226.0, 50.0, 88.0, 20.0 ],
"numinlets" : 1
}

}
],
"lines" : [ {
"patchline" : {
"source" : [ "obj-25", 0 ],
"destination" : [ "obj-21", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-37", 1 ],
"destination" : [ "obj-25", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-21", 3 ],
"destination" : [ "obj-35", 2 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-21", 2 ],
"destination" : [ "obj-35", 1 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-11", 0 ],
"destination" : [ "obj-24", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-9", 0 ],
"destination" : [ "obj-22", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-10", 0 ],
"destination" : [ "obj-63", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-36", 0 ],
"destination" : [ "obj-37", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-11", 0 ],
"destination" : [ "obj-51", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-9", 0 ],
"destination" : [ "obj-32", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-67", 0 ],
"destination" : [ "obj-64", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-58", 0 ],
"destination" : [ "obj-67", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-66", 0 ],
"destination" : [ "obj-65", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-63", 0 ],
"destination" : [ "obj-66", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-64", 0 ],
"destination" : [ "obj-51", 1 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-65", 0 ],
"destination" : [ "obj-32", 1 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-63", 1 ],
"destination" : [ "obj-58", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-58", 0 ],
"destination" : [ "obj-51", 1 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-63", 0 ],
"destination" : [ "obj-32", 1 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-10", 0 ],
"destination" : [ "obj-34", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-20", 0 ],
"destination" : [ "obj-35", 0 ],
"hidden" : 1,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-15", 0 ],
"destination" : [ "obj-20", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-35", 0 ],
"destination" : [ "obj-4", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-7", 0 ],
"destination" : [ "obj-4", 1 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-4", 0 ],
"destination" : [ "obj-3", 1 ],
"hidden" : 0,
"midpoints" : [ 176.5, 429.0, 202.5, 429.0 ]
}

}
, {
"patchline" : {
"source" : [ "obj-4", 0 ],
"destination" : [ "obj-3", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-17", 0 ],
"destination" : [ "obj-35", 0 ],
"hidden" : 1,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-18", 0 ],
"destination" : [ "obj-35", 0 ],
"hidden" : 1,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-28", 0 ],
"destination" : [ "obj-35", 0 ],
"hidden" : 1,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-34", 0 ],
"destination" : [ "obj-35", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-27", 0 ],
"destination" : [ "obj-28", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-35", 1 ],
"destination" : [ "obj-1", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-33", 0 ],
"destination" : [ "obj-34", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-2", 0 ],
"destination" : [ "obj-9", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-35", 1 ],
"destination" : [ "obj-2", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-35", 1 ],
"destination" : [ "obj-8", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-8", 0 ],
"destination" : [ "obj-11", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-12", 0 ],
"destination" : [ "obj-10", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-51", 0 ],
"destination" : [ "obj-34", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
, {
"patchline" : {
"source" : [ "obj-32", 0 ],
"destination" : [ "obj-34", 0 ],
"hidden" : 0,
"midpoints" : [ ]
}

}
]
}

}


November 26, 2009 | 1:17 pm

No ideas for my problem ?


November 26, 2009 | 10:54 pm

Sorry for the mess, I finally find out how to post a patch in text format !

– Pasted Max Patch, click to expand. –

Viewing 3 posts - 1 through 3 (of 3 total)