Low Pass Filters

There are two primary filters used here:
  • I used an 8KHz low-pass filter used before converting to a 16000 samples/sec rate (for Skype)
  • I use a 1KHz low-pass filter to muffle the feedback a little bit.

I created these filters using the "butter" command in MATLAB. The syntax is a little funny at first. For example, to create an 8KHz low pass filter, for sounds sampled at 48000 samples/sec:

» [B,A]=butter(2, 8000/(48000/2))
0.55559493004482 1.11118986008964 0.55559493004482
1.00000000000000 0.90284176132283 0.31953795885644

These coefficients have a little redundancy -- in the first row, the first number and the last number are always the same, and the second row always starts with 1.0. The software doesn't store these extra values. Instead it stores:
0.55559493004482, 1.11118986008964,
0.90284176132283, 0.31953795885644



To create the filter for 1 KHz low pass filter I used (for a 48000 samples/sec rate):

» [B,A]=butter(2, 1000/(48000/2))
0.04774914358620 0.09549828717239 0.04774914358620
1.00000000000000 -1.29386825007216 0.48486482441695}

As you've probably guessed, the following is what I used when creating the 1KHz low pass for the 16000 sample/rate:

{"» [B,A]=butter(2, 1000/(16000/2))
0.22951220191084 0.45902440382169 0.22951220191084
1.00000000000000 -0.26606610449551 0.18411491213889

Last edited Jun 2, 2009 at 9:28 AM by randym, version 1

Comments

No comments yet.