Filtering

This tutorial describes the use of filtering techniques in Praat. It assumes you are familiar with the Intro.

## Frequency-domain filtering

Modern computer techniques make possible an especially simple batch filtering method: multiplying the complex spectrum in the frequency domain by any real-valued filter function. This leads to a zero phase shift for each frequency component. The impulse response is symmetric in the time domain, which also means that the filter is acausal: the filtered signal will show components before they start in the original.

  • Spectrum: Filter (pass Hann band)...
  • Spectrum: Filter (stop Hann band)...
  • Sound: Filter (pass Hann band)...
  • Sound: Filter (stop Hann band)...
  • Sound: Filter (formula)...

Spectro-temporal:

  • band filtering in the frequency domain

## Fast time-domain filtering

Some very fast Infinite Impulse Response (IIR) filters can be defined in the time domain. These include recursive all-pole filters and pre-emphasis. These filters are causal but have non-zero phase shifts. There are versions that create new Sound objects:

  • Sound: Filter (one formant)...
  • Sound: Filter (pre-emphasis)...
  • Sound: Filter (de-emphasis)...

And there are in-place versions, which modify the existing Sound objects:

  • Sound: Filter with one formant (in-place)...
  • Sound: Pre-emphasize (in-place)...
  • Sound: De-emphasize (in-place)...

## Convolution

A Finite Impulse Response (FIR) filter can be described as a sampled sound. Filtering with such a filter amounts to a convolution of the original sound and the filter:

  • Sounds: Convolve...

## Described elsewhere

Described in the Source-filter synthesis tutorial:

  • Sound & Formant: Filter
  • Sound & FormantGrid: Filter
  • LPC & Sound: Filter...
  • LPC & Sound: Filter (inverse)

### Links to this page

- Sound
- Types of objects