DSPRelated.com
Forums

abt VAD algorithm 1 of AMR codec

Started by Sameer Kibey July 25, 2002
Hi all!

i have a query regarding the VAD algorithm 1 used in GSM AMR speech codec.one of
the steps in this algo is the use of a filter bank. this bank consists of 5th
and 3rd order filter blocks.

for the 3rd order filter block the equations are as follows :

x_lp(n) = 0.5 * (x(n) + A3(x(n-1))) eq (3.2a)
x_hp(n) = 0.5 * (x(n) - A3(x(n-1))) eq (3.2b)

where
x(n) is the input signal
x_lp(n) = low pass component
x_hp(n) = high pass component

A3() is said to be a first order direct form all-pass filter, whose transfer
function is given by :

A3(z) = [C3+z^-1]/[1+Cz^-1]
where C3 = filter coefft

now, the term A3 in eq 3.2a and 3.2b are confusing since all the other terms are
in time domain. in fact, going by their C code, i found that the term is
C3*x(n-1) and not A3(x(n-1)).

even for 5th order filter, same results are obtained.(A1 to be replaced by C1
etc).
is this observation correct?if it is then there is a printing mistake in the
standard which is generally unlikely.
if anyone has worked on this earlier please let me know the solution.

Thank you
Sameer Kibey