Forums > MaxMSP

india additive monks

May 6, 2006 | 5:02 pm

I’m going to be training sound people at [TIPA] the Tibetan Institute
for Performing Arts.

I was hoping to give a presentation on sound basics(sine waves,
frequency, harmonics) I thought it would be really cool if I used
additive synthesis to demonstrate harmonics, and then used that
additive synthesizer to do a vowelizing. (Like buddhist monks do)

you would think that (all harmonics equal(pulsewave)) with (two
harmonics boosted( formants ))would work.

my additive synthesizer consists on a bunch of partial~ objects
(included with max/msp)

Anyone have a method for getting a list of harmonic amplitudes to
vowelize? usually you would just use a bandpass filter but I want
to do it additively so they can see the individual harmonic volumes
going up and down.

-matt

I cant upload the whole patch but what I’m using to generate the
amplitudes is here
(requires lobjects)

#P user multiSlider 67 239 64 17 0. 1. 19 2937 15 0 0 2 0 0 0;
#M frgb 0 0 0;
#M brgb 255 255 255;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P user multiSlider 222 238 64 17 0. 1. 19 2937 15 0 0 2 0 0 0;
#M frgb 0 0 0;
#M brgb 255 255 255;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P window setfont "Sans Serif" 9.;
#P window linecount 3;
#P message 54 423 223 196617 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.496063
0.703937 0.2 0.2 0.2 0.2 0.867716 0.332284 0.2 0.2 0.2;
#P window linecount 1;
#P newex 53 388 62 196617 prepend set;
#P window linecount 2;
#P comment 53 463 231 196617 this list controls the amplitudes of my
harmonics but it doesn’t vowelize at all;
#P window linecount 1;
#P hidden newex 174 169 90 196617 scale 0 127 0 19.;
#P hidden newex 71 176 90 196617 scale 0 127 0 19.;
#P user pictslider 119 44 100 100 4 4 4 4 SliderDefaultKnob.pct 1
SliderDefaultBkgnd.pct 1 2163 0 8323072 127 1. 1.;
#P hidden newex 149 267 30 196617 Ladd;
#P hidden flonum 138 213 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0
0 0;
#N vpatcher 10 59 699 684;
#P window setfont "Sans Serif" 9.;
#P window linecount 0;
#P newex 135 353 32 196617 print;
#P flonum 169 52 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P outlet 79 349 15 0;
#P inlet 147 51 15 0;
#P window linecount 1;
#P newex 86 99 31 196617 % 1.;
#P window linecount 0;
#P newex 168 199 53 196617 maximum;
#P newex 85 199 54 196617 pack 0. 0.;
#P window linecount 1;
#P newex 80 311 53 196617 lpad 19;
#P flonum 73 153 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 119 153 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 73 129 30 196617 !- 1.;
#P number 214 126 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 145 125 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#N vpatcher 20 74 620 474;
#P window setfont "Sans Serif" 9.;
#P number 111 51 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 157 141 27 196617 + 1;
#P newex 157 116 27 196617 * 2.;
#P number 157 95 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 157 73 27 196617 / 2.;
#P newex 110 141 27 196617 * 2.;
#P number 110 116 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 110 95 27 196617 / 2.;
#P newex 110 73 27 196617 + 1;
#P outlet 189 197 13 0;
#P outlet 113 187 15 0;
#P inlet 121 29 15 0;
#P connect 11 0 3 0;
#P connect 3 0 4 0;
#P connect 4 0 5 0;
#P connect 5 0 6 0;
#P connect 0 0 11 0;
#P connect 6 0 1 0;
#P connect 11 0 7 0;
#P connect 7 0 8 0;
#P connect 8 0 9 0;
#P connect 9 0 10 0;
#P connect 10 0 2 0;
#P pop;
#P newobj 145 98 80 196617 patcher stagger;
#P connect 9 0 3 0;
#P connect 3 0 5 0;
#P connect 6 0 11 0;
#P connect 7 0 6 0;
#P connect 5 0 7 0;
#P connect 10 0 9 0;
#P connect 12 0 9 0;
#P connect 8 0 6 1;
#P connect 9 0 4 0;
#P connect 4 0 7 1;
#P connect 12 0 0 0;
#P connect 10 0 0 0;
#P connect 0 0 1 0;
#P connect 1 0 8 0;
#P connect 2 0 8 1;
#P connect 0 1 2 0;
#P pop;
#P hidden newobj 136 237 14 196617 p;
#P hidden newex 139 292 89 196617 Lscale 0. 1. 0.2 1;
#P user multiSlider 138 331 186 50 0. 1. 19 2937 15 0 0 2 0 0 0;
#M frgb 0 0 0;
#M brgb 255 255 255;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P hidden flonum 208 214 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0
0 0;
#N vpatcher 10 59 699 684;
#P outlet 79 349 15 0;
#P inlet 147 51 15 0;
#P window setfont "Sans Serif" 9.;
#P newex 86 99 31 196617 % 1.;
#P window linecount 0;
#P newex 168 199 53 196617 maximum;
#P newex 85 199 54 196617 pack 0. 0.;
#P window linecount 1;
#P newex 80 311 53 196617 lpad 19;
#P flonum 73 153 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 119 153 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 73 129 30 196617 !- 1.;
#P number 214 126 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 145 125 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#N vpatcher 20 74 620 474;
#P window setfont "Sans Serif" 9.;
#P number 111 51 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 157 141 27 196617 + 1;
#P newex 157 116 27 196617 * 2.;
#P number 157 95 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 157 73 27 196617 / 2.;
#P newex 110 141 27 196617 * 2.;
#P number 110 116 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 110 95 27 196617 / 2.;
#P newex 110 73 27 196617 + 1;
#P outlet 189 197 13 0;
#P outlet 113 187 15 0;
#P inlet 121 29 15 0;
#P connect 11 0 3 0;
#P connect 3 0 4 0;
#P connect 4 0 5 0;
#P connect 5 0 6 0;
#P connect 0 0 11 0;
#P connect 6 0 1 0;
#P connect 11 0 7 0;
#P connect 7 0 8 0;
#P connect 8 0 9 0;
#P connect 9 0 10 0;
#P connect 10 0 2 0;
#P pop;
#P newobj 145 98 80 196617 patcher stagger;
#P connect 9 0 3 0;
#P connect 3 0 5 0;
#P connect 6 0 11 0;
#P connect 7 0 6 0;
#P connect 5 0 7 0;
#P connect 10 0 9 0;
#P connect 8 0 6 1;
#P connect 9 0 4 0;
#P connect 4 0 7 1;
#P connect 10 0 0 0;
#P connect 0 0 1 0;
#P connect 1 0 8 0;
#P connect 2 0 8 1;
#P connect 0 1 2 0;
#P pop;
#P hidden newobj 206 238 14 196617 p;
#P window linecount 5;
#P comment 242 269 100 196617 the 0.2s would be the pulse wave and
bumps would be the bandpassfilters of a vowelizer…;
#P window linecount 2;
#P comment 356 175 100 196617 this patch doesn’t vowelize;
#P connect 6 0 16 0;
#P hidden connect 6 0 8 0;
#P hidden connect 2 0 8 1;
#P connect 2 0 15 0;
#P connect 13 0 14 0;
#P connect 4 0 13 0;
#P connect 5 0 4 0;
#P hidden connect 8 0 5 0;
#P hidden connect 9 0 10 0;
#P hidden connect 10 0 7 0;
#P hidden connect 9 1 11 0;
#P hidden connect 11 0 3 0;
#P hidden connect 7 0 6 0;
#P hidden connect 3 0 2 0;
#P window clipboard copycount 17;


May 8, 2006 | 12:01 am

check this out:

http://homepage.mac.com/mikezed/technology/singing-voice.zip

Let me know if it works or not. I put this archive together quickly, and might have missed some of the necessary objects. It all must be in your serach path.

mz


May 8, 2006 | 12:24 am


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