Sign in

Not a member? | Forgot your Password?

Search Online Books

Search tips

Free Online Books

Free PDF Downloads

A Quadrature Signals Tutorial: Complex, But Not Complicated

Understanding the 'Phasing Method' of Single Sideband Demodulation

Complex Digital Signal Processing in Telecommunications

Introduction to Sound Processing

C++ Tutorial

Introduction of C Programming for DSP Applications

Fixed-Point Arithmetic: An Introduction

Cascaded Integrator-Comb (CIC) Filter Introduction


IIR Filter Design Software

See Also

Embedded SystemsFPGA
Chapter Contents:

Search Spectral Audio Signal Processing


Book Index | Global Index

Would you like to be notified by email when Julius Orion Smith III publishes a new entry into his blog?


Mathematical Definition of the STFT

The usual mathematical definition of the STFT is [9]

$\displaystyle X_m(\omega)$ $\displaystyle =$ $\displaystyle \sum_{n=-\infty}^{\infty} x(n) w(n-mR) e^{-j\omega n}$  
  $\displaystyle =$ $\displaystyle \hbox{\sc DTFT}_\omega(x\cdot\hbox{\sc Shift}_{mR}(w)),
\protect$ (7.1)


x(n) &=& \hbox{input signal at time $n$}\\
w(n) &=& \hbox{len...
R &=& \hbox{hop size, in samples, between successive DTFTs.}\\

If the window $ w(n)$ has the Constant OverLap-Add (COLA) property at hop-size $ R$, i.e., if

$\displaystyle \zbox {\sum_{m=-\infty}^{\infty} w(n-mR) = 1, \; \forall n\in{\bf Z}}$   $\displaystyle \mbox{($w\in\hbox{\sc Cola}(R)$)}$$\displaystyle \protect$ (7.2)

then the sum of the successive DTFTs over time equals the DTFT of the whole signal $ X(\omega)$:

\sum_{m=-\infty}^\infty X_m(\omega)
&\isdef &
...-j\omega n} \\
&\isdef & \hbox{\sc DTFT}_\omega(x) = X(\omega).

We will say that windows satisfying $ \sum_m w(n-mR) = 1$ (or some constant) for all $ n\in{\bf Z}$ are said to be $ \hbox{\sc Cola}(R)$. For example, the length $ M$ rectangular window is clearly $ \hbox{\sc Cola}(M)$ (no overlap). The Bartlett window and all windows in the generalized Hamming family (Chapter 3) are $ \hbox{\sc Cola}(M/2)$ (50% overlap), when the endpoints are handled correctly.7.1 A $ \hbox{\sc Cola}(M/2)$ example is depicted in Fig.7.10. Any window that is $ \hbox{\sc Cola}(R)$ is also $ \hbox{\sc Cola}(R/k)$, for $ k=2,3,4,\ldots,R$, provided $ R/k$ is an integer.7.2 We will explore COLA windows more completely in Chapter 7.

When using the short-time Fourier transform for signal processing, as taken up in Chapter 7, the COLA requirement is important for avoiding artifacts. For usage as a spectrum analyzer for measurement and display, the COLA requirement can often be relaxed, as doing so only means we are not weighting all information equally in our analysis. Nothing disastrous happens, for example, if we use 50% overlap with the Blackman window in a short-time spectrum analysis over time--the results look fine; however, in such a case, data falling near the edges of the window will have a slightly muted impact on the results relative to data falling near the window center, because the Blackman window is not COLA at 50% overlap.

Previous: The Short-Time Fourier Transform
Next: Practical Computation of the STFT

Order a Hardcopy of Spectral Audio Signal Processing

About the Author: Julius Orion Smith III
Julius Smith's background is in electrical engineering (BS Rice 1975, PhD Stanford 1983). He is presently Professor of Music and (by courtesy) of Electrical Engineering at Stanford's Center for Computer Research in Music and Acoustics (CCRMA), teaching courses and pursuing research related to signal processing applied to music and audio systems. See for details.


No comments yet for this page

Add a Comment
You need to login before you can post a comment (best way to prevent spam). ( Not a member? )