Main Content

Signal reconstruction from STFT magnitude

returns a reconstructed time-domain real signal, `x`

= stftmag2sig(`s`

,`nfft`

)`x`

, estimated from
the Short-Time Fourier Transform (STFT) magnitude,
`s`

, based on the Griffin-Lim algorithm. The function assumes
`s`

was computed using discrete Fourier transform (DFT) length
`nfft`

.

specifies additional options using name-value pair arguments. Options include, among
others, the FFT window and the method to specify initial phases. These arguments can be
added to any of the previous input syntaxes. For example,
`x`

= stftmag2sig(___,`Name,Value`

)`'FrequencyRange','onesided','InitializePhaseMethod','random'`

specifies that the signal is reconstructed from a one-sided STFT with random initial
phases.

[1] Griffin, Daniel W., and Jae S.
Lim. "Signal Estimation from Modified Short-Time Fourier Transform." *IEEE
Transactions on Acoustics, Speech, and Signal Processing*. Vol. 32, Number 2,
April 1984, pp. 236–243. https://doi.org/10.1109/TASSP.1984.1164317.

[2] Perraudin, Nathanaël, Peter
Balazs, and Peter L. Søndergaard. "A Fast Griffin-Lim Algorithm." In *2013 IEEE
Workshop on Applications of Signal Processing to Audio and Acoustics*, New Paltz,
NY, October 20–23, 2013. https://doi.org/10.1109/WASPAA.2013.6701851.

[3] Le Roux, Jonathan, Hirokazu
Kameoka, Nobutaka Ono, and Shigeki Sagayama. "Fast Signal Reconstruction from Magnitude STFT
Spectrogram Based on Spectrogram Consistency." In *Proceedings of the 13th
International Conference on Digital Audio Effects (DAFx-10)*, Graz, Austria,
September 6–10, 2010.