You are on page 1of 91

Digital Speech Processing Digital Speech Processing

Lecture 16 Lecture 16 Lecture 16 Lecture 16


Speech Coding Methods Speech Coding Methods
Based on Speech Waveform Based on Speech Waveform pp
Representations and Representations and
Speech Models Speech ModelsAdaptive Adaptive
1
pp pp
and Differential Coding and Differential Coding
Speech Waveform Coding Speech Waveform Coding--Summary of Summary of
P t 1 P t 1 Part 1 Part 1
1. Probability density function for speech samples
2
1 1
0
2 2
| |
( ) ( )

= =
x
x
x x
p x e p Gamma
1 2
3
2
3
0
8
/
( ) ( )
| |



= =



x
x
x
p x e p
x
Laplacian
2. Coding paradigms
uniform -- divide interval from +X to X into 2
B
intervals of length uniform -- divide interval from +X
max
to X
max
into 2 intervals of length
=(2X
max
/2
B
) for a B-bit quantizer

2

-X
max
=4
x
+X
max
=4
x
Speech Waveform Coding Speech Waveform Coding--Summary of Summary of
Part 1 Part 1 p(e) Part 1 Part 1
6 4 77 20 10
max

( ) ( ) ( )
. log
sensitivity to / ( varies a lot!!!)


= +

= +


i
x
x n x n e n
X
SNR B
X
1/
p(e)
20 10
max
max max
sensitivity to / ( varies a lot!!!)
not great use of bits for actual speech densities!
log (uniform) (B=8)





i
i
x x
x x
X
X X
SNR
-/2 /2
2 6 02 46 . .75
4 12 04 40 73
8 18 06 34 71
16 24 08 28 69
. .
. .
30 dB loss as X
max
/
x
varies
over a 32:1 range
16 24 08 28 69
32 30 10 22 67
64 36 12 16 65
max
. .
. .
. .
(or equivalently ) varies a lot across sounds, speakers, environments
d t d t d ( ( )) t ti i

i
x
X
X
o e a 3 a ge

max
need to adapt coder ( ( )) to time varying or
key
i
i
x
n X
question is how to adapt
3

-X
max
=4
x
+X
max
=4
x
Speech Waveform Coding Speech Waveform Coding- -Summary of Part 1 Summary of Part 1
pseudo-logarithmic (constant percentage error)
- compress x(n) by pseudo-logarithmic compander
quantize the companded x(n) uniformly
[ ]
= y(n) F x(n)
- quantize the companded x(n) uniformly
- expand the quantized signal
[ ]
[ ]
1
1
max
max

| ( ) |
log

l ( )

=

+


=
y(n) F x(n)
x n
X
X sign x(n)
[ ]
1
max
log( ) +
g ( )
large | ( ) |
| ( ) |


x n
X x n
max
max
| ( ) |
| ( ) | log
log





X x n
y n
X
4
-X
max
=4
x
+X
max
=4
x
Speech Waveform Coding Speech Waveform Coding--Summary of Summary of
P t 1 P t 1 Part 1 Part 1
[ ]
2
10 10
6 4 77 20 1 10 1 2
max max
( ) . log ln( ) log



= + + + +




x x
X X
SNR dB B
max
insensitive to / over a wide range for large

i
x
X
maximum SNR coding match signal quantization intervals to
model probability distribution (Gamma, Laplacian)
interestingat least theoretically
5
Adaptive Quantization Adaptive Quantization Adaptive Quantization Adaptive Quantization
linear quantization => SNR depends on
x
being
t t (thi i l l t th ) constant (this is clearly not the case)
instantaneous companding => SNR only weakly
dependent on X
max
/
x
for large -law compression (100-
500) 500)
optimum SNR => minimize
e
2
when
x
2
is known, non-
uniform distribution of quantization levels
QQuantization dilemma: want to choose quantization step
size large enough to accomodate maximum peak-to-
peak range of x(n); at the same time need to make the
quantization step size small so as to minimize the quantization step size small so as to minimize the
quantization error
the non-stationary nature of speech (variability across sounds,
speakers, backgrounds) compounds this problem greatly
6
p , g ) p p g y
Solutions to Quantization Dilemna Solutions to Quantization Dilemna Solutions to Quantization Dilemna Solutions to Quantization Dilemna
Solution 1 - let vary to
Adaptive Quantization:
y
match the variance of the
input signal => (n)
Solution 2 - use a Solution 2 use a
variable gain, G(n),
followed by a fixed
quantizer step size => quantizer step size, >
keep signal variance of
y(n)=G(n)x(n) constant
Case 1: (n) proportional to
x
=> quantization levels and ranges would
be linearly scaled to match
x
2
=> need to reliably estimate
x
2
Case 2 G(n) proportional to 1/ to gi e
2
constant
7
Case 2: G(n) proportional to 1/
x
to give
y
2
constant
need reliable estimate of
x
2
for both types of adaptive quantization
Types of Adaptive Quantization Types of Adaptive Quantization Types of Adaptive Quantization Types of Adaptive Quantization
instantaneous-amplitude changes reflect sample-
to-sample variations in x[n] => rapid adaptation
syllabic-amplitude changes reflect syllable-to-
syllable variations in x[n] => slow adaptation
feed-forward-adaptive quantizers that estimate
x
2
f [ ] it lf from x[n] itself
feedback-adaptive quantizers that adapt the step
si e on the basis of the q anti ed signal

[ ] n size, , on the basis of the quantized signal, ,


(or equivalently the codewords, c[n])
[ ] x n
8
Feed Forward Adaptation Feed Forward Adaptation Feed Forward Adaptation Feed Forward Adaptation
Variable step size p
assume uniform quantizer with
step size [n]
[n] is q anti ed sing [n] > x[n] is quantized using [n] =>
c[n] and [n] need to be
transmitted to the decoder
if c[n]=c[n] and [n]=[n] => no

[ [ [ ]

= x n x n
if c [n]=c[n] and [n]=[n] => no
errors in channel, and
Dont have x[n] at the decoder to estimate [n] => need to transmit [n]; this is
9
Don t have x[n] at the decoder to estimate [n] => need to transmit [n]; this is
a major drawback of feed forward adaptation
Feed Feed- -Forward Quantizer Forward Quantizer
Cant estimate G[n] at
10
Can t estimate G[n] at
the decoder => it has to
be transmitted
time varying gain, G[n] =>
c[n] and G[n] need to be
transmitted to the decoder
Feed Forward Quantizers Feed Forward Quantizers Feed Forward Quantizers Feed Forward Quantizers
feed forward systems make estimates of
x
2
, then make or the
quantization levels proportional to or the gain is inversely quantization levels proportional to
x
, or the gain is inversely
proportional to
x
2
h t ti
2
2
0
2
assume short-time energy
[ ] [ ] [ ] / [ ] where [ ] is a lowpass filter


= =

=


x
m m
n x m h n m h m h n
2 2
1
1
0
[ ] (this can be shown)
consider [ ]





=
=
x
n
E n
h n n
otherwise
2 2
[ ] [ ] = n x m
( )
1
1
2
1 0 1
1 1 1
2 2
( )
[ ] [ ] [ ]( ) (recursion)


=
< <
= +

n
n m
m
n n x n
11
0 0
1 1 1 [ ] [ ] [ ]( ) (recursion)
this gives [ ] [ ] and [ ] / [ ]


+
= =
n n x n
n n G n G n
Slowly Adapting Gain Control Slowly Adapting Gain Control
2 2 2
[ ] [ 1] [ 1](1 )
2 2 2
1
1 2
[ ] [ 1] [ 1](1 )
[ ](1 )
n
n m
m
n n x n
x m


=
= +
=

0 99 . =
m=
0
2
[ ]
[ ]
=
G
G n
n
[ ] [ ] [ ] = y n G n x n
[ ]
{ }

[ ] [ ] [ ]

= y n Q G n x n
2
0
[ ] [ ] = n n
{ }
[ ]

[ ] [ ]

=
n
x n Q x n
min max
[ ] G G n G
12
min max
min max
[ ] n
=0.99 => brings up level in low amplitude regions
=> time constant of 100 samples (12.5 msec for 8
kHz sampling rate) => syllabic rate
Rapidly Adapting Gain Control Rapidly Adapting Gain Control
2 2 2
[ ] [ 1] [ 1](1 )
2 2 2
1
1 2
[ ] [ 1] [ 1](1 )
[ ](1 )
n
n m
m
n n x n
x m


=
= +
=

0 9 . =
m=
0
2
[ ]
[ ]
=
G
G n
n
[ ] [ ] [ ] = y n G n x n
[ ]
{ }

[ ] [ ] [ ]

= y n Q G n x n
2
0
[ ] [ ] = n n
{ }

[ ] [ ] = x n Q x n
{ }
[ ]
[ ] [ ]

=
n
x n Q x n
min max
[ ] G G n G
= 0.9 => system reacts to amplitude variations more
13
min max
min max
[ ] n
y p
rapidly => provides better approximation to
y
2
=
constant => time constant of 9 samples (1 msec at 8
kHz) for change => instantaneous rate
Feed Forward Quantizers Feed Forward Quantizers Feed Forward Quantizers Feed Forward Quantizers
[n] and G[n] vary slowly compared to x[n]
they must be sampled and transmitted as part of the waveform coder
parameters
rate of sampling depends on the bandwidth of the lowpass filter, h[n]
for = 0.99, the rate is about 13 Hz; for = 0.9, the rate is about 135
Hz
it is reasonable to place limits on the variation of [ ] or [ ], of the form n G n
2
min max
min max
[ ]
[ ]
for obtaining constant over a 40 dB range in signal levels


=>
y
G G n G
n

max
min
g g g
=
y
G
G
100
max
min
(40dB range)

14
Feed Forward Adaptation Gain Feed Forward Adaptation Gain Feed Forward Adaptation Gain Feed Forward Adaptation Gain
1
2 2
1
[ ] [ ]
+
=

n M
n x m
M
[ ] or [ ] evaluated every samples
used 128, 1024 samples for estimates
=

=
m n
M
n G n M
M
adaptive quantizer achieves up to 5.6 dB better SNR than
non-adaptive quantizers
can ac

hieve this SNR with low "idle channel noise" and wide can ac
min max
hieve this SNR with low idle channel noise and wide
speech dynamic range by suitable choice of and
feed-forward adaptation
gain with B=3less
gain for M=1024 than
M=128 by 3 dB =>
15
M 128 by 3 dB
M=1024 is too long an
interval
Feedback Adaptation Feedback Adaptation

2
[n] estimated from quantizer output (or the code words)
advantage of feedback adaptation is that neither [n] nor G[n] needs to be transmitted
to the decoder since they can be derived from the code words
16
to the decoder since they can be derived from the code words
disadvantage of feedback adaptation is increased sensitivity to errors in codewords,
since such errors affect [n] and G[n]
Feedback Adaptation Feedback Adaptation Feedback Adaptation Feedback Adaptation
2 2

[ ] [ ] [ ] / [ ]

=

n x m h n m h m
0
2

[ ] based only on past values of [ ]


two typical windows/filters are

= =


m m
n x n
1
1
0
two typical windows/filters are
1. [ ]

=
=
n
h n n
otherwise
1
2 1 1
0
. [ ] / =
=
h n M n M
otherwise
1
2 2
1

[ ] [ ]

=
=


n
m n M
n x m
M
can use very short window lengths (e g 2) to achieve = M
17
can use very short window lengths (e.g., 2) to achieve
12 dB SNR for a 3 bit quantizer
=
=
M
B
Alternative Approach to Adaptation Alternative Approach to Adaptation Alternative Approach to Adaptation Alternative Approach to Adaptation
1 2 3 4
1
1
[ ] [ ]; { , , , }
| [ ] |
= =

n P n P P P P P
P c n
[ ]
2
1 1
| [ ] |
[ ] [ ]

( ) [ ] [ ]
[ ] only depends on [ ] and [ ]

= +

n sign c n
x n n c n
n n c n [ ] o y depe ds o [ ] a d [ ]
only need to transmit codewords
also necessary to impose the limits
[
=>


c
] n
min
[
max
max min
]
the ratio / controls the dynamic
range of the quantizer


n
18
Adaptation Gain Adaptation Gain Adaptation Gain Adaptation Gain
key issue is how should P vary with key issue is how should P vary with
|c[n-1]|
if (c[n-1[ is either largest positive or largest ( [ [ g p g
negative codeword, then quantizer is
overloaded and the quantizer step size is too
small => P > 1 small => P
4
> 1
if c[n-1] is either smallest positive or negative
codeword, then quantization error is too large codeword, then quantization error is too large
=> P
1
< 1
need choices for P
2
and P
3
19
Adaptation Gain Adaptation Gain Adaptation Gain Adaptation Gain
1 2 | [ 1] | +
=
c n
Q
2 1
=

B
Q
shaded area is variation in
range of P values due to
different speech sounds or p
different B values
Can see that step size increases (P>1) are
20
Can see that step size increases (P 1) are
more vigorous than step size decreases (P<1)
since signal growth needs to be kept within
quantizer range to avoid overloads
Optimal Step Size Multipliers Optimal Step Size Multipliers Optimal Step Size Multipliers Optimal Step Size Multipliers
optimal values of P optimal values of P
for B=2,3,4,5
improvements in
SNR
4-7 dB improvement
over -law
21
2-4 dB improvement
over non-adaptive
optimum quantizers
Quantization of Speech Model Quantization of Speech Model
PPParameters Parameters
Excitation and vocal tract (linear system) are characterized by sets of
parameters which can be estimated from a speech signal by LP or cepstral
processing.
22
We can use the set of estimated parameters to synthesize an approximation
to the speech signal whose quality depends of a range of factors.
Quantization of Speech Model Quantization of Speech Model
PPParameters Parameters
Quality and data rate of synthesis depends Quality and data rate of synthesis depends
on:
the ability of the model to represent speech the ability of the model to represent speech
the ability to reliably and accurately estimate
the parameters of the model the parameters of the model
the ability to quantize the parameters in order
to obtain a low data rate digital representation to obtain a low data rate digital representation
that will yield a high quality reproduction of the
speech signal
23
Closed Closed- -Loop and Open Loop and Open- -Loop Loop
S h C d S h C d Speech Coders Speech Coders
Closed Closed- -loop loop used in a
feedback loop where the
synthetic speech output
is compared to the input
signal and the resulting signal, and the resulting
difference used to
determine the excitation
for the vocal tract model.
Open Open- -loop loop the
parameters of the model
are estimated directly are estimated directly
from the speech signal
with no feedback as to
the quality of the
lti th ti
24
resulting synthetic
speech.
Scalar Quantization Scalar Quantization Scalar Quantization Scalar Quantization
Scalar quantization treat each model parameter
t l d ti i fi d b f bit separately and quantize using a fixed number of bits
need to measure (estimate) statistics of each parameter, i.e.,
mean, variance, minimum/maximum value, pdf, etc.
each parameter has a different quantizer with a different number each parameter has a different quantizer with a different number
of bits allocated
Example of scalar quantization
pitch period typically ranges from 20-150 samples (at 8 kHz pitch period typically ranges from 20 150 samples (at 8 kHz
sampling rate) => need about 128 values (7-bits) uniformly over
the range of pitch periods, including value of zero for
unvoiced/background
amplitude parameter might be quantized with a law quantizer amplitude parameter might be quantized with a -law quantizer
using 4-5 bits per sample
using a frame rate of 100 frames/sec, you would need about 700
bps for pitch period and 400-500 bps for amplitude
25
Scalar Quantization Scalar Quantization Scalar Quantization Scalar Quantization
20-th order LPC
analysis frame
Each PARCOR
coefficient transformed
to range:
/2<sin
-1
(k
i
)</2 and
then quantized with both then quantized with both
a 4-bit and a 3-bit
uniform quantizer.
Total rate of quantized Total rate of quantized
representation of speech
about 5000 bps.
26
Techniques of Vector Techniques of Vector
Quantization Quantization
27
Vector Quantization Vector Quantization Vector Quantization Vector Quantization
code block of scalars as a vector code block of scalars as a vector,
rather than individually
design an optimal quantization
method based on mean-squared q
distortion metric
essential for model based and hybrid essential for model-based and hybrid
coders
28
Vector Quantization Vector Quantization Vector Quantization Vector Quantization
29
Waveform Coding Vector Quantizer Waveform Coding Vector Quantizer
VQ code pairs of waveform
samples,
X[n]=(x[2n],x[2n+1]); [ ] ( [ ], [ ]);
(b) Single element
codebook with cluster
centroid (0-bit codebook)
(c) Two element codebook
with two cluster centers
(1-bit codebook)
(d) Four element codebook
ith f l t t with four cluster centers
(2-bit codebook)
(e) Eight element codebook
ith i ht l t t
30
with eight cluster centers
(3-bit codebook)
Toy Example of VQ Coding Toy Example of VQ Coding Toy Example of VQ Coding Toy Example of VQ Coding
2-pole model of the vocal tract => 4
reflection coefficients
4-possible vocal tract shapes => 4 sets of
reflection coefficients
1. Scalar Quantization -assume 4 values
for each reflection coefficient => 2-bits x 4
coefficients = 8 bits/frame
2. Vector Quantization -only 4 possible
vectors => 2-bits to choose which of the 4
vectors to use for each frame (pointer into
a codebook)
this works because the scalar
components of each vector are highly
correlated
31
if scalar components are independent =>
VQ offers no advantage over scalar
quantization
Elements of a VQ Implementation Elements of a VQ Implementation Elements of a VQ Implementation Elements of a VQ Implementation
1. A large training set of analysis vectors;
X {X X X } L h ld b h l th th i X={X
1
,X
2
,,X
L
}, L should be much larger than the size
of the codebook, M, i.e., 10-100 times the size of M.
2. A measure of distance, d
ij
=d(X
i
,X
j
), between a pair of
l i t b th f l t i th t i i t
j j
analysis vectors, both for clustering the training set as
well as for classifying test set vectors into unique
codebook entries.
3 A centroid computation procedure and a centroid 3. A centroid computation procedure and a centroid
splitting procedure.
4. A classification procedure for arbitrary analysis vectors
that chooses the codebook vector closest in distance that chooses the codebook vector closest in distance
to the input vector, providing the codebook index of the
resulting nearest codebook vector.
32
VQ Implementation VQ Implementation VQ Implementation VQ Implementation
33
The VQ Training Set The VQ Training Set The VQ Training Set The VQ Training Set
The VQ training set of L10M vectors should The VQ training set of L10M vectors should
span the anticipated range of:
talkers, ranging in age, accent, gender, speaking rate,
speaking levels, etc.
speaking conditions, range from quiet rooms, to
automobiles to noisy work places automobiles, to noisy work places
transducers and transmission systems, including a
range of microphones, telephone handsets, g p p
cellphones, speakerphones, etc.
speech, including carefully recorded material,
conversational speech telephone queries etc
34
conversational speech, telephone queries, etc.
The VQ Distance Measure The VQ Distance Measure
The VQ distance measure depends critically
on the nature of the analysis vector, X. y
If X is a log spectral vector, then a possible
distance measure would be an L
p
log spectral
distance of the form: distance, of the form:
1/
1
( , ) | |
p
R
k k p
i j i j
k
d X X x x

=

1 k=
If X is a cepstral vector, then the distance
measure might well be a cepstral distance of measure might well be a cepstral distance of
the form:
1/ 2
2
( ) ( )
R
k k
d X X x x

35
1
( , ) ( )
i j i j
k
d X X x x
=
=

Clustering Training Vectors Clustering Training Vectors Clustering Training Vectors Clustering Training Vectors
Goal is to cluster the set of L training vectors into a set
f M d b k t i li d Ll d of M codebook vectors using generalized Lloyd
algorithm (also known as the K-means clustering
algorithm) with the following steps:
1 Initialization arbitrarily choose M vectors (initially out of the 1. Initialization arbitrarily choose M vectors (initially out of the
training set of L vectors) as the initial set of codewords in the
codebook
2. Nearest Neighbor Search for each training vector, find the
( ) codeword in the current codebook that is closest (in distance)
and assign that vector to the corresponding cell
3. Centroid Update update the codeword in each cell to the
centroid of all the training vectors assigned to that cell in the g g
current iteration
4. Iteration repeat steps 2 and 3 until the average distance
between centroids at successive iterations falls below a preset
threshold
36
threshold
Clustering Training Vectors Clustering Training Vectors Clustering Training Vectors Clustering Training Vectors
Voronoi Voronoi
regions and
centroids centroids
37
Centroid Computation Centroid Computation
Assume we have a set of vectors V
1 2
{ , ,..., }
.
Assume we have a set of vectors,

where all vectors are assigned to cluster
C C C C
V
V
X X X X
V C
=
i
The centroid of the set is defined as the vector
that minimizes the average distortion,
C
X
Y
i
1
i.e.,
V
1
1
min ( , )
The solution for the centroid is highly dependent
V
C
i
Y
i
Y d X Y
V
=
=

i
on the choice of distance measure. When both
and are measured in a -dimensional space with
the norm the cen
C
i
X
Y K
L troid is the mean of the vector set
2
the norm, the cen L
1
1
troid is the mean of the vector set

V
C
i
i
Y X
V
=
=

38
1
When using an distance measure, the centroid is the
median vector of the set of vectors assigned to the given class.
L i
Vector Classification Procedure Vector Classification Procedure Vector Classification Procedure Vector Classification Procedure
The classification procedure for arbitrary test set vectors i p y
is a full search through the codebook to find the "best" (minimum
distance) match.
If we denote the codebook vectors of an -vector codebo M i
1
(
ok
as for , and we denote the vector to be classified
d t ti d) th th i d f th b t
i
CB i M
X i

(
arg min ( )
and vector quantized) as , then the index, , of the best
codebook entry is:
X i
i d X CB

=
1
arg min ( , )
i
i M
i d X CB

39
Binary Split Codebook Design Binary Split Codebook Design y p g y p g
1. Design a 1-vector codebook; the single vector in the
codebook is the centroid of the entire set of training
vectors vectors
2. Double the size of the codebook by splitting each
current codebook vector, Y
m
, according to the rule:
(1 )
(1 )
m m
m m
Y Y
Y Y

= +
=
where m varies from 1 to the size of the current
codebook, and epsilon is a splitting parameter (0.01
typically) typically)
3. Use the K-means clustering algorithm to get the best
set of centroids for the split codebook
40
4. Iterate steps 2 and 3 until a codebook of size M is
designed.
Binary Split Algorithm Binary Split Algorithm Binary Split Algorithm Binary Split Algorithm
41
VQ Codebook of LPC Vectors VQ Codebook of LPC Vectors VQ Codebook of LPC Vectors VQ Codebook of LPC Vectors
64 vectors
in a
codebook
of spectral
shapes shapes
42
VQ Cells VQ Cells
43
VQ Cells VQ Cells VQ Cells VQ Cells
44
VQ Coding for Speech VQ Coding for Speech
distortion in coding computed
using a spectral distortion
measure related to the difference
in log spectra between the original
45
in log spectra between the original
and the codebook vectors
10-bit VQ comparable to 24-bit scalar
quantization for these examples
Differential Quantization Differential Quantization Differential Quantization Differential Quantization
Theory and Practice Theory and Practice
46
Differential Quantization Differential Quantization Differential Quantization Differential Quantization
we have carried instantaneous quantization of q
x[n] as far as possible
time to consider correlations between speech
l d i i diff i l samples separated in time => differential
quantization
high correlation values => signal does not high correlation values => signal does not
change rapidly in time => difference between
adjacent samples should have lower variance
than the signal itself
differential quantization can increase SNR at a given
47
bit rate, or lower bit rate for a given SNR
Example of Difference Signal Example of Difference Signal Example of Difference Signal Example of Difference Signal
Prediction error
from LPC
analysis using
p=12
Prediction error
is about 2.5
times smaller
th i l than signal
48
Differential Quantization Differential Quantization

[ ] c n

[ ] d n
[ ] d n
[ ] x n
Q[ ] Encoder +
[ ] c n [ ] d n

[ ] x n
[ ] x n

[ ] d n
[ ] x n
P +
[ ] x n
[ ] x n
(a) Coder
[ ] [ ] [ ]
where [ ] unquantized input sample
=
=

d n x n x n
x n
[ ] estimate or prediction of [ ]

[ ] is the output of a predictor system, , whose input is [ ],


a quantized version of
=

x n x n
x n P x n
[ ] x n
49
[ ] prediction error signal

[ ] quantized difference (prediction error) signal


=
=
d n
d n
Differential Quantization Differential Quantization

'[ ] c n

'[ ] d n
'[ ] x n
Decoder +
[ ] c n
[ ] d n
[ ] x n
P
'[ ] x n

(b) Decoder (b) Decoder


[ ] [ ] [ ]
where [ ] unquantized input sample
[ ] estimate or prediction of [ )
=
=
=

d n x n x n
x n
x n x n [ ] estimate or prediction of [ )

[ ] is the output of a predictor system, , whose input is [ ],


a quantized version of
=

x n x n
x n P x n
[ ] x n
50
[ ] prediction error signal

[ ] quantized difference (prediction error) signal


=
=
d n
d n
Differential Quantization Differential Quantization
[ ] [ ] [ ]

[ ] [ ] [ ]
=

d n x n x n
d d
Differential Quantization Differential Quantization

[ ] [ ] [ ] = + d n d n e n
Q[ ] Encoder +
[ ] c n

[ ] d n
[ ] d n
[ ] x n
P +

[ ] x n
[ ] x n

1
( )

=
=

p
k
k
k
p
P z z
This part reconstructs the
quantized signal

[ ] x n

( ) ( ) ( ) +

x n x n d n
1

[ ] [ ]
=
=

p
k
k
x n x n k
51
quantized signal,
[ ] x n ( ) ( ) ( )

( ) ( ) ( )
= +
= +
x n x n d n
x n x n e n
Differential Quantization Differential Quantization Differential Quantization Differential Quantization
difference signal, d[n], is quantized - not x[n]
quantizer can be fixed, or adaptive, uniform or non-uniform
quantizer parameters are adjusted to match the variance of d[n]

[ ] [ ] [ ] [ ] quantization error

[ ] [ ] [ ] predicted plus quantized

[ ] [ ] [ ] quantized input has same quantization


= +
= +
= +

d n d n e n e n
x n x n d n x d
x n x n e n [ ] [ ] [ ] quantized input has same quantization
error as the difference signal if
= +
=>
d
x n x n e n
2 2
, error is smaller
independent of predictor, , quantized [ ] differs from
i d [ ] b [ ] h i i f h diff i l!
<

x
P x n
unquantized [ ] by [ ], the quantization error of the difference signal!
good prediction gives lower quantization =>
x n e n
error than quantizing input directly
52
Differential Quantization Differential Quantization Differential Quantization Differential Quantization
quantized difference signal is encoded into c(n) quantized difference signal is encoded into c(n)
for transmission

( ) ( ) ( ) ( )
1

( ) ( ) ( ) ( )

= +

X z D z P z X z
X z D z H z D z
H(z)
( ) ( ) ( ) ( )
1 ( )

= =

X z D z H z D z
P z
1
( ) H
1
1
( )
1

=
=

p
k
k
k
H z
z
first reconstruct the quantized difference signal from
the decoder codeword, c[n] and the step size
53
next reconstruct the quantized input signal using the
same predictor, P, as used in the encoder
SNR for Differential Quantization SNR for Differential Quantization SNR for Differential Quantization SNR for Differential Quantization
the SNR of the differential coding system is
2
2
2
2
[ ]

[ ]



= =


x
e
E x n
SNR
E e n
2 2
2 2



= =
d x
P Q
d e
SNR G SNR
2
where
signal to quantizing noise ratio of the quantizer

= =
d e
d
SNR
2
2
signal-to-quantizing-noise ratio of the quantizer

= =
=
Q
e
x
P
SNR
G
2
gain due to differential quantization =
54
P
2
g q

d
SNR for Differential Quantization SNR for Differential Quantization SNR for Differential Quantization SNR for Differential Quantization
depends on chosen quantizer and can be
Q
SNR depends on chosen quantizer and can be
maximized using all of the previous quantization
methods (uniform non uniform optimal)
Q
SNR
methods (uniform, non-uniform, optimal)
, hopefully, 1, is the gain in due to
differential coding
>
P
G SNR
differential coding
w
2
ant to choose the predictor, , to P
2
2
maximize since is fixed, then we
need to minimize , i.e., design the best predictor

P x
d
G
P
55
Predictor for Differential Predictor for Differential
Q i i Q i i Quantization Quantization
consider class of linear predictors,

[ ] [ ]

p
k
P
x n x n k
1
[ ] [ ]
[ ] is a linear combination of previous quantized values of [ ]
the predictor -transform is
=

k
k
x n x n
z
1
1
the predictor transform is
( ) ( ) --

=

= =

p
k
k
k
z
P z z A z predictor system function
1
with predictor impulse response coefficients (FIR filter)
[ ]

=
k
p n k p
56
0 = otherwise
Predictor for Differential Predictor for Differential
Q i i Q i i Quantization Quantization

the reconstructed signal is the output [ ] of a system x n


1 1 1
the reconstructed signal is the output, [ ], of a system
with system function

( )
( )
x n
X z
H z
1
1
1
( )

( ) ( )
( )
where the input to the system is the quantized difference


=
= = = =


p
k
k
k
H z
P z A z
D z
z
where the input to the system is the quantized difference
sig

nal, [ ]


[ ] [ ] [ ] =

p
k
d n
d n x n x n k
1
[ ] [ ] [ ]
where

[ ] [ ]


k
k
p
d n x n x n k
k
57
1
[ ] [ ]
=
=
k
k
x n k x n
Predictor for Differential Predictor for Differential
Q i i Q i i Quantization Quantization
2
( )
2
2
2 2
to solve for optimum predictor, need expression for
[ ] [ ] [ ]



= =

d
d
E d n E x n x n
2

[ ] [ ]




=



p
k
E x n x n k
1
2
[ ] [ ] [ ]
=




=

k
p p
E x n x n k e n k
1 1
[ ] [ ] [ ]

( [ ] [ ] [ ])

= =
=




= +
k k
k k
E x n x n k e n k
x n x n e n
58
Solution for Optimum Predictor Solution for Optimum Predictor Solution for Optimum Predictor Solution for Optimum Predictor
2
1 want to choose { } to minimize => j p
2
2
1 want to choose { }, , to minimize
differentiate wrt , set derivatives to zero, giving

=>


j d
d j
p
j p
( ) ( )
1
2
0 1
[ ] [ ] [ ] [ ] [ ]

=


= + +

d
k
k
j
E x n x n k e n k x n j e n j
j p
which can be wri
( )
2
0 1
tten in the more compact form

[ ] [ ] [ ] [ ] [ ] , = =

E x n x n x n j E d n x n j j p
2
the predictor coefficients that minimize are the ones that
make the difference signal, [ ], be uncorrelated w

d
d n
1
ith past

values of the predictor input [ ] x n j j p


59
1 values of the predictor input, [ ], x n j j p
Solution for Alphas Solution for Alphas Solution for Alphas Solution for Alphas
( )
0 1

[ ] [ ] [ ] [ ] [ ] ,
b i ti f diff ti l di
= =

E x n x n x n j E d n x n j j p
basic equations of differential coding

[ ] [ ] [ ] quantization of difference signal

[ ] [ ] [ ] error same for original signal

= +
= +
d n d n e n
x n x n e n [ ] [ ] [ ] error same for original signal

[ ] [ ]
= +
= +

x n x n e n
x n x n

[ ] feedback loop for signal

[ ] [ ] prediction loop based on quantized input

p
d n
x n x n k
1
[ ] [ ] prediction loop based on quantized input


[ ] [ ] [ ] direct substitution

=
=
=

k
k
p
k
x n x n k
d n x n x n k
[ ]
1

[ ] [ ] [ ]

[ ] [ ] [ ] [ ]
=
= +
+

k
p p
x n j x n j e n j
x n x n k x n k e n k
60
[ ]
1 1
[ ] [ ] [ ] [ ]
= =
= = +
k k
k k
x n x n k x n k e n k
Solution for Alphas Solution for Alphas Solution for Alphas Solution for Alphas
( )

[ ] [ ] [ ] [ ] [ ] 0, 1

[ ] [ ] [ ]
= =

= +

E x n x n x n j E d n x n j j p
x n j x n j e n j
[ ]
1 1
[ ] [ ] [ ]

[ ] [ ] [ ] [ ]
= =
= +
= = +

p p
k k
k k
x n j x n j e n j
x n x n k x n k e n k
[ ] [ ] [ ] [ ]
[ ]
[ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ]
[ ] [ ] [ ]
+

= +


p
k
E x n x n j E x n e n j E x n x n j E x n e n j
E x n k e n k x n j +
[ ]
1 =


k
k
[ ]
1
[ ] [ ] [ ]
=

+

p
k
k
E x n k e n k e n j
[ ] [ ]
1
1 1
[ ] [ ] [ ] [ ]
=
= =

= + +

k
p p
k k
k k
E x n k x n j E e n k x n j
61
[ ] [ ]
1 1
[ ] [ ] [ ] [ ]
= =
+

p p
k k
k k
E x n k e n j E e n k e n j
Solution for Optimum Predictor Solution for Optimum Predictor Solution for Optimum Predictor Solution for Optimum Predictor
solution for - first expand terms to give
k
[ ] [ ] [ ]
1
[ ] [ ] [ ] [ ] [ ] [ ]
=
+ =

k
p
k
k
E x n j x n E e n j x n E x n j x n k
[ ] [ ]
[ ]
1 1
[ ] [ ] [ ] [ ]
= =
+ +

p p
k k
k k
p
E e n j x n k E x n j e n k
[ ]
1
1 [ ] [ ] ,
assume fine quantization so th

=
+

k
k
E e n j e n k j p
at [ ] is uncorrelated with [ ], and e n x n
[ ]
[ ]
2
0
[ ] is stationary white noise (zero mean), giving
[ ] [ ] , , =
e n
E x n j e n k n j k
62
[ ]
2
[ ] [ ] [ ] =
e
E e n j e n k j k
Solution for Optimum Predictor Solution for Optimum Predictor
2
1
we can now simplify solution to form
[ ] [ ] [ ]

p
j j k j k j
2
1
2
1 [ ] [ ] [ ] ,
where [ ] is the autocorrelation of [ ]. Defining terms
[ ]


=

= +


k e
k
p
j j k j k j p
j x n
j
2 2
1
1
[ ]
[ ] [ ] [ ] ,



=

= = +

p
e
k
k
x x
j
j j k j k
or in matrix form

j p
1
2
1 1 1 1 1
2 1 1 1 2

[ ] / [ ] [ ]
[ ] [ ] / [ ]


=
+



+


C
SNR p
SNR p
2
1 2 1 1
[ ] [ ] [ ]
. , , .
.
.
[ ] [ ] [ ] /





= = =






+


p
C
p p p SNR
63
1 2 1 1 [ ] [ ] [ ] /




+


p
p p p SNR
Solution for Optimum Predictor Solution for Optimum Predictor
=

C
1
2
1 1 1 1 1
2 1 1 1 2
[ ] / [ ] [ ]
[ ] [ ] / [ ]
. , , .



+



+



= = =


SNR p
SNR p
C
1 2 1 1
.
.
[ ] [ [ [ ] /
with matrix solution








+

p
p p p SNR
1
with matrix solution
(defining

= = C SNR
2 2
1
/ )
where is a Toeplitz matrix can be computed via well understood

=>
x e
C C
2 2
numerical methods
the problem here is that depends on / , but depends on
coefficients of the predicto

=
x e
k
C SNR SNR
r, which depend on bit of a dilemma => SNR
64
coe c e ts o t e p ed cto
k
, c depe d o b t o a d e a S
Solution for Optimum Predictor Solution for Optimum Predictor Solution for Optimum Predictor Solution for Optimum Predictor
1
1 special case of , where we can solve
directly for of this first order linear predictor, as
= p
1
1
1 1
[ ]

/

=
+ SNR
1
1 1 can see that [ ]
we will look further at this special case later
< <

65
Solution for Optimum Predictor Solution for Optimum Predictor
( ) ( )
2
in spite of problems in solving for optimum predictor coefficients, we can
solve for the prediction gain, , in terms of the coefficients, as
[ ] [ ] [ ] [ ]

=


P j
G
E x n x n x n x n
( ) ( )
( )
[ ] [ ] [ ] [ ]
[ ] [ ] [ ]
=

=

d
E x n x n x n x n
E x n x n x n
( )
( )
[ ] [ ] [ ]
where the term [ ] [ ] is the prediction error; we can show that the
d t i th i b i i th di ti i



E x n x n x n
x n x n
second term in the expression above is zero, i.e., the prediction error is
uncorrelated with the pred
( )
2
iction value; thus
[ ] [ ] [ ] =

d
E x n x n x n
( )
2
1
[ ] [ ] [ ]) [ ]
assuming uncorrelated signal and noise, we get

=


= +


p
k
k
p p
E x n E x n k e n k x n
2 2 2
1 1
1 [ ] [ ]
(

= =

= =



p p
d x k x k
k k
P
k k
G
1
) for optimum values of
[ ]
=

opt k
p
k
66
1
1 [ ]
=

k
k
k
First Order Predictor Solution First Order Predictor Solution
2 2
1
1
For the case we can examine effects of
sub-optimum value of on the quantity / .
=
=
P x d
p
G
( )
1
1 1
The optimum solution is:

[ ]

P
opt
G
1
1 1
1
[ ]
Consider choosing an arbitrary value for ; then we


2 2 2 2 2
1 1 1
1 2 1
get
[ ]

= + +

d x e
( )
1 1 1
1
[ ]
Giving the sub-optimum result

=
d x e
G
( )
2
1 1
2
1
1 2 1 1 1

[ ] ( / )
Where the term / represents the increase in
i f [ ] d t th f db k f th

=
+ +

P
arb
G
SNR
SNR
d i l [ ]
67
variance of [ ] due to the feedback of the d n error signal [ ]. e n
First Order Predictor Solution First Order Predictor Solution
( )
2
Can reformulate as

P
arb
G
( )
1
2
1 1
1
1 2 1

[ ]

=
+
Q
P
arb
SNR
G
2
1
1
1
for any value of (including the optimum value).
Consider the case of ( )

=
( )
2
2
2 2
1
1
1 1
1
1 1 1 1
[ ]
[

[ ] [ ]


= =



Q
P
subopt
SNR
G
)



Q
SNR 1 1 1 1 [ ] [ ]

the gain in prediction is a product of the prediction gain
without the quantizer, reduced by the loss due to feedback

Q
SNR
68
of the error signal.
First Order Predictor Solution First Order Predictor Solution First Order Predictor Solution First Order Predictor Solution
1
We showed before that the optimum value of
[ ]
1 1 1 was [ ] / /
If we neglect the term in 1/SNR (usually very small), then
+

SNR
1
1
1
[ ]
and the gain due to prediction is
=
( )
2
1
1 1

[ ]
Thus t

=

P
opt
G
1 0 here is a prediction gain so long as [ ] Thus t
( )
1 0
1 0 8
2 77
here is a prediction gain so long as [ ]
It is reasonable to assume that for speech, [ ] . , giving
. (or 4.43 dB)


>
>
P
opt
G
69
( )
P
opt
Differential Quantization

[ ] [ ]
1

=
=

p
k
k
x n x n k
Q
+

x[n]
d[n]
d[n]
^
[ ] [ ] [ ]

[ ] [ ] [ ]
=
= +

d n x n x n
d n d n e n
Q
P
+
+
+
-
x[n]
~
x[n]
^
[ ] [ ] [ ]

[ ] [ ] [ ]

[ ] [ ] [ ]
+
= +

d n d n e n
x n x n d n
2 2 2
2 2 2

= = =
d x x
p Q
SNR G SNR
[ ] [ ] [ ] = + x n x n e n
[ ]
2 2 2
1
First Order Predictor:
1

=
p Q
e d e
The error, e[n], in quantizing
d[n] is the same as the error in
/
[ ]
[ ]
1
2
2
1 1
1 1
1
1 1

+


=




p
Q
SNR
G
SNR
d[n] is the same as the error in
representing x[n]
70
[ ]
2
1
1 1


Prediction gain dependent on [1],
the first correlation coefficient
Long Long- -Term Spectrum and Correlation Term Spectrum and Correlation
Measured with 32-point
Hamming window
0 8579 0.8579
0.5680
0.2536 0.2536
71
Computed Prediction Gain Computed Prediction Gain
72
Actual Prediction Gains for Speech Actual Prediction Gains for Speech Actual Prediction Gains for Speech Actual Prediction Gains for Speech
i ti i i 4 k variation in gain across 4 speakers
can get about 6 dB improvement in
SNR => 1 extra bit equivalent in
quantization but at a price of quantizationbut at a price of
increased complexity in quantization
differential quantization works!!
gain in SNR depends on signal
correlations correlations
fixed predictor cannot be optimum
for all speakers and for all speech
73
material
Delta Modulation Delta Modulation Delta Modulation Delta Modulation
Linear and Adaptive Linear and Adaptive
74
Delta Modulation Delta Modulation Delta Modulation Delta Modulation
simplest form of differential quantization is in delta modulation (DM)
sampling rate chosen to be many times the Nyquist rate for the input
signal => adjacent samples are highly correlated
in the limit as T0, we expect
2
[1] 0 as
x
T
this leads to a high ability to predict x[n] from past samples, with the
variance of the prediction error being very low, leading to a high
di ti i > i l 1 bit (2 l l) ti > th bit prediction gain => can use simple 1-bit (2-level) quantizer => the bit
rate for DM systems is just the (high) sampling rate of the signal
75
Linear Delta Modulation Linear Delta Modulation

[ ] [ ] 0 [ ] 0
2-level quantizer with fixed
step size, , with quantizer form
( )

= > = d n if d n c n
[ ] 0 [ ] 1
1
( )
using simple first order predictor
with optimum prediction gain
= < =

if d n c n
( )
2
1
1 [1]
[1]

as


P
opt
G
( )
1,
(qualitatively

P
opt
G
(qualitatively
only since the assumptions under
which the equation was derived
76
[1] 1) break down as
Illustration of DM Illustration of DM


[ ] [ 1] [ ]
1

basic equations of DM are



when (essentially digital integration or accumulation of increments of )

= +

x n x n d n

d

[ ] [ ] [ 1] [ ] [ 1] [ 1]
[ ]

is a first backward
= =

d n x n x n x n x n e n
d n [ ]
( )
( )
max | |
difference of , or an approximation to the derivative of the input
how big do we make --at maximum slope of we need


a
a
x n
x t
dx t
max | |
or else the reconstructed signal will lag the actua

T dt

[ ]
l signal called 'slope overload' condition--resulting
in quantization error called 'slope overload distortion'
since can only increase by fixed increments of , fixed DM is called linear DM o
=>
x n r LDM [ ] y y ,
slope
overload overload
condition
granular
noise
77
DM Granular Noise DM Granular Noise DM Granular Noise DM Granular Noise
( ) when has small slope, determines the peak error when =>
a
x t
( ) 0

[ ]
, quantizer will be alternating sequence of 0's and 1's, and
will alternate around zero with peak variation of this c
=
=>
a
x t
x n ondition
is called "granular noise" is called granular noise
need large step size to handle wide dynamic range
need small step size to accurately represent low level
signals
with LDM we need to worry about dynamic range with LDM we need to worry about dynamic range
and amplitude of the difference signal => choose to
minimize mean-squared quantization error (a
78
compromise between slope overload and granular
noise)
Performance of DM Systems Performance of DM Systems Performance of DM Systems Performance of DM Systems
normalized step size defined as

( )
1/ 2
2
0
[ ] [ 1]
/ (2 )

oversampling index defined as

=
S N
E x n x n
F F F
0
( )
where is the sampling rate of the DM
and is the Nyquist frequency of the signal
the tota

S N
S
N
F
F
2
l bit rate of the DM is
BR F F F
0
2 = =
S N
BR F F F
can see that for given value of F there is an optimum value of can see that for given value of F
0
, there is an optimum value of
optimum SNR increases by 9 dB for each doubling of F
0
=> this is better than the 6 dB
obtained by increasing the number of bits/sample by 1 bit
curves are very sharp around optimum value of => SNR is very sensitive to input level
79
curves are very sharp around optimum value of => SNR is very sensitive to input level
for SNR=35 dB, for F
N
=3 kHz => 200 Kbps rate
for toll quality need much higher rates
Adaptive Delta Mod Adaptive Delta Mod
[ ] [ 1]
step size adaptation for DM
(from codewords)

= n M n
min max
[ ]
[ ]
[ 1] [ ]
[ ]
is a function of and
, since depends
l th i f

n
M c n
c n c n
d[ ]

[ ] [ ] [ 1]
[ ]
only on the sign of

the sign of ca
=

d n
d n x n x n
d n n be
determined before theactual

[ ]
[ ]
determined before theactual
quantized value which
needs the new value of
for evaluation

d n
n
1 [ ] [ 1]
for evaluation
the algorithm for choosing the
step size multiplier is

= > = M P if c n c n
80
[ ] [ ]
1 [ ] [ 1] = < M Q if c n c n
Adaptive DM Performance Adaptive DM Performance Adaptive DM Performance Adaptive DM Performance
slope
overload
granular
condition
granular
noise
slope overload in LDM causes runs of 0s or 1s slope overload in LDM causes runs of 0 s or 1 s
granularity causes runs of alternating 0s and 1s
figure above shows how adaptive DM performs with P=2, Q=1/2, =1
during slope overload, step size increases exponentially to follow increase in
waveform slope
during granularity, step size decreases exponentially to
min
and stays there
81
g g y, p p y
min
y
as long as slope remains small
ADM Parameter Behavior ADM Parameter Behavior ADM Parameter Behavior ADM Parameter Behavior
ADM parameters are P, Q,
min
and
max
choose and to provide desired dynamic range choose
min
and
max
to provide desired dynamic range
choose
max
/
min
to maintain high SNR over range of input signal
levels

min
should be chosen to minimize idle channel noise
PQ should satisfy PQ1 for stability
PQ chosen to be 1
peak of SNR at P=1.5, but for
range 1.25<P<2, the SNR range 1.25 P 2, the SNR
varies only slightly
82
Comparison of LDM, ADM and log PCM Comparison of LDM, ADM and log PCM Comparison of LDM, ADM and log PCM Comparison of LDM, ADM and log PCM
ADM is 8 dB better SNR at 20
Kbps than LDM, and 14 dB better
SNR at 60 Kbps than LDM
ADM gives a 10 dB increase in
SNR for each doubling of the bit
t LDM i b t 6 dB rate; LDM gives about 6 dB
for bit rate below 40 Kbps, ADM
has higher SNR than -law PCM;
f hi h bit t l PCM h for higher bit rates log PCM has
higher SNR
83
Higher Order Prediction in DM Higher Order Prediction in DM Higher Order Prediction in DM Higher Order Prediction in DM
2
( )
assuming two real poles, we can
write as

H z

[ ] [ 1]
first order predictor gave

with reconstructed signal satisfying


x n x n
( )( )
2
1 1

( ) 1
( ) , 0 , 1

1 1 ( )

better prediction is achieved using

= = < <

X z
H z a b
az bz D z


[ ] [ 1] [ ]

( )
g y g

with system function
= +

x n x n d n
X
this "double integration" system with
up to 4 dB better SNR
there are i ssues of interaction between
th d ti ti d th di t
1
1
( ) 1
( )

1
( )

digital equivalent of a leaky integra


= =

X z
H z
z
D z
tor.
the adaptive quantizer and the predictor


[ ] [ 1] [ 2] [ ]
with reconstructed signal
d
1 2

[ ] [ 1] [ 2]
consider a second order predictor with

= +

x n x n x n
1 2
[ ] [ 1] [ 2] [ ]

( ) 1
( )

with system function
= + +

x n x n x n d n
X z
H z
84
( )
2
1 2
1 2
( )
( )

1 ( )



= =

H z
z z D z
Differential PCM (DPCM) Differential PCM (DPCM) Differential PCM (DPCM) Differential PCM (DPCM)
fixed predictors can give from 4-11 dB fixed predictors can give from 4-11 dB
SNR improvement over direct
ti ti (PCM) quantization (PCM)
most of the gain occurs with first g
order predictor
prediction up to 4
th
or 5
th
order helps prediction up to 4
th
or 5
th
order helps
85
DPCM with Adaptive Quantization DPCM with Adaptive Quantization DPCM with Adaptive Quantization DPCM with Adaptive Quantization
quantizer step size
proportional to variance proportional to variance
at quantizer input
can use d[n] or x[n] to
control step size control step size
get 5 dB improvement
in SNR over -law non-
adaptive PCM
get 6 dB improvement
in SNR using differential g
configuration with fixed
prediction => ADPCM is
about 10-11 dB SNR
86
better than from a fixed
quantizer
Feedback ADPCM Feedback ADPCM Feedback ADPCM Feedback ADPCM
87
can achieve same improvement in SNR as feed
forward system
DPCM with Adaptive Prediction DPCM with Adaptive Prediction DPCM with Adaptive Prediction DPCM with Adaptive Prediction
need adaptive
prediction to handle p
non-stationarity of
speech
88
DPCM with Adaptive Prediction DPCM with Adaptive Prediction DPCM with Adaptive Prediction DPCM with Adaptive Prediction
prediction coefficients assumed to be time-dependent of the form

p
1

[ ] [ ] [ ]
[ ]

assume speech properties remain fixed over short time intervals
choose to minimize the average s

=
=

k
k
x n n x n k
n quared prediction error [ ] choose to minimize the average s
k
n quared prediction error
over short intervals
the optimum predictor coefficients satisfy the relationships
1
[ ] [ ] [ ], 1, 2,...,
[ ]

where is the short-time autocorrelation function

=
= =


p
n k n
k
n
R j n R j k j p
R j of the form
[ ] [ ] [ ] [ ] [ ], 0
[ ]

is window positioned at sample of input

=
= +

n
m
R j x m w n m x j m w n m j j p
w n - m n
89
update 's every 10-20 msec
Prediction Gain for DPCM with Prediction Gain for DPCM with
Ad i P di i Ad i P di i Adaptive Prediction Adaptive Prediction
[ ]
2
10 10
2
[ ]
10log 10log
[ ]



=




P
E x n
G
E d n [ ]
fixed prediction 10.5 dB prediction
gain for large





E d n
p
adaptive prediction 14 dB gain for
large
adaptive prediction more robust to

p
speaker, speech material
90
Comparison of Coders Comparison of Coders Comparison of Coders Comparison of Coders
6 dB between curves
sharp increase in p
SNR with both fixed
prediction and adaptive
quantization quantization
almost no gain for
adapting first order adapting first order
predictor
91

You might also like