I'm looking at a job spec, detailed below. I'm perplexed as to what is being asked for.

Could someone offer a basic understanding of this material? I can imagine a solution may involve performing an FFT, setting bins outside the desired frequency range to 0, modifying phase of remaining bins, and recombining with iFFT.

but I am left scratching my head as to the purpose of this...

Application is required to:

A) input audio from external microphone jack input,
B) bandpass filter to limit audio to between 50 to 500 Hz
C) add phase delay between 150 degrees to 210 degrees (programmable via settings)
D) output resultant audio stream via speaker phone or audio jack
E) audio output volume to be calibrated to match audio input volume

User interface:
A) two modes- configuration mode, normal mode.
B) in configuration mode allow user to adjust phase delay and other audio parameters, such as filter characteristics, gain and output volume.
C) in configuration mode user can select audio output via speaker phone or external speakers.
D) ability for user to disable incoming phone calls while app is running.

  • $\begingroup$ C) most probably means phase shift. I know time delay, group delay and phase shift but never heard of phase delay. Maybe you should aks the customer to clarify this point. $\endgroup$
    – Deve
    Commented Nov 13, 2012 at 8:16
  • $\begingroup$ Sounds like an attempt to do some stationary noise cancellation, which is unlikely to work without a physically calibrated system (noise to mic to speaker to ear responses, directions and distances, etc.) $\endgroup$
    – hotpaw2
    Commented Nov 13, 2012 at 14:45

1 Answer 1


The thing you're looking for is known as an "all-pass filter", which has a flat amplitude response, but modifies the phase relationships within a signal. This would be a separate stage from the one that limits the bandwidth.

Note that the 50-500Hz bandpass filter is going to modify phase relationships, too, so the all-pass filter will need to be designed so that the overall system response is what the client is looking for.

However, it's possible that the client just wants a time delay, but expressed it in terms of the phase angle of some fundamental frequency. This will need to be clarified.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.