XML Feeds

.

[maxmsp] Re: comb~ and alternatives

volker böhm vboehm at gmx.ch
Sat Apr 19 09:17:47 MDT 2008


>
> Non-math answer, the higher you make the last inlet of comb~/teeth~  
> the longer the ringing should be.

that's right. but the problem with [comb~] and [teeth~] is, that they  
use linear delay time interpolation instead of slightly more  
expensive cubic or allpass interpolation.
this becomes apparent if you set the delay time to non-integer  
multiples of the sample interval - which is most often the case.
this results in high frequency loss in the output signal, which is  
pretty audible if you work with high feedback settings.

if you set the delay time with a float (not a signal) teeth~, comb~  
and also tapin/tapout~ don't do sub-sample delay times at all.
so the ringing frequencies are out of tune.

don't know exactly what kevin's problem is with [comb~], but i would  
rather go with tapin~/tapout~ and set the delay time with a signal.
then again the highest possible pitch is limited by the sigvs.
but tapin/tapout's interpolation sounds much better than comb/teeth  
(still not perfect).
aha, and if you go for distinct pitches, make sure you set the delay  
time 1 sample shorter than the pitch period you want to obtain.

finally, i got a delay external somewhere on my disk that uses  
allpass-interpolation (osx only).
this is slightly more cpu intensive and not made for rapid delay time  
modulation, but gives you 'endless' ringing without
any unwanted high frequency loss. kevin, get back to me, if you want  
to try it.

volker.

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P comment 562 126 100 196617 feedback;
#P newex 103 87 48 196617 loadbang;
#P message 149 157 78 196617 set 1 1 1 1 0.5;
#P newex 427 55 81 196617 loadmess 300.5;
#P newex 514 58 81 196617 loadmess 0.995;
#P window setfont "Sans Serif" 12.;
#P user umenu 43 477 81 196659 1 64 497 1;
#X add comb nosig;
#X add comb sig;
#X add tapin/out;
#P window setfont "Sans Serif" 9.;
#P newex 70 507 27 196617 + 1;
#P newex 506 422 25 196617 r fb;
#P newex 533 287 65 196617 r del_samps;
#P newex 572 368 29 196617 sig~;
#P newex 469 444 47 196617 *~ 0.99;
#P newex 533 332 66 196617 sampstoms~;
#P newex 533 310 27 196617 - 1.;
#P newex 455 420 44 196617 tapout~;
#P newex 455 389 65 196617 tapin~ 1000;
#P user ezdac~ 101 631 145 664 0;
#P user gain~ 112 535 27 60 158 0 1.071519 7.94321 10.;
#P newex 112 508 214 196617 selector~ 3 1;
#P flonum 443 124 45 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 513 124 42 9 -1. 1. 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 513 150 25 196617 s fb;
#P newex 443 150 65 196617 s del_samps;
#P newex 219 319 65 196617 r del_samps;
#P newex 248 442 120 196617 comb~ 100 10. 1. 0. 0.9;
#P newex 275 381 29 196617 sig~;
#P flonum 148 381 50 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 326 386 25 196617 r fb;
#P newex 219 342 66 196617 sampstoms~;
#P newex 121 442 120 196617 comb~ 100 10. 1. 0. 0.9;
#P toggle 61 131 15 0;
#P newex 61 150 64 196617 metro 6000;
#P button 61 174 23 0;
#P newex 61 212 37 196617 click~;
#P comment 337 126 100 196617 del time in samples;
#P connect 20 0 16 3;
#P connect 20 0 23 0;
#P connect 26 0 23 1;
#P fasten 23 0 19 0 474 469 436 462 436 383 460 383;
#P connect 32 0 4 0;
#P connect 4 0 3 0;
#P connect 3 0 2 0;
#P connect 31 0 1 0;
#P connect 2 0 1 0;
#P connect 28 0 27 0;
#P connect 17 0 18 0;
#P connect 27 0 16 0;
#P connect 16 0 17 0;
#P fasten 1 0 5 0 66 416 126 416;
#P connect 17 0 18 1;
#P connect 6 1 8 0;
#P connect 8 0 5 1;
#P connect 32 0 31 0;
#P fasten 5 0 16 1 126 468 185 468;
#P connect 11 0 6 0;
#P connect 7 0 5 4;
#P fasten 1 0 10 0 66 408 253 408;
#P connect 10 0 16 2;
#P connect 6 1 9 0;
#P connect 9 0 10 1;
#P connect 7 0 10 4;
#P connect 30 0 15 0;
#P connect 15 0 12 0;
#P fasten 1 0 19 0 66 254 460 254;
#P connect 19 0 20 0;
#P fasten 24 0 20 0 577 412 460 412;
#P connect 29 0 14 0;
#P connect 14 0 13 0;
#P connect 25 0 21 0;
#P connect 21 0 22 0;
#P connect 22 1 24 0;
#P window clipboard copycount 34;



More information about the maxmsp mailing list