|
|
xiii | |
|
|
xv | |
|
|
1 | (16) |
|
1.1 Describing Audio Signals |
|
|
1 | (7) |
|
1.1.1 Measuring audio levels |
|
|
2 | (1) |
|
1.1.2 Pro-audio versus Consumer audio levels |
|
|
3 | (1) |
|
|
4 | (1) |
|
1.1.4 Signal to noise ratio (SNR) |
|
|
4 | (1) |
|
1.1.5 Frequency and bandwidth |
|
|
5 | (2) |
|
1.1.6 Characterizing noise |
|
|
7 | (1) |
|
1.1.7 Probability density functions and histograms |
|
|
8 | (1) |
|
|
8 | (1) |
|
1.3 Describing Audio Systems |
|
|
9 | (5) |
|
1.3.1 Continuous and discrete systems |
|
|
10 | (1) |
|
1.3.2 Linear and non-linear systems |
|
|
10 | (1) |
|
1.3.3 Temporal properties |
|
|
11 | (1) |
|
|
12 | (1) |
|
|
12 | (2) |
|
|
14 | (1) |
|
|
15 | (1) |
|
1.6 Project -- Audio Playback |
|
|
15 | (2) |
|
2 Complex Vectors And Phasors |
|
|
17 | (16) |
|
2.1 Complex Number Representation And Operations |
|
|
17 | (6) |
|
|
18 | (2) |
|
2.1.2 Example: convert from polar to rectangular form |
|
|
20 | (1) |
|
2.1.3 Programming example: plotting complex vectors |
|
|
21 | (2) |
|
2.1.4 Complex mathematical operations |
|
|
23 | (1) |
|
|
23 | (1) |
|
|
24 | (3) |
|
2.3.1 Programming example: rotating a vector |
|
|
25 | (2) |
|
|
27 | (2) |
|
2.4.1 Programming example: beat frequencies |
|
|
29 | (1) |
|
|
29 | (1) |
|
2.6 Project -- Am And Fm Synthesis |
|
|
30 | (1) |
|
|
31 | (2) |
|
|
33 | (14) |
|
3.1 Phasor Representation On The Complex Plane |
|
|
34 | (1) |
|
|
35 | (2) |
|
|
37 | (2) |
|
3.3.1 Programming example: simple delay effect |
|
|
38 | (1) |
|
3.4 Sampling A Continuous Signal |
|
|
39 | (3) |
|
3.4.1 Example: analog to digital conversion |
|
|
42 | (1) |
|
|
42 | (3) |
|
3.5.1 Programming example: Listening to Jitter |
|
|
43 | (2) |
|
|
45 | (1) |
|
|
45 | (2) |
|
4 Aliasing And Reconstruction |
|
|
47 | (18) |
|
|
48 | (2) |
|
4.1.1 Programming example: aliasing |
|
|
48 | (2) |
|
4.2 Predicting The Alias Frequency |
|
|
50 | (6) |
|
4.2.1 Example: calculating the alias frequencies |
|
|
53 | (1) |
|
4.2.2 Mirror/foldback frequency |
|
|
53 | (2) |
|
4.2.3 Example: calculating the alias frequencies (again) |
|
|
55 | (1) |
|
|
56 | (1) |
|
|
57 | (5) |
|
4.4.1 Deriving the interpolator |
|
|
58 | (1) |
|
4.4.2 Ideal interpolation |
|
|
59 | (2) |
|
4.4.3 Real-time interpolation |
|
|
61 | (1) |
|
|
62 | (1) |
|
|
62 | (2) |
|
|
64 | (1) |
|
|
65 | (14) |
|
5.1 Quantization Resolution |
|
|
66 | (1) |
|
|
67 | (3) |
|
5.2.1 Programming example: signal quantization |
|
|
68 | (1) |
|
5.2.2 Example: 3-bit quantization |
|
|
69 | (1) |
|
5.3 Sample-And-Hold Circuit |
|
|
70 | (1) |
|
5.4 Quantization Error (Eq) |
|
|
70 | (4) |
|
5.4.1 Programming example: quantization error |
|
|
71 | (1) |
|
5.4.2 PDF of quantization error |
|
|
72 | (1) |
|
5.4.3 RMS of quantization error |
|
|
72 | (1) |
|
5.4.4 Programming example: PDF and RMS of quantization error |
|
|
73 | (1) |
|
5.5 Pulse Code Modulation |
|
|
74 | (3) |
|
5.5.1 Non-uniform quantization |
|
|
75 | (1) |
|
5.5.2 Programming example: u-law quantization |
|
|
76 | (1) |
|
|
77 | (1) |
|
|
77 | (2) |
|
|
79 | (16) |
|
6.1 Signal-To-Error Ratio (Ser) |
|
|
80 | (2) |
|
6.1.1 The case of the missing noise |
|
|
80 | (2) |
|
6.2 Ser At Low Signal Levels |
|
|
82 | (1) |
|
|
82 | (4) |
|
6.3.1 Programming example: RPDF dither |
|
|
84 | (2) |
|
6.4 Triangular Pdf Dither |
|
|
86 | (4) |
|
6.4.1 Programming example: TPDF dither |
|
|
87 | (1) |
|
|
88 | (2) |
|
6.5 High-Frequency Dither |
|
|
90 | (1) |
|
|
91 | (1) |
|
6.7 Project -- Dither Effects |
|
|
92 | (1) |
|
|
93 | (2) |
|
|
95 | (14) |
|
|
96 | (1) |
|
7.2 Time-Reversal Operator |
|
|
97 | (1) |
|
|
98 | (1) |
|
|
99 | (3) |
|
7.4.1 Example: moving average filter |
|
|
100 | (1) |
|
7.4.2 Delay using the z-operator |
|
|
101 | (1) |
|
|
102 | (1) |
|
|
103 | (3) |
|
7.6.1 Programming example: filter implementation |
|
|
105 | (1) |
|
|
106 | (1) |
|
7.8 Project -- Plucked String Model |
|
|
107 | (1) |
|
|
108 | (1) |
|
|
109 | (16) |
|
8.1 Fir Filters By Way Of Example |
|
|
110 | (2) |
|
|
112 | (1) |
|
|
112 | (5) |
|
8.3.1 Properties of convolution |
|
|
114 | (1) |
|
8.3.2 Example: convolving two signals |
|
|
115 | (1) |
|
8.3.3 Programming example: vocal processing |
|
|
116 | (1) |
|
|
117 | (1) |
|
8.4.1 Programming example: time-delay estimation |
|
|
118 | (1) |
|
8.4.2 Programming example: matched filtering |
|
|
118 | (1) |
|
|
118 | (2) |
|
|
119 | (1) |
|
|
120 | (1) |
|
8.6 Designing Fir Filters |
|
|
120 | (2) |
|
8.6.1 Programming example: pre-echo |
|
|
121 | (1) |
|
|
122 | (1) |
|
8.8 Project -- Fir Filters |
|
|
123 | (1) |
|
|
124 | (1) |
|
|
125 | (22) |
|
|
125 | (2) |
|
|
127 | (1) |
|
|
128 | (3) |
|
9.3.1 Programming example: comb filters |
|
|
128 | (2) |
|
9.3.2 Programming example: removing ground hum |
|
|
130 | (1) |
|
|
131 | (5) |
|
9.4.1 Properties of z-Transform |
|
|
133 | (1) |
|
9.4.2 Example: analyzing a cascade of filters |
|
|
134 | (2) |
|
|
136 | (7) |
|
9.5.1 Example: first-order LPF and HPF |
|
|
137 | (3) |
|
9.5.2 Programming example: notch filter |
|
|
140 | (3) |
|
9.6 Filter Phase Response |
|
|
143 | (1) |
|
|
144 | (2) |
|
|
146 | (1) |
|
|
147 | (24) |
|
10.1 General Characteristics Of IIR Filters |
|
|
147 | (2) |
|
|
149 | (1) |
|
10.2 IIR Filter Transfer Functions |
|
|
149 | (4) |
|
10.2.1 Programming example: first-order IIR filter |
|
|
150 | (3) |
|
10.3 IIR Filter Stability |
|
|
153 | (2) |
|
10.3.1 Programming example: 3D p/z plot |
|
|
153 | (2) |
|
10.4 Second-Order Resonators |
|
|
155 | (3) |
|
10.4.1 Programming example: sweeping resonator |
|
|
157 | (1) |
|
|
158 | (6) |
|
|
159 | (5) |
|
10.6 Proportional Parametric Eq |
|
|
164 | (3) |
|
10.6.1 Programming example: 3-band parametric EQ |
|
|
166 | (1) |
|
10.7 Forward-Reverse Filtering |
|
|
167 | (1) |
|
|
168 | (1) |
|
|
168 | (2) |
|
|
170 | (1) |
|
11 Impulse Response Measurements |
|
|
171 | (16) |
|
11.1 Noise Reduction Through Averaging |
|
|
172 | (1) |
|
11.2 Capturing Irs With Mls |
|
|
173 | (3) |
|
|
174 | (1) |
|
11.2.2 Example: maximum length sequence |
|
|
174 | (1) |
|
11.2.3 Circular convolution/correlation |
|
|
175 | (1) |
|
11.3 Capturing Irs With Ess |
|
|
176 | (7) |
|
11.3.1 ESS stimulus generation |
|
|
178 | (2) |
|
11.3.2 Inverse ESS generation |
|
|
180 | (1) |
|
|
181 | (1) |
|
11.3.4 Programming example: noise reduction with ESS |
|
|
182 | (1) |
|
|
183 | (1) |
|
11.5 Project -- Room Response Measurements |
|
|
183 | (2) |
|
|
185 | (2) |
|
12 Discrete Fourier Transform |
|
|
187 | (18) |
|
12.1 Discretizing A Transfer Function |
|
|
187 | (1) |
|
12.2 Sampling The Frequency Response |
|
|
188 | (1) |
|
12.3 The Dft And Inverse Discrete Fourier Transform |
|
|
189 | (2) |
|
12.3.1 Example: DFT of a delta |
|
|
190 | (1) |
|
12.3.2 Programming example: fast Fourier transform of a delta |
|
|
191 | (1) |
|
|
191 | (5) |
|
12.4.1 Programming example: DFT of a sinusoid |
|
|
192 | (2) |
|
12.4.2 Example: DFT of a rectangular pulse |
|
|
194 | (2) |
|
12.5 Properties Of The Dft |
|
|
196 | (2) |
|
12.6 Revisiting Sampling In The Frequency Domain |
|
|
198 | (1) |
|
12.7 Frequency Interpolation |
|
|
199 | (2) |
|
12.7.1 Programming example: frequency interpolation |
|
|
200 | (1) |
|
|
201 | (1) |
|
12.9 Project -- Spectral Filtering |
|
|
202 | (3) |
|
13 Real-Time Spectral Processing |
|
|
205 | (12) |
|
13.1 Filtering In The Frequency Domain |
|
|
206 | (1) |
|
|
207 | (4) |
|
13.3 Constant Overlap And Add |
|
|
211 | (1) |
|
|
211 | (3) |
|
13.4.1 Programming example: vocal formants |
|
|
212 | (2) |
|
|
214 | (1) |
|
13.6 Project -- Automatic Feedback Control |
|
|
215 | (2) |
|
|
217 | (20) |
|
14.1 Derivation Of The Z-Transform |
|
|
217 | (2) |
|
|
219 | (3) |
|
14.2.1 Example: RC series filter |
|
|
219 | (1) |
|
14.2.2 Programming example: RC filter |
|
|
220 | (2) |
|
14.3 Bilinear Transformation |
|
|
222 | (5) |
|
14.3.1 Example: RC series filter |
|
|
224 | (1) |
|
14.3.2 Frequency pre-warping |
|
|
225 | (1) |
|
14.3.3 Example: pre-warping |
|
|
226 | (1) |
|
|
227 | (4) |
|
14.4.1 Linear phase frequency sampling |
|
|
227 | (1) |
|
14.4.2 Programming example: RLC with linear phase |
|
|
227 | (2) |
|
14.4.3 Minimum phase frequency sampling |
|
|
229 | (1) |
|
14.4.4 Programming example: RLC with minimum phase |
|
|
230 | (1) |
|
14.5 Non-Linear Modeling With Ess |
|
|
231 | (5) |
|
|
236 | (1) |
|
|
236 | (1) |
Index |
|
237 | |