Granular time stretch = high f filter !?

Feb 26, 2007 at 10:30am

Granular time stretch = high f filter !?

Hi max list,

I’ve been using Nathan Wolek’s granular toolkit objects to build a granular time stretcher with independant speed and pitch control. However, when a stretch or pitch shift is applied it also seems to be filtering the high frequencies.

I’m at a complete loss as to how this is happening, so any insight into how my patch is filtering the high frequencies or how I can cure it would be much appreciated.

Thanks,

Mike

Patch is as follows:

max v2;
#N vpatcher 0 44 1116 854;
#P origin 69 -448;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 227 749 27 196617 +~;
#P newex 935 687 166 196617 grain.phase~ granulate window;
#P newex 748 687 166 196617 grain.phase~ granulate window;
#P newex 570 687 166 196617 grain.phase~ granulate window;
#P newex 393 688 166 196617 grain.phase~ granulate window;
#P comment 542 352 32 196617 Speed;
#P flonum 675 394 64 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 690 358 31 196617 !/ 1.;
#P newex 888 266 27 196617 + 1.;
#P newex 598 502 27 196617 +~;
#P button 650 308 15 0;
#P comment 954 225 83 196617 Loop lenght (mS);
#P flonum 891 223 59 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 891 199 27 196617 – 0.;
#P user pictslider 487 75 19 76 0 0 0 0 wfknob.pct 1 wfmodes.pct 1 2146 0 0 196608 1. 1.;
#N vpatcher 40 55 278 404;
#P window setfont “Sans Serif” 9.;
#P newex 96 202 27 196617 int;
#N coll ;
#T flags 1 0;
#T 0 mode select;
#T 1 mode loop;
#T 2 mode move;
#T 3 mode draw;
#P newobj 131 255 53 196617 coll;
#P button 75 117 15 0;
#N comlet waveform~ mode messages;
#P inlet 74 164 15 0;
#P newex 113 88 27 196617 < < 1;
#P newex 96 140 40 196617 change;
#P newex 96 164 45 196617 select 0;
#P newex 96 117 27 196617 |;
#P outlet 131 284 15 0;
#P newex 45 62 78 196617 modifiers 100;
#P connect 5 0 7 0;
#P connect 0 3 2 0;
#P connect 7 0 2 0;
#P connect 2 0 4 0;
#P connect 4 0 3 0;
#P connect 3 0 9 0;
#P connect 6 0 9 0;
#P connect 0 4 5 0;
#P connect 5 0 2 1;
#P connect 9 0 8 0;
#P connect 3 1 8 0;
#P connect 8 0 1 0;
#P pop;
#P hidden newobj 423 10 50 196617 p wfkeys;
#P flonum 364 168 100 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 730 165 135 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 591 165 135 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 466 166 100 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 418 55 78 196617 set granulate 1;
#P user waveform~ 509 1 396 163 3 9;
#W mode move;
#W mouseoutput continuous;
#W unit ms;
#W grid 1000.;
#W ticks 0;
#W labels 1;
#W vlabels 0;
#W vticks 1;
#W bpm 120. 4.;
#W frgb 33 0 0;
#W brgb 60 178 173;
#W rgb2 0 95 255;
#W rgb3 0 0 0;
#W rgb4 0 0 0;
#W rgb5 190 137 255;
#W rgb6 100 100 100;
#W rgb7 100 100 100;
#P flonum 482 367 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P user number~ 675 503 777 518 9 3 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 227 513 49 196617 !/ 1000.;
#P number 227 492 55 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 581 622 166 196617 grain.phase~ granulate window;
#P user number~ 694 433 781 448 9 3 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 806 335 47 196617 * 0.001;
#P button 901 292 15 0;
#P newex 675 477 35 196617 *~ 1.;
#P flonum 888 314 120 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 540 369 45 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 675 417 46 196617 phasor~;
#P newex 760 622 166 196617 grain.phase~ granulate window;
#P flonum 227 539 46 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 404 622 166 196617 grain.phase~ granulate window;
#P newex 227 561 105 196617 phasor.shift~ 8;
#P user ezdac~ 225 913 269 946 0;
#P user gain~ 227 774 24 100 158 0 1.071519 7.94321 10.;
#P newex 227 622 166 196617 grain.phase~ granulate window;
#P message 296 363 30 196617 read;
#P newex 296 389 81 196617 buffer~ window;
#P message 153 366 30 196617 read;
#P newex 153 388 89 196617 buffer~ granulate;
#P window linecount 2;
#P comment 185 359 100 196617 buffers soundfile into RAM;
#P comment 330 361 134 196617 buffers quasi gaussian wave into RAM for windowing;
#P window linecount 1;
#P comment 284 493 100 196617 grain duration (mS);
#P window linecount 3;
#P comment 274 516 100 196617 1000mS / grain duration = frequency of windowing (Hz);
#P window linecount 1;
#P comment 481 350 32 196617 Pitch;
#P connect 6 0 5 0;
#P connect 10 0 11 0;
#P connect 24 0 25 0;
#P connect 25 0 14 0;
#P connect 14 0 12 0;
#P connect 12 0 9 0;
#P fasten 15 0 49 0 765 669 232 669;
#P fasten 23 0 49 0 586 659 232 659;
#P fasten 13 0 49 0 409 652 232 652;
#P connect 9 0 49 0;
#P connect 49 0 10 0;
#P fasten 48 0 49 1 940 738 249 738;
#P fasten 47 0 49 1 753 732 249 732;
#P fasten 46 0 49 1 575 723 249 723;
#P fasten 45 0 49 1 398 713 249 713;
#P connect 10 0 11 1;
#P connect 8 0 7 0;
#P connect 40 0 9 1;
#P connect 28 0 33 0;
#P connect 27 0 9 2;
#P fasten 12 4 45 0 284 600 398 600;
#P fasten 12 1 13 0 245 616 409 616;
#P hidden connect 35 1 34 0;
#P connect 28 1 30 0;
#P connect 40 0 45 1;
#P connect 40 0 13 1;
#P connect 29 0 28 0;
#P connect 34 0 28 0;
#P connect 27 0 45 2;
#P connect 27 0 13 2;
#P fasten 12 5 46 0 297 595 575 595;
#P fasten 12 2 23 0 258 611 586 611;
#P connect 28 2 31 0;
#P connect 19 0 40 0;
#P connect 31 0 40 1;
#P connect 40 0 46 1;
#P fasten 41 0 39 0 663 283;
#P fasten 17 0 39 0 676 298;
#P connect 40 0 23 1;
#P connect 42 0 43 0;
#P connect 43 0 16 0;
#P connect 16 0 19 0;
#P connect 40 0 26 0;
#P connect 39 0 42 0;
#P fasten 21 0 42 0 688 330;
#P connect 16 0 22 0;
#P fasten 18 0 19 1 893 465 705 465;
#P fasten 17 0 42 1 716 349;
#P connect 27 0 46 2;
#P connect 28 3 32 0;
#P connect 27 0 23 2;
#P fasten 12 6 47 0 310 591 753 591;
#P fasten 12 3 15 0 271 605 765 605;
#P connect 18 0 21 0;
#P connect 40 0 47 1;
#P connect 40 0 15 1;
#P connect 37 0 41 0;
#P connect 41 0 18 0;
#P connect 20 0 18 0;
#P fasten 32 0 36 0 735 189 896 189;
#P connect 36 0 37 0;
#P connect 27 0 47 2;
#P fasten 31 0 36 1 596 189 913 189;
#P connect 27 0 15 2;
#P fasten 12 7 48 0 323 586 940 586;
#P connect 40 0 48 1;
#P connect 27 0 48 2;
#P pop;

#30466
Feb 26, 2007 at 1:02pm

Do you mean that the high frequencies are being filtered out?

I tested the patch by filling the buffer with white noise and examining the output sound using spectroscope~ this showed that changing the stretch amount did not filter the high frequencies much. Changing the pitch did but i think this is to be expected – if you pitch a sound down you loose the highs.

What kind of window shape you are using?

best,

john.

#97525
Feb 26, 2007 at 4:24pm

Hi John,

Thanks for that. Yes, when i apply a stretch i’m noticing that the high frequencies are been filtered. It only concerns me because it happens so suddenly- I’m finding all it takes is to change the stretch from 1 to 0.99 for it to happen.

I’m using a quasi-gaussian window, and a grain duration of 40mS. I tried your method of using noise and a specrtoscope~ (I wish I’d thought of that!) but i’m finding when reducing the pitch or time stretching i get a comb filtering effect. Could it perhaps be the settings I’m using causing this?

I’m beginning to wonder if what i’m hearing is been caused by some sort of phase interaction between the grains…

Mike

#97526
Feb 26, 2007 at 4:28pm

Also,

very oddly the comb filtering i’m seeing isn’t present if i use the same factor for the speed and pitch. i.e if i have pitch 0.97 and speed 0.97 there is no filtering. if i use speed 0.97 and pitch 1 (or vice versa) i see filtering.

Wow i’m confused!

#97527
Feb 26, 2007 at 6:24pm

It’s probably a phase issue if you can slightly randomise the startpoint of the different grains it will sound much more natural.

best wishes,

john.

#97528
Feb 26, 2007 at 6:32pm

Thanks,

I’ll give that a try and see if that’ll solve it.

Thanks for your time,

Mike

#97529
Feb 26, 2007 at 6:38pm

Try this:

#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P comment 357 188 107 196617 random start ammont;
#P window setfont “Sans Serif” 18.;
#P flonum 273 180 82 18 0. 0 1 3 254 44 44 255 255 255 222 222 222 0 0 0;
#P window setfont “Sans Serif” 9.;
#N vpatcher 100 180 800 587;
#P origin 21 0;
#P inlet 287 75 15 0;
#P outlet 523 263 15 0;
#P outlet 457 263 15 0;
#P outlet 397 259 15 0;
#P outlet 316 261 15 0;
#P outlet 271 261 15 0;
#P outlet 176 265 15 0;
#P outlet 113 266 15 0;
#P outlet 49 267 15 0;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 516 235 27 196617 +~;
#P newex 548 205 53 196617 *~ 0.;
#P newex 548 183 39 196617 noise~;
#P newex 453 234 27 196617 +~;
#P newex 485 204 53 196617 *~ 0.;
#P newex 485 182 39 196617 noise~;
#P newex 383 234 27 196617 +~;
#P newex 415 204 53 196617 *~ 0.;
#P newex 415 182 39 196617 noise~;
#P newex 320 233 27 196617 +~;
#P newex 352 203 53 196617 *~ 0.;
#P newex 352 181 39 196617 noise~;
#P newex 254 231 27 196617 +~;
#P newex 286 201 53 196617 *~ 0.;
#P newex 286 179 39 196617 noise~;
#P newex 180 231 27 196617 +~;
#P newex 212 201 53 196617 *~ 0.;
#P newex 212 179 39 196617 noise~;
#P newex 117 230 27 196617 +~;
#P newex 149 200 53 196617 *~ 0.;
#P newex 149 178 39 196617 noise~;
#P newex 51 228 27 196617 +~;
#P newex 83 198 53 196617 *~ 0.;
#P newex 81 173 39 196617 noise~;
#P inlet 118 63 15 0;
#P connect 3 0 25 0;
#P connect 0 0 3 0;
#P connect 2 0 3 1;
#P connect 1 0 2 0;
#P connect 6 0 26 0;
#P connect 0 0 6 0;
#P connect 33 0 2 1;
#P connect 5 0 6 1;
#P connect 4 0 5 0;
#P connect 9 0 27 0;
#P connect 0 0 9 0;
#P connect 33 0 5 1;
#P connect 8 0 9 1;
#P connect 7 0 8 0;
#P connect 0 0 12 0;
#P connect 33 0 8 1;
#P connect 11 0 12 1;
#P connect 12 0 28 0;
#P connect 10 0 11 0;
#P connect 15 0 29 0;
#P connect 0 0 15 0;
#P connect 33 0 11 1;
#P connect 14 0 15 1;
#P connect 13 0 14 0;
#P connect 0 0 18 0;
#P connect 33 0 14 1;
#P connect 18 0 30 0;
#P connect 17 0 18 1;
#P connect 16 0 17 0;
#P connect 0 0 21 0;
#P connect 21 0 31 0;
#P connect 33 0 17 1;
#P connect 20 0 21 1;
#P connect 19 0 20 0;
#P connect 0 0 24 0;
#P connect 24 0 32 0;
#P connect 33 0 20 1;
#P connect 23 0 24 1;
#P connect 22 0 23 0;
#P connect 33 0 23 1;
#P pop;
#P newobj 322 406 89 196617 p rand start piont;
#P newex 126 611 27 196617 +~;
#P newex 834 549 166 196617 grain.phase~ granulate window;
#P newex 647 549 166 196617 grain.phase~ granulate window;
#P newex 469 549 166 196617 grain.phase~ granulate window;
#P newex 292 550 166 196617 grain.phase~ granulate window;
#P comment 441 214 32 196617 Speed;
#P flonum 574 256 64 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 589 220 31 196617 !/ 1.;
#P newex 787 128 27 196617 + 1.;
#P newex 501 370 27 196617 +~;
#P button 549 170 15 0;
#P comment 853 87 83 196617 Loop lenght (mS);
#P flonum 790 85 59 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 790 61 27 196617 – 0.;
#P user pictslider 386 -63 19 76 0 0 0 0 wfknob.pct 1 wfmodes.pct 1 2146 0 0 196608 1. 1.;
#N vpatcher 40 55 278 404;
#P window setfont “Sans Serif” 9.;
#P newex 96 202 27 196617 int;
#N coll ;
#T flags 1 0;
#T 0 mode select;
#T 1 mode loop;
#T 2 mode move;
#T 3 mode draw;
#P newobj 131 255 53 196617 coll;
#P button 75 117 15 0;
#N comlet waveform~ mode messages;
#P inlet 74 164 15 0;
#P newex 113 88 27 196617 < < 1;
#P newex 96 140 40 196617 change;
#P newex 96 164 45 196617 select 0;
#P newex 96 117 27 196617 |;
#P outlet 131 284 15 0;
#P newex 45 62 78 196617 modifiers 100;
#P connect 5 0 7 0;
#P connect 7 0 2 0;
#P connect 0 3 2 0;
#P connect 2 0 4 0;
#P connect 4 0 3 0;
#P connect 6 0 9 0;
#P connect 3 0 9 0;
#P connect 0 4 5 0;
#P connect 5 0 2 1;
#P connect 3 1 8 0;
#P connect 9 0 8 0;
#P connect 8 0 1 0;
#P pop;
#P hidden newobj 322 -128 50 196617 p wfkeys;
#P flonum 263 30 100 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 629 27 135 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 490 27 135 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 365 28 100 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 317 -83 78 196617 set granulate 1;
#P user waveform~ 408 -136 396 163 3 9;
#W mode move;
#W mouseoutput continuous;
#W unit ms;
#W grid 1000.;
#W ticks 0;
#W labels 1;
#W vlabels 0;
#W vticks 1;
#W bpm 120. 4.;
#W frgb 33 0 0;
#W brgb 60 178 173;
#W rgb2 0 95 255;
#W rgb3 0 0 0;
#W rgb4 0 0 0;
#W rgb5 190 137 255;
#W rgb6 100 100 100;
#W rgb7 100 100 100;
#P flonum 381 229 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P user number~ 574 365 676 380 9 3 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 126 323 49 196617 !/ 1000.;
#P number 126 302 55 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 480 484 166 196617 grain.phase~ granulate window;
#P user number~ 593 295 680 310 9 3 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 705 197 47 196617 * 0.001;
#P button 800 154 15 0;
#P newex 574 339 35 196617 *~ 1.;
#P flonum 787 176 120 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 439 231 45 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 574 279 46 196617 phasor~;
#P newex 659 484 166 196617 grain.phase~ granulate window;
#P flonum 126 349 46 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 303 484 166 196617 grain.phase~ granulate window;
#P newex 126 371 105 196617 phasor.shift~ 8;
#P user ezdac~ 124 775 168 808 0;
#P user gain~ 126 636 24 100 158 0 1.071519 7.94321 10.;
#P newex 126 484 166 196617 grain.phase~ granulate window;
#P message 195 225 30 196617 read;
#P newex 195 251 109 196617 buffer~ window gauss;
#P message 52 228 30 196617 read;
#P newex 52 250 89 196617 buffer~ granulate;
#P window linecount 2;
#P comment 84 221 100 196617 buffers soundfile into RAM;
#P comment 229 223 134 196617 buffers quasi gaussian wave into RAM for windowing;
#P window linecount 1;
#P comment 183 303 100 196617 grain duration (mS);
#P window linecount 3;
#P comment 173 326 100 196617 1000mS / grain duration = frequency of windowing (Hz);
#P window linecount 1;
#P comment 380 212 32 196617 Pitch;
#P connect 51 0 50 1;
#P connect 50 7 48 1;
#P connect 50 6 47 1;
#P connect 50 5 46 1;
#P connect 50 4 45 1;
#P connect 50 3 15 1;
#P connect 50 2 23 1;
#P connect 50 1 13 1;
#P connect 50 0 9 1;
#P connect 40 0 50 0;
#P connect 8 0 7 0;
#P connect 31 0 40 1;
#P fasten 31 0 36 1 495 51 812 51;
#P fasten 41 0 39 0 562 145;
#P connect 41 0 18 0;
#P connect 27 0 9 2;
#P connect 27 0 45 2;
#P connect 27 0 13 2;
#P connect 27 0 46 2;
#P connect 27 0 23 2;
#P connect 27 0 47 2;
#P connect 27 0 15 2;
#P connect 27 0 48 2;
#P fasten 18 0 19 1 792 327 604 327;
#P connect 18 0 21 0;
#P fasten 17 0 39 0 575 160;
#P fasten 17 0 42 1 615 211;
#P connect 16 0 19 0;
#P connect 16 0 22 0;
#P connect 10 0 11 0;
#P connect 10 0 11 1;
#P fasten 12 7 48 0 222 448 839 448;
#P connect 36 0 37 0;
#P fasten 32 0 36 0 634 51 795 51;
#P connect 20 0 18 0;
#P connect 37 0 41 0;
#P fasten 12 3 15 0 170 467 664 467;
#P fasten 12 6 47 0 209 453 652 453;
#P connect 28 3 32 0;
#P fasten 21 0 42 0 587 192;
#P connect 39 0 42 0;
#P connect 43 0 16 0;
#P connect 42 0 43 0;
#P connect 19 0 40 0;
#P connect 28 2 31 0;
#P fasten 12 2 23 0 157 473 485 473;
#P fasten 12 5 46 0 196 457 474 457;
#P connect 34 0 28 0;
#P connect 29 0 28 0;
#P connect 28 1 30 0;
#P hidden connect 35 1 34 0;
#P fasten 12 1 13 0 144 478 308 478;
#P fasten 12 4 45 0 183 462 297 462;
#P connect 28 0 33 0;
#P fasten 45 0 49 1 297 575 148 575;
#P fasten 46 0 49 1 474 585 148 585;
#P fasten 47 0 49 1 652 594 148 594;
#P fasten 48 0 49 1 839 600 148 600;
#P connect 49 0 10 0;
#P connect 9 0 49 0;
#P fasten 13 0 49 0 308 514 131 514;
#P fasten 23 0 49 0 485 521 131 521;
#P fasten 15 0 49 0 664 531 131 531;
#P connect 12 0 9 0;
#P connect 14 0 12 0;
#P connect 25 0 14 0;
#P connect 24 0 25 0;
#P connect 6 0 5 0;
#P window clipboard copycount 53;

#97530
Feb 26, 2007 at 6:46pm

i just realised that you only have to use one noise~ object because grain.phase~ will only sample the position when it begins playing…

j.

#97531
Feb 26, 2007 at 7:13pm

once again thanks for your time!

I’ve hooked it up so that there’s only one noise~ object and it seems to work a treat.

When I’ve finished my patch I’ll post a copy up here for all to see.

Mike

#97532
Feb 27, 2007 at 6:53am

Mike Jones wrote:
> I’m using a quasi-gaussian window, and a grain duration of 40mS. I
> tried your method of using noise and a specrtoscope~ (I wish I’d
> thought of that!) but i’m finding when reducing the pitch or time
> stretching i get a comb filtering effect. Could it perhaps be the
> settings I’m using causing this?
>
> I’m beginning to wonder if what i’m hearing is been caused by some
> sort of phase interaction between the grains…

If the grains have the same size always, you’ll have a strong frequency
applied by the regular structure of the grains…

Mike Jones wrote:
> very oddly the comb filtering i’m seeing isn’t present if i use the
> same factor for the speed and pitch. i.e if i have pitch 0.97 and
> speed 0.97 there is no filtering. if i use speed 0.97 and pitch 1
> (or vice versa) i see filtering.

Same reason as above, as long the grain size and the original signal are
alligned, you won’t recognize the introduced pitch, in theoriy it should
be identical to the original signal. (if the factor is different than 1,
it will be a clean varispeed…)


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

#97533
Feb 27, 2007 at 3:24pm

Quote: Stefan Tiedje wrote on Tue, 27 February 2007 06:53
—————————————————-
> If the grains have the same size always, you’ll have a strong frequency
> applied by the regular structure of the grains…

In that case why does introducing randomness into the start points reduce the frequency effect? The size of the grain has not been changed and they all remain the same length.

j.

#97534
Feb 27, 2007 at 3:57pm

Even if the grain length stays the same, randomly altering the onset
time removes the periodicity of the grains, spreading the spectral
energy out across a wide(r) band rather than focusing it on a
specific frequency (the otherwise synchronous grain rate).

On Feb 27, 2007, at 3:24 PM, Leafcutter John wrote:

>
> Quote: Stefan Tiedje wrote on Tue, 27 February 2007 06:53
> —————————————————-
>> If the grains have the same size always, you’ll have a strong
>> frequency
>> applied by the regular structure of the grains…
>
> In that case why does introducing randomness into the start points
> reduce the frequency effect? The size of the grain has not been
> changed and they all remain the same length.

—-
Steven M. Miller

Home < http://pubweb.csf.edu/~smill>
SFIFEM <
http://sfifem.csf.edu>
Atrium Sound Space <
http://atrium.csf.edu>
OVOS <
http://pubweb.csf.edu/~smill/ovos.html>

#97535
Feb 27, 2007 at 5:57pm

Leafcutter John wrote:
> In that case why does introducing randomness into the start points
> reduce the frequency effect? The size of the grain has not been
> changed and they all remain the same length.

But the envelopes aren’t repeated regular anymore, the jitter which is
added, will add jitter to the frequency which will have a broader
spectrum…
In theory it should sound better to vary the grain length and adjust the
start point to have always an exact overlap of the grains…

Stefan


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

#97536
Apr 4, 2007 at 11:11pm

hi, you know a patch in max for time stratching of a sample?!
thanks_
Alessio:)

#97537

You must be logged in to reply to this topic.