Designing Sound - Procedural Audio for Games and Film.

Code examples for “Designing Sound” textbook

Practical 35: Red Alert

Pure Data

Red Alert! - siren effect

#N canvas 7 75 445 637 10;
#X obj 149 157 phasor~;
#X obj 125 594 dac~;
#X obj 147 75 vline~;
#X obj 148 116 *~ 487;
#X obj 148 294 *~;
#X obj 201 -1 bng 15 250 50 0 empty empty ALL_HANDS!!_BATTLESTATIONS!
0 -6 1 8 -262144 -1 -1;
#X obj 297 75 vline~;
#X obj 147 96 sqrt~;
#X obj 148 268 hip~ 1;
#X obj 120 181 -~ 0.5;
#X obj 148 320 *~ 0.2;
#X obj 147 386 hip~ 12;
#X obj 164 430 s~ fbsd;
#X obj 223 247 r~ fbsd;
#X msg 147 48 0 \, 1 900 0 \, 0 0 1200;
#X msg 297 48 0 \, 1 10 0 \, 0 10 890;
#X obj 148 136 +~ 360;
#X obj 125 453 clip~ -1 1;
#X obj 223 268 *~ 0.006;
#X obj 201 17 t b b;
#X obj 125 566 *~ 0.2;
#X obj 125 430 *~ 4;
#X obj 125 509 bp~ 1400 12;
#X obj 207 509 bp~ 1500 12;
#X obj 290 509 bp~ 1600 12;
#X obj 1 509 *~ 0.5;
#X obj 172 181 *~ 2;
#X obj 172 201 cos~;
#X obj 148 247 +~;
#X obj 172 222 *~ 0.3;
#X obj 50 509 bp~ 740 12;
#X obj 36 353 dfbe 15;
#X obj 147 353 dfbe 35;
#X obj 258 353 dfbe 11;
#X obj 164 409 dfbe 61;
#X obj 92 353 dfbe 22;
#X obj 202 353 dfbe 24;
#X connect 0 0 9 0;
#X connect 0 0 26 0;
#X connect 2 0 7 0;
#X connect 3 0 16 0;
#X connect 4 0 10 0;
#X connect 5 0 19 0;
#X connect 6 0 4 1;
#X connect 7 0 3 0;
#X connect 8 0 4 0;
#X connect 9 0 28 0;
#X connect 10 0 31 0;
#X connect 10 0 32 0;
#X connect 10 0 33 0;
#X connect 10 0 35 0;
#X connect 10 0 36 0;
#X connect 11 0 21 0;
#X connect 11 0 34 0;
#X connect 13 0 18 0;
#X connect 14 0 2 0;
#X connect 15 0 6 0;
#X connect 16 0 0 0;
#X connect 17 0 22 0;
#X connect 17 0 23 0;
#X connect 17 0 24 0;
#X connect 17 0 25 0;
#X connect 17 0 30 0;
#X connect 18 0 10 0;
#X connect 19 0 14 0;
#X connect 19 1 15 0;
#X connect 20 0 1 0;
#X connect 20 0 1 1;
#X connect 21 0 17 0;
#X connect 22 0 20 0;
#X connect 23 0 20 0;
#X connect 24 0 20 0;
#X connect 25 0 20 0;
#X connect 26 0 27 0;
#X connect 27 0 29 0;
#X connect 28 0 8 0;
#X connect 29 0 28 1;
#X connect 30 0 20 0;
#X connect 31 0 11 0;
#X connect 32 0 11 0;
#X connect 33 0 11 0;
#X connect 34 0 12 0;
#X connect 35 0 11 0;
#X connect 36 0 11 0;

Download TOS_redalert.pd.

Red Alert! - delay feedback element (needed abstraction)

#N canvas 161 154 133 178 10;
#X obj 1 65 +~;
#X obj 1 3 inlet~;
#X obj 3 155 outlet~;
#X obj 3 109 delread~ \$0-a \$1;
#X obj 11 134 s~ \$0-fba;
#X obj 17 24 r~ \$0-fba;
#X obj 17 44 *~ 0.6;
#X obj 2 86 delwrite~ \$0-a 100;
#X connect 0 0 7 0;
#X connect 1 0 0 0;
#X connect 3 0 2 0;
#X connect 3 0 4 0;
#X connect 5 0 6 0;
#X connect 6 0 0 1;

Download dfbe.pd.

Audio

All hands, battle stations!

A bonus klaxon in this example (FM plate and wheel model) since these two complement each other well in radio Fx.

Download red_alert.wav.