Take the 2-minute tour ×
Sound Design Stack Exchange is a question and answer site for sound engineers, producers, editors, and enthusiasts. It's 100% free, no registration required.

I've constantly heard about the Low-Pass (or High-Pass) filter, but I am confused. I read that it works on cancelling out certain frequencies that are below (or above) a certain threshold.

However, I am using the Time-Domain for calculating Note Onsets (that is, using the change in signal amplitude/energy). So I am not sure on how I can apply low-pass filtering to the time-domain. Any other good filters for note-onset detection?

share|improve this question

migrated from video.stackexchange.com Feb 21 at 10:53

This question came from our site for engineers, producers, editors, and enthusiasts spanning the fields of video, and media creation.

    
Thanks for that link! –  user488792 Jun 20 '11 at 3:26
    
Is this a programming question? If so, asking on stackoverflow with the signal-processing tag might be a better option. –  Mark Heath Jun 20 '11 at 6:41
    
@Mark It was closed there –  phwd Jun 20 '11 at 22:03
    
@phwd typical. I do think that programming questions are better asked on SO even if they are audio related. –  Mark Heath Jun 20 '11 at 22:06
    
@Mark There is an Area 51 proposal that one can commit to : Signal, Image & Video Processing. For the time being it seems it will be thrown back and forth between SO and Audio. –  phwd Jun 20 '11 at 22:10

3 Answers 3

Filters do work in the time domain, in the form of an algorithm (or an analog circuit).

Linear, time-invariant filters (such as high/low-pass filters) have a frequency response which is a function of the frequency. An ideal low-pass filter with cutoff frequency 1000Hz will have a frequency response that is 1 below 1000Hz and 0 above 1000Hz.

For detecting changes in amplitude, one technique is to first use an optional high-pass filter with very low cutoff frequency in order to eliminate DC components. Then get the absolute value of the resulting signal. The resulting positive signal then goes through a low-pass filter in order to smooth out individual cycles and remove unwanted noise, and that then goes through a deriver (which is a special type of high-pass filter), in order to detect changes in amplitude. The result is compared to some threshold in order to get the significant changes in amplitude.

As you may guess, all of the above needs a complete course in signal processing for clarification. Happy googling!

share|improve this answer
    
Linear, time-invariant filters ... have a frequency response which is a function of the frequency. Isn't that the very definition of operating in the frequency domain and not the time domain? –  Ted Hopp Jun 20 '11 at 11:03
    
Filters operate in the time domain: they are normally an algorithm that gets input samples and produces output samples. LTI systems have a frequency response, which means that there is a (simple) relationship between the Fourier transforms of input and output signals (basically, Y(f) = H(f).X(f), where H(f) is the transform of the filter's impulse response). But operation is still in the time domain. –  Juancho Jun 20 '11 at 12:25
    
You can, of course get a frame of samples, do a fast Fourier transform to get a frequency representation, multiply by your desired frequency response, then apply the inverse Fourier transform and get your output frame back to the time domain. This is a valid filtering technique, but needs special care on how to select all parameters: windowing functions for the frames, overlaping of frames, etc. –  Juancho Jun 20 '11 at 12:28

(If this is too elementary please forgive me. Not meaning at all to talk down to you!)

Say you have a "noisy sine wave" on your oscilloscope. The main part of the sine wave is the low-frequency part, and the noise (the "fuzziness") on the sine wave is the high-frequency part.

The oscilloscope sweep would be your time domain.

Low-pass filters let the low frequencies pass through. So this would get rid of the fuzz.

High-pass filters let the high frequencies pass through. This would get rid of the sine wave and leave the noise.

share|improve this answer

Filters can operate in either the time domain or (by various granular or overlap techniques) in the frequency domain. Filters produce changes in both the time domain and the frequency domain. However the changes in both domains are usually easier to describe in the frequency domain, even though they effect the time domain signal as well.

Examples of time domain filters include IIR and FIR filters. FIR filters do a form of weighted averaging of nearby samples, and, depending on the weightings, this averaging can reduce fast variations from the average (thus reducing high frequencies). Or the opposite by essentially subtracting the average. Etc.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.