Studying up on sound-design principles is a great next step. Here are some resources for Pd and sound design in general:
• The Theory and Technique of Electronic Music,1 a book by Miller Puckette, creator of Pd
• Programming Electronic Music in Pd2
1. http://msp.ucsd.edu/techniques.htm 2. http://www.pd-tutorial.com
• Pd mailing lists3
• Pd forums at Create Digital Noise4
• Pd tutorial videos on YouTube by cheetomoskeeto5
• Sound-design topics on Designing Sound6
To learn more about libpd, you should check out Peter Brinkmann’s book, Making Musical Apps [Bri12].
The effects we’ve created were varied, interesting, and realistic, but there are many more complex sounds to learn how to create. The best resource for diving deep into sound-design principles as well as applying these to Pure Data is the excellent Designing Sound [Far12], by Andy Farnell,7 a resource that I have yet to exhaust for my own sound-design development.
Wrapping Up
Sound is a beautiful part of any digital experience, web or native. Designing sound is a worthy pursuit and a continuous source of delight for an audience.
I’m glad to be able to introduce this discipline to you, or to further enhance your capabilities as a sound designer. I look forward to hearing what you create with Pure Data!
3. http://lists.puredata.info/listinfo 4. http://createdigitalnoise.com
5. http://www.youtube.com/user/cheetomoskeeto 6. http://designingsound.org
7. http://obiwannabe.co.uk
Glossary
Amplitude
The amount of energy in an audio signal.
Bit Depth
The number of bits available per sample to store signal data.
Chorusing
An effect added to a sound by combining it with a delayed copy with a longer duration than flanging. It adds an interesting “doubling” effect and, if modulated, can give the impression of motion.
Flanging
An effect added to a sound by combining it with a slightly delayed copy.
It adds an interesting “whooshing” effect caused by interference in different frequencies in the sound.
Frequency
The speed of an audio signal, which determines the pitch of a sound.
Frequency-modulation synthesis
A synthesis method where a modulator operator’s frequency changes the frequency of a carrier operator.
Index
In the context of FM synthesis, the amplitude of the modulator operator;
the strength with which the modulator affects the carrier’s frequency.
Modulation
Varying a signal over time.
Noise
A random signal across a certain frequency range.
Octave
In music, a note double the frequency of another note, or the distance between two such notes. So called because in Western music scales are generally seven tones, with the sequence repeating on the eighth tone.
An Octave is also 12 half steps above a given note.
Operator
In the context of FM synthesis, an oscillator.
Partial
One of a set of frequencies that make up a sound.
Period
The amount of time a wave takes to make one full cycle.
Sample-based synthesis
A synthesis method that uses longer prerecorded samples of a sound.
Sample rate
The number of samples per second a digital recording captures.
Scale
In music, a sequence of steps from a given note to an octave above that note.
Signal
A digital stream of numbers that encode a sound.
Spectrum
The distribution of the strength of the frequencies in a signal.
Timbre
The tonal quality of a sound. Related to spectral content.
Wavetable synthesis
A synthesis method that uses single-cycle samples of periodic waves.
Bibliography
[Bri12] Peter Brinkmann. Making Musical Apps. O’Reilly & Associates, Inc., Sebastopol, CA, 2012.
[Far12] Andy Farnell. Designing Sound. MIT Press, Cambridge, MA, 2012.
Index
8-bit sounds, 119, 122–123, 126
A
abbreviating objects, 42 additive synthesis, 57 Adobe Audition editor, 8, 57–
59 amplitude, 16, 167, see
al-so volume
amplitude modulation, see AM
Android app, see native app project
apps, embedding patches in, 7, 152–162, see also native app project
arithmetic operators, 15 arrays
creating, 28
saving contents of, 94 atoms, 5, see also
connec-tions; objects
sent as trigger argument, 23
sent by loadbang object, 29 sent by metro object, 29 bit depth, 68, 167
books and publications, 165–
166
bp~ object, see band-pass fil-ter dotted blue box in, 10 dotted red box in, 10–11 flag-shaped box in, 17 red box in, 37 catch~ object, 107 channels, number of, 67 chorusing effect, 92, 102, 167 class name, for objects, 11–
12
Clear app, 139 clip~ object, 102
code downloads for this book, xiv, 5 dac~ object, 12–13, 20, see
also output~ object delay object, 22 delread~ object, 97
delwrite~ object, 97 Designing Sound (Farnell),
166
devices, mobile, see mobile devices
digital experiences, xi, 1, see also UX (user experience)
8-bit sounds, 119, 122–123, 126
emotional response to sound, 3
envelope, 41–46
ADSR design for, 41–42, 45, 56
testing, 45
error messages, see log mes-sages
file types, 130, see al-so <ic>.wav</ic> files filters, 53, 56
flanging, 92, 97, 167 float (f) object, 44
float, as trigger argument, 23
FM (frequency modulation),
game project, see web game project
gameQuery framework, 119 geometric waves, 77–80 Git source control, 6 granular synthesis, 70 graphs of signals, see
visual-ization of signals; waves
H
hard effects, 3
harmonic overtones, 60 hearing, protecting, 9 help library, Pure Data, 13 high-pass filter, 56 Howler.js library, 130–131
I
iOS app, see native app project
immersion, xi, 1–2
index (in FM synthesis), 167 inlets, 11, 13 CBV, new vertical slider,
19
lop~ object, see low-pass filter low-pass filter, 52, 56 use of sound on, 115–116 Mobley, Josh (sound
design-er), Clear app, 139
modulation, 34, 167
mtof object, see MIDI mes-sages
noise~ object, 52–53, 122 non-environmental effects,
objects, 5, 10, see also specif-ic objects
as operator, in FM synthe-sis, 144, 168
period of, 14 visualization of, 28 osc~ object, see oscillator outlets, 11, 13
output~ object, 20–21, see al-so dac~ object embedding in apps, 7,
152–162
Pd Extended, 7–8, 20–21, 151 .pd files, 5
pd object, 54, 66 Pd Vanilla, 7–8, 151 period, 14, 16, 168
phasor~ object, 104, 122–123, 127 receive (r) object, 55, 66 recording sound, see
samphoid~ object, 104, 122–
123, 127 sample libraries, 4
sample rate, 68–69, 87, 168 sample-based synthesis, 70, select (sel) object, 44, 98 semicolon (;), preceding
cus-tom messages, 55, 74 send (s) object, 85 signal domain, 34
signal operators, 15–17
sinesum message, 74, 77, 79–
80, 120–121 sliders, 19, 36 .snd files, 67
sound, see also UX (user ex-perience)
spectral content (timbre), 73, 168
Spectral Frequency Display, Adobe Audition, 57–59 spectrogram, 57–59
spectrum of a signal, 51, 168 sprites, 133
sqrt~ object, 90, 99
square wave, 79, 92, 94, 120–
121
Star Wars lightsaber sounds, see lightsaber sounds start message, 70
stereo field, panning in, 89–
90
stop message, 45, 71 subpatches synthesis, 4–5, see also Pure
Data
tabosc4~ object, 76–77, 101 tabplay~ object, 72, 76 tabread4~ object, 88 tabwrite~ object, 28 task-management app,
see native app project text editors, 8
The Theory and Technique of Electronic Music (Puckette), 165
third-party extensions, using in apps, 152
throw~ object, 96, 102–103, 106
ability to turn off sound, 112–113
sound off by default, 114 user’s control of sound,
114
value of sound, ensuring, 113
V
variable delay, see vd~ object vd~ object, 97, 100
visualization of signals, 27–
34, see also waves volume, 15–21
messages for, 17–18 output~ object for, 20–21 signal operators for, 15–
square wave, 79, 92, 94, 120–121
synthesizing sound from, 4
triangle wave, 79 wavetable synthesis, 69, 73–
77, 168 Web
browser-compatibility is-sues, 129–130 cross-site scripting
is-sues, 131
use of sound on, 113–
114, 128–131
Web Audio specification, 129 web game project, 118–137
8-bit sounds for, 119, 122–123, 126
game design for, 118–120 gameQuery framework
for, 119
hit sound effects, 124–
128, 134–136
incorporating sound files into, 131–137
patch for, 120–128 running example code
for, 131
sound sprites in, 133 thruster sounds, 122–
124, 136
website resources, see online resources
white noise, 50, 52, 92, 96 wind sounds, 52–56 wineglass sound, 57–63 writesf~ object, 66–69, 123
X
Xcode editor, 8