DSPRelated.com
Forums

CVSD Decoder filter

Started by Aditi Akula November 23, 2009
Hi,

I am working on a CVSD code that I found online on Koders.com. I have a few
questions.
The CVSD code that I am working on is a 16kbps code.

1) In the decoder side of the code, a 48-tap FIR filter (integrator) is
used. The coefficients of this filter
are already given in the code. Looking at the frequency response of the
filter, it looks like a low pass filter
with cut-off at approximately 0.45 times fs/2 ( 0.45 *fs/2). If the
sampling rate used was 8kHz, then the
cut-off would be around 1.8kHz, which does not make sense as most of the
high frequency content
would be filtered.

If anyone has used the same code or if you have any idea
I would like to know if this FIR filter (on the decoder side) works at a
higher sampling rate other than 8kHz
which is not obvious in the code.
Could someone throw more light on this and help me understand better about
the filter on the decoder side.

Thank you,
Aditi.
Hi Aditi,

CVSD encoders generally operate at 1 bit per sample, so a 16 kbps encoder
is sampling at 16 khz. That would explain the filter coefficients.

Sincerely,

--
Phil Frisbie, Jr.
Hawk Software
http://www.hawksoft.com

On Fri, November 20, 2009 7:51 am, Aditi Akula wrote:
> Hi,
>
> I am working on a CVSD code that I found online on Koders.com. I have a
> few
> questions.
> The CVSD code that I am working on is a 16kbps code.
>
> 1) In the decoder side of the code, a 48-tap FIR filter (integrator) is
> used. The coefficients of this filter
> are already given in the code. Looking at the frequency response of the
> filter, it looks like a low pass filter
> with cut-off at approximately 0.45 times fs/2 ( 0.45 *fs/2). If the
> sampling rate used was 8kHz, then the
> cut-off would be around 1.8kHz, which does not make sense as most of the
> high frequency content
> would be filtered.
>
> If anyone has used the same code or if you have any idea
> I would like to know if this FIR filter (on the decoder side) works at a
> higher sampling rate other than 8kHz
> which is not obvious in the code.
> Could someone throw more light on this and help me understand better about
> the filter on the decoder side.
>
> Thank you,
> Aditi.
>
I know nothing of the detail of your code, but CVSD is a very simple coder but will work reasonably well if the speech signal is somewhat oversampled. Then, the steps between samples, which CVSD is following, will be smaller statistically speaking.

Therefore the low cut-off of 1.8kHz for an 8kHz sampling makes sense from that perspective; it reduces rates-of-change between samples by only including lower frequency components.

Try it out and see what you think. Then try running at a higher sampling rate with the commensurate bit-rate increase and see the difference.

Kind Regards

John Rye
Meridian One Consulting Ltd.
+44 1684 560900
www.meridian-one.co.uk