Hi Ken.
Curently im thinking about putting some thinks together to make some noise or maybe music. There are many thinking i hopped offer like phase modulation,frequency modulation etc wich isquity easy. Now i want filters. Lowpass shows easy. I think it could be implemented as some sort of blur.
output[t] = (input[t]+input[t-1]+input[t-2]+input[t-3])/4
for example. But highpass ist more difficult:
output[t] = (input[t]*3-input[t-1]-input[t-2]-input[t-3])/3
but ist that the right way. An are Band passes only a sort of combinantion of both? Hope you can help me.
Awesoken at
In case you're wondering, the mirror image (in the frequency domain) of this low pass filter:
output[t] = (input[t]+input[t-1]+input[t-2]+input[t-3])/4
is this:
output[t] = (input[t]-input[t-1]+input[t-2]-input[t-3])/4
By "mirror", I mean the frequency spectrum of the filter is horizontally flipped between 0hz and the Nyquist frequency.
For a good quality filter, you need a lot more than 4 taps. Often, people use something in the range of 20 to hundreds of taps. The more taps you use, the closer you can get to the desired frequency behavior (i.e. better signal to noise ratio). If latency is a concern, then obviously you can't use such a big filter.
To get optimal coefficients, you should use a utility program to generate the coefficients for you. They use iterative algorithm which can find the best coefficients for your criteria. If you have Matlab, you can design filters using the commad "fdatool". Or you can try the javascript utility here: http://ittc.ku.edu/~rvc/projects/firfilter/normal