Looping forward and backward with groove~?

Jul 12, 2006 at 7:13pm

Looping forward and backward with groove~?

I am trying to make a patch, where I play a .wav-sample forward and if it reached its end then beckward again. I want this loops to be pitchable, so I thought it would be nice to do this with groove~.

But I didn’t figure out, to play the loop backwards if its reached its end… Any help? Any workaround?

#26777
Jul 12, 2006 at 7:52pm

groove~ plays backwards when the pitch value sent
to it is negative (e.g. -0.5)

#80488
Jul 12, 2006 at 7:57pm

On 12 Jul 2006, at 21:13, Martin Wisniowski wrote:

> But I didn’t figure out, to play the loop backwards if its reached
> its end… Any help? Any workaround?

Feed groove~ a triangle wave.

nick rothwell — composition, systems, performance — http://
http://www.cassiel.com

#80489
Jul 12, 2006 at 8:14pm

#80490
Jul 12, 2006 at 9:11pm

Yeah. But I did not figure out how to detect “end” of the loop best way in MSP-accurate timing…

#80491
Jul 12, 2006 at 10:43pm

download revel by ollie bown,
in this beautiful package:

http://www.icarus.nu

(search under software patches)

:-)

tom

#80492
Jul 12, 2006 at 10:50pm

Hi

I’m looking for information on how to integrate GPS devices with
MAX-MSP -
are there converters / patches which exist to make the linkage? Is
there available
documentation on this integration?

Any help would be most welcome!

Cheers

Marc

#80493
Jul 12, 2006 at 11:19pm

Great! Thanks. The xsample does ist very fine!

#80494
Jul 12, 2006 at 11:20pm

Something like this? It uses a triangle~ with play~ instead of
groove~, but the idea is essentially the same. It outputs a
synchronized bang you can use for many things, including driving
groove~.
If you want to loop over small portions of a buffer, that will require
some additional calculation, but setting the lo and hi points of the
triangle~ should provide that.

– Paul

#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 304 447 37 196617 *~ 0.;
#P newex 304 472 60 196617 play~ mogo;
#B color 14;
#P flonum 351 503 35 9 0. 2. 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 304 503 40 196617 *~ 0.5;
#P message 354 552 27 196617 stop;
#P message 317 534 65 196617 startwindow;
#P newex 328 576 30 196617 dac~;
#P user panel 296 527 112 72;
#X brgb 255 255 255;
#X frgb 55 199 76;
#X border 2;
#X rounded 0;
#X shadow 0;
#X done;
#P flonum 87 164 64 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P button 198 416 15 0;
#P newex 87 138 41 196617 * 2.;
#P window linecount 6;
#P comment 246 130 84 196617 duration values update at the end of
previous cycle if gate is open. Also enables a bang for sync.;
#P window linecount 1;
#P comment 172 99 60 196617 update now;
#P flonum 87 112 58 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P button 87 45 15 0;
#P message 237 45 42 196617 replace;
#P newex 87 65 125 196617 info~ mogo;
#P newex 237 65 93 196617 buffer~ mogo;
#P comment 92 99 52 196617 duration;
#P comment 236 99 60 196617 gate on/off;
#P user scope~ 74 511 206 599 256 3 128 -1. 1. 0 0. 0 0. 102 255 51
135 135 135 0;
#P newex 160 258 55 196617 loadbang;
#P message 160 282 57 196617 lo 0. , hi 1.;
#P newex 74 391 69 196617 triangle~ 0.5;
#P button 173 112 15 0;
#P newex 198 391 34 196617 t b b;
#P newex 87 236 49 196617 v bw321;
#P newex 87 258 64 196617 change 0.;
#P toggle 237 113 15 0;
#P flonum 87 210 56 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 87 189 48 196617 !/ 1000.;
#P newex 87 313 35 196617 delta~;
#P newex 87 334 31 196617 < ~ 0.;
#P newex 87 358 35 196617 edge~;
#P newex 87 282 63 196617 phasor~ 1.;
#P toggle 148 391 15 0;
#P objectname toggle;
#P newex 164 391 27 196617 gate;
#P comment 216 416 100 196617 a bang to sync with;
#P fasten 3 0 14 0 92 305 79 305;
#P fasten 15 0 14 0 165 344 125 384 79 384;
#P connect 14 0 17 0;
#P fasten 20 1 23 0 325 86 336 86 336 39 92 39;
#P connect 23 0 21 0;
#P fasten 21 6 24 0 188 92 92 92;
#P connect 24 0 27 0;
#P connect 27 0 29 0;
#P connect 29 0 7 0;
#P connect 7 0 8 0;
#P fasten 13 0 11 0 178 230 92 230;
#P connect 8 0 11 0;
#P fasten 12 1 11 0 227 412 235 412 235 230 92 230;
#P connect 11 0 10 0;
#P connect 10 0 3 0;
#P fasten 3 0 6 0 92 306 92 306;
#P connect 6 0 5 0;
#P connect 5 0 4 0;
#P fasten 9 0 2 0 242 280 153 369;
#P connect 16 0 15 0;
#P hidden connect 2 0 1 0;
#P fasten 4 0 1 1 92 379 186 379;
#P fasten 1 0 12 0 169 412 194 412 194 386 203 386;
#P connect 12 0 28 0;
#P connect 22 0 20 0;
#P fasten 14 0 37 0 79 438 309 438;
#P connect 37 0 36 0;
#P connect 36 0 34 0;
#P connect 32 0 31 0;
#P fasten 33 0 31 0 359 571 333 571;
#P fasten 34 0 31 0 309 571 333 571;
#P fasten 21 6 37 1 188 92 336 92;
#P fasten 35 0 34 1 356 522 347 522 347 499 339 499;
#P window clipboard copycount 38;


—– |(*,+,#,=)(#,=,*,+)(=,#,+,*)(+,*,=,#)| —–

#80495
Jul 20, 2006 at 8:49am

check for reaching the end, I use edge~ for that:

#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 54 87 13 196617 b;
#P newex 46 134 27 196617 sig~;
#P number 99 41 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 99 64 150 196617 expr exp(0.057762265 * $f1);
#P newex 46 64 50 196617 t 1 0.;
#P toggle 46 21 15 0;
#P newex 46 41 35 196617 sel 1;
#P newex 165 237 26 196617 t 1;
#P newex 126 237 26 196617 t -1;
#P user ezdac~ 46 186 90 219 0;
#P newex 138 186 31 196617 >~ 0;
#P newex 138 208 37 196617 edge~;
#P newex 99 186 31 196617 < ~ 1;
#P newex 99 208 37 196617 edge~;
#P newex 46 114 27 196617 * 1.;
#P newex 46 159 102 196617 groove~ hitme;
#B color 5;
#P message 201 109 28 196617 read;
#P newex 201 131 95 196617 buffer~ hitme 2000;
#B color 15;
#P comment 199 92 100 196617 open a sample file;
#P comment 137 43 100 196617 half-steps pitched;
#P fasten 16 0 19 0 104 84 59 84;
#P fasten 16 0 5 1 104 104 68 104;
#P connect 19 0 5 0;
#P connect 8 1 12 0;
#P fasten 12 0 5 0 170 258 193 258 193 108 51 108;
#P connect 6 1 11 0;
#P fasten 11 0 5 0 131 258 193 258 193 108 51 108;
#P fasten 13 1 5 0 76 108 51 108;
#P connect 15 0 5 0;
#P connect 5 0 18 0;
#P connect 18 0 4 0;
#P connect 17 0 16 0;
#P connect 4 1 7 0;
#P connect 4 1 9 0;
#P connect 4 0 10 0;
#P fasten 15 1 4 0 91 153 51 153;
#P connect 13 0 15 0;
#P connect 14 0 13 0;
#P connect 9 0 8 0;
#P connect 7 0 6 0;
#P connect 3 0 2 0;
#P window clipboard copycount 20;


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#80496

You must be logged in to reply to this topic.