Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This section contains the following pages:

Child pages (Children Display)

General Information

Modules for processing signals in the frequency domain are found in the Frequency Domain folder. Frequency domain processing yields novels solutions to audio processing problems and may also lead to more efficient implementations. This section describes the main concepts behind frequency domain processing, then Filterbank Processing describes more sophisticated processing using weighted-overlap short-term Fourier transform filterbanks.

...

Two modules are provided to convert between real and complex data

Image RemovedImage Added

RealImagToComplex

Converts two real signals into complex data using one as the real part and the other as the imaginary part

Image RemovedImage Added

ComplexToRealImag

Converts a complex signal into separate real and imaginary components

...

Audio Weaver provides 3 different transform modules for converting between the time and frequency domains.

Image RemovedImage Added

Cfft

Complex FFT. Supports both forward and inverse transforms

Image RemovedImage Added

Fft

 

Forward FFT of real data

Image RemovedImage Added

Ifft

 

Inverse FFT yielding real data

...

Before an FFT is computed the signal is typically windowed to prevent edge effects from influencing the results. There are 3 modules which perform windowing.

Image RemovedImage Added

Window

Simple window

Image RemovedImage Added

WindowOverlap

 

Window with overlapping

Image RemovedImage Added

WindowAlias

 

Windowing followed by time aliasing

...

The WindowAlias module applies a window followed by time aliasing the sequence to a shorter length. This module is used in the analysis back of short-term Fourier transform based filterbanks.

Image RemovedImage Added

OverlapAdd

Reduces block size by overlapping blocks

The OverlapAdd module performs the opposite of the Rebuffer module. The module has a large input block size and a smaller output block size. The module contains an internal buffer equal to the input block size. The module takes the input data, adds it to the internal buffer, and then shifts out one block of output data. The data in the internal buffer is also left shifted and the leading samples are filled with zeros. The OverlapAdd module finds use in fast convolution algorithms.

Image RemovedImage Added

RepWinOverlap

Replicates data, applies a window, and then performs overlap add

The RepWinOverlap module is for advanced users building synthesis filterbanks. The module replicates a signal N times, applies a window, and then performs overlap add.

Image RemovedImage Added

ZeroPad

Adds zeros at the end of a buffer

...

The frequency domain modules have a large number of modules which operate on complex data. The modules here are listed without detailed explanations because the underlying functions are basic and easily understood.

Image RemovedImage Added

ComplexAngle

Computes atan2 of complex data

Image RemovedImage Added

ComplexConjugate

Conjugates data by negating the imaginary component

Image RemovedImage Added

ComplexMagnitude

Image RemovedImage Added
Image RemovedImage Added

ComplexMagSquared

Image RemovedImage Added
Image RemovedImage Added

ComplexModulate

Multiplies by 𝑒𝑗𝜔𝑘

Image RemovedImage Added

ComplexMultiplier

Complex x Complex, or

Real x Complex

Image RemovedImage Added

ComplexToPolar

Converts to Polar (angle and magnitude)

Image RemovedImage Added

PolarToComplex

Converts from Polar to Real/Imag

...

Any of the Frequency Domain modules which operate on complex data operate in the subband domain. Audio Weaver also provides a special set of “Subband Processing” modules that start with the “Sb” prefix. These modules replicate some of the standard time domain modules but the operations occur separately in each subband.

Image RemovedImage Added

SbAttackRelease

Attack and release envelope follower (real data only)

Image RemovedImage Added

SbDerivative

Derivative (real data only)

Image RemovedImage Added

SbComplexFIR

Complex FIR filter

Image RemovedImage Added

SbNLMS

Normalized LMS adaptive filter

Image RemovedImage Added

SbSmooth

Performs smoothing across subbands (real data only)

Image RemovedImage Added

SbRMS

RMS with settable time constant (real data only)

Image RemovedImage Added

SbSOF

Second order filter (real data only)

Image RemovedImage Added

SbSplitter

Subdivides the spectrum into overlapping regions. Similar to a crossover

...