Designing Sound - Procedural Audio for Games and Film.

Code examples for “Designing Sound” textbook

Practical 2: Phone Tones

Pure Data

Busy signal

#N canvas 114 89 173 179 10;
#X obj 4 27 osc~ 480;
#X obj 20 47 osc~ 620;
#X obj 4 69 +~;
#X obj 25 155 dac~;
#X obj 25 106 *~;
#X obj 89 26 *~ 10000;
#X obj 89 46 clip~ 0 1;
#X obj 89 67 lop~ 100;
#X obj 89 5 osc~ 2;
#X obj 25 128 *~ 0.1;
#X connect 0 0 2 0;
#X connect 1 0 2 1;
#X connect 2 0 4 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X connect 7 0 4 1;
#X connect 8 0 5 0;
#X connect 9 0 3 0;
#X connect 9 0 3 1;

Download busy-signal.pd.

Dialling tone

#N canvas 143 193 76 113 10;
#X obj 16 21 osc~ 450;
#X obj 1 0 osc~ 350;
#X obj 0 45 +~;
#X obj 0 94 dac~;
#X obj 1 67 *~ 0.125;
#X connect 0 0 2 1;
#X connect 1 0 2 0;
#X connect 2 0 4 0;
#X connect 4 0 3 0;
#X connect 4 0 3 1;

Download dialtone1.pd.

Dialling tone with line

#N canvas 143 193 144 138 10;
#X obj 17 22 osc~ 450;
#X obj 1 1 osc~ 350;
#X obj 1 46 +~;
#X obj 1 117 dac~;
#X msg 82 22 1;
#X msg 114 22 0;
#X obj 1 69 *~;
#N canvas 0 0 185 209 tline 0;
#X obj 43 49 bp~ 2000 12;
#X obj 40 147 hip~ 90;
#X obj 40 167 hip~ 90;
#X obj 43 6 inlet~ thisend;
#X obj 40 188 outlet~ thatend;
#X obj 43 28 clip~ -0.9 0.9;
#X obj 77 92 clip~ -0.4 0.4;
#X obj 77 114 *~ 0.15;
#X obj 5 114 bp~ 400 3;
#X obj 5 94 *~ 0.5;
#X connect 0 0 6 0;
#X connect 0 0 9 0;
#X connect 1 0 2 0;
#X connect 2 0 4 0;
#X connect 3 0 5 0;
#X connect 5 0 0 0;
#X connect 6 0 7 0;
#X connect 7 0 1 0;
#X connect 8 0 1 0;
#X connect 9 0 8 0;
#X restore 1 92 pd tline;
#X connect 0 0 2 1;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 4 0 6 1;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 3 0;
#X connect 7 0 3 1;

Download dialtone2.pd.

Pulse dialler

#N canvas 84 36 102 340 10;
#X obj 0 238 sig~;
#X obj 0 313 dac~;
#X obj 36 215 == 0;
#X obj 30 81 delay;
#X msg 30 102 0;
#X msg 0 103 1;
#X obj 0 39 t b f;
#X obj 0 215 + 1;
#X obj 0 163 t b b;
#X obj 0 139 metro 100;
#X obj 30 60 * 100;
#X obj 30 188 del 40;
#X msg 0 0 1;
#X msg 31 0 5;
#X msg 65 0 7;
#X obj 0 284 *~ 0.8;
#N canvas 0 0 450 300 tline 0;
#X obj 5 52 bp~ 2000 12;
#X obj 5 124 bp~ 400 7;
#X obj 5 148 hip~ 90;
#X obj 5 172 hip~ 90;
#X obj 5 4 inlet~ thisend;
#X obj 5 196 outlet~ thatend;
#X obj 5 28 clip~ -0.9 0.9;
#X obj 5 85 *~ 1.2;
#X connect 0 0 7 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 6 0;
#X connect 6 0 0 0;
#X connect 7 0 1 0;
#X restore 0 260 pd tline;
#X connect 0 0 16 0;
#X connect 2 0 7 1;
#X connect 3 0 4 0;
#X connect 4 0 9 0;
#X connect 5 0 9 0;
#X connect 6 0 5 0;
#X connect 6 1 10 0;
#X connect 7 0 2 0;
#X connect 7 0 0 0;
#X connect 8 0 7 0;
#X connect 8 1 11 0;
#X connect 9 0 8 0;
#X connect 10 0 3 0;
#X connect 11 0 7 0;
#X connect 12 0 6 0;
#X connect 13 0 6 0;
#X connect 14 0 6 0;
#X connect 15 0 1 0;
#X connect 15 0 1 1;
#X connect 16 0 15 0;

Download pulsedial.pd.

Ringing tone

#N canvas 143 193 188 257 10;
#X obj 72 235 dac~;
#N canvas 0 0 185 209 tline 0;
#X obj 43 49 bp~ 2000 12;
#X obj 40 147 hip~ 90;
#X obj 40 167 hip~ 90;
#X obj 43 6 inlet~ thisend;
#X obj 40 188 outlet~ thatend;
#X obj 43 28 clip~ -0.9 0.9;
#X obj 77 92 clip~ -0.4 0.4;
#X obj 77 114 *~ 0.15;
#X obj 5 114 bp~ 400 3;
#X obj 5 94 *~ 0.5;
#X connect 0 0 6 0;
#X connect 0 0 9 0;
#X connect 1 0 2 0;
#X connect 2 0 4 0;
#X connect 3 0 5 0;
#X connect 5 0 0 0;
#X connect 6 0 7 0;
#X connect 7 0 1 0;
#X connect 8 0 1 0;
#X connect 9 0 8 0;
#X restore 72 210 pd tline;
#X obj 3 71 osc~ 480;
#X obj 3 117 +~;
#X obj 72 159 *~;
#X obj 19 91 osc~ 440;
#X obj 88 115 sig~;
#X obj 88 136 lop~ 100;
#X obj 88 45 f;
#X obj 88 67 mod 6;
#X obj 127 46 + 1;
#X obj 88 91 > 2;
#X obj 88 23 metro 1000;
#X obj 88 1 loadbang;
#X obj 72 185 *~;
#X obj 166 136 tgl 15 0 empty empty ring 0 -6 1 8 -262144 -1 -1 1 1
;
#X connect 1 0 0 0;
#X connect 1 0 0 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 14 0;
#X connect 5 0 3 1;
#X connect 6 0 7 0;
#X connect 7 0 4 1;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 9 0 11 0;
#X connect 10 0 8 1;
#X connect 11 0 6 0;
#X connect 12 0 8 0;
#X connect 13 0 12 0;
#X connect 14 0 1 0;
#X connect 15 0 14 1;

Download ringingtone.pd.

Audio

Telephone tones

Download phonetones.wav.