Zero-Phase Zero Padding

The previous zero-padding example used the *causal* Hamming
window, and the appended zeros all went to the *right* of the
window in the FFT input buffer (see Fig.2.4a). When using
*zero-phase* FFT windows (usually the best choice), the zero-padding
goes in the *middle* of the FFT buffer, as we now illustrate.

We look at zero-phase zero-padding using a *Blackman window*
(§3.3.1) which has good, though
suboptimal, characteristics for audio work.^{3.11}

Figure 2.6a shows a windowed segment of some sinusoidal data, with the window also shown as an envelope. Figure 2.6b shows the same data loaded into an FFT input buffer with a factor of 2 zero-phase zero padding. Note that all time is ``modulo '' for a length FFT. As a result, negative times map to in the FFT input buffer.

Figure 2.7a shows the result of performing an FFT on the data of Fig.2.6b. Since frequency indices are also modulo , the negative-frequency bins appear in the right half of the buffer. Figure 2.6b shows the same data ``rotated'' so that bin number is in order of physical frequency from to . If is the bin number, then the frequency in Hz is given by , where denotes the sampling rate and is the FFT size.

The Matlab script for creating Figures 2.6 and 2.7 is listed in in §F.1.1.

[How to cite this work] [Order a printed hardcopy] [Comment on this page via email]

Copyright ©

Center for Computer Research in Music and Acoustics (CCRMA), Stanford University