A state machine for attenuating the transition into and out of NLP state to reduce
voice clipping and to reduce echo leak in a voice over packet signal transmission.
The state machine interposes two additional transitional states between the NLP
active state and the NLP inactive state to eliminate the sharp transition of NLP
activity. An NLP entering state is used to gradually reduce the mixing ratio of
echo and voice to attenuate the transition from passage of echo in the NLP inactive
state to the suppression of echo in the NLP active state. An NLP exiting state
is used to gradually increase (ramping the change) the mixing ratio of echo and
voice to attenuate the transition from suppression of echo in the NLP active state
to passage of echo in the NLP inactive state. The rate of increase/decrease, the
transition rate is determined based upon the signal parameters, including the presence
of double talk and a transition rate indicator based unon these factors is generated
in software to control the transition rate.