Databases Reference
In-Depth Information
Pairs (ISP) (described below), which are quantized using a vector quantizer. The reason be-
hind the transformation is that we will need to quantize whatever representation we have of
the synthesis filters introducing quantization error. The elements of the ISP representation are
uncorrelated if the underlying process is stationary, which means that error in one coefficient
will not cause the entire spectrum to get distorted.
Given a set of sixteen LP coefficients
{
a i }
, define two polynomials
f 1 (
z 16 A
z 1
z
) =
A
(
z
) +
(
)
(29)
f 2 (
z 16 A
z 1
z
) =
A
(
z
)
(
)
(30)
where
a i z i
A
(
z
) =
i
Clearly, if we know the polynomials their sum will give us A
. Instead of sending the
polynomials, we can send the roots of these polynomials. These roots are known to all lie on
the unit circle, and the roots of the two polynomials alternate. The polynomial f 2 (
(
z
)
z
)
has two
roots at z
=
1 and z
=−
1. These are removed and we get the two polynomials
f 1 (
f 1 (
z
) =
z
)
(31)
f 2 (
z
)
f 2 (
) =
z
(32)
z 2
1
These polynomials can now be factored as follows
1
z 2
2 q i z i
f 1 (
z
) = (
1
+
a 16 )
+
(33)
i
=
0
,
2
,...,
14
1
z 2
2 q i z i
f 2 (
z
) = (
1
+
a 16 )
+
(34)
i
=
1
,
3
,...,
13
where q i
ω i are the immittance spectral frequencies. The ISP coefficients are
quantized using a combination of differential encoding and vector quantization. The vector
of sixteen frequencies is split into subvectors and these vectors are quantized in two stages.
The quantized ISPs are transformed to LP coefficients, which are then used in the fourth
subframe for synthesis. The ISP coefficients used in the other three subframes are obtained by
interpolating the coefficients in the neighboring subframes.
For each 5-ms subframewe need to generate an excitation vector. As inCELP, the excitation
is a sum of vectors from two codebooks, a fixed codebook and an adaptive codebook. One of
the problems with vector codebooks has always been the storage requirements. The codebook
should be large enough to provide for a rich set of excitations. However, with a dimension of
64 samples (for 5ms), the number of possible combinations can get enormous. The G.722.2
algorithm solves this problem by imposing an algebraic structure on the fixed codebook. The
64 positions are divided into four tracks. The first track consists of positions 0, 4, 8,…, 60.
The second track consists of the positions 1, 5, 9,…, 61. The third track consists of positions
2, 6, 10,…, 62 and the final track consists of the remaining positions. We can place a single
signed pulse in each track by using 4 bits to denote the position and a fifth bit for the sign.
=
cos
i )
and
Search WWH ::




Custom Search