EzFFT Phase Retrieval/Reconstruction  Phase Gradient Heap Integration Algorithm
Does anyone comprehend "the Phase Gradient Heap Integration" algorithm in EzFFT context and know how to implement it?
I need this in my custommade macro which swaps (shifts) amplitude positions in ezfft, of course, the result of such an operation is spectral noise and jitter. I want to correct phases to fix the resulting signal to some extent at least.
Here is the paper:
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7890450&isnumber=7895265
Comments

Jan Brahler has built some good phase vocoders based instruments using ezFFT, you might pick up some ideas looking through some of those:
https://www.nativeinstruments.com/en/reaktorcommunity/reaktoruserlibrary/all/all/all/1126474/
1 
reading the paper now but I'm afraid I don't have the mathematical literacy to fully absorb the meaning. reconstructing the phase from sampling the magnitude... what does that mean? like what do they mean by sampling?
it reminds me of trying to understand the whole cepstrum thing where they say "take the log of the Fourier transform" without specifying which of the many possible ways something like that could be interpreted and at which step of the process
I am familiar with the process of phase unwrapping to derive instantaneous frequency, can you speak on how this approach differs from that?
have you tried using the phase unwrapping method?
0 
here's bards answer fwiw, no idea how correct it is lol
(redacted as brevity, wasn't terribly helpful 😋)
0 
from chatGPT
Here is a more detailed description of each step:
 Compute the STFT coefficients of the signal using a window function. The window function is typically chosen to balance the time and frequency resolution of the STFT.
 Compute the magnitude of the STFT coefficients. The magnitude represents the strength of the signal at each timefrequency point.
 Compute the logmagnitude of the STFT coefficients. This is done to make the phase information more easily accessible, as the phase information is encoded in the complex exponential part of the Fourier transform.
 Compute the secondorder difference of the logmagnitude along the frequency axis. This measures the curvature of the logmagnitude along the frequency axis and provides information about the phase at each frequency.
 Compute the secondorder difference of the logmagnitude along the time axis. This measures the curvature of the logmagnitude along the time axis and provides information about the phase at each time index.
 Estimate the phase functions for each frequency and time index by solving a set of linear equations that relate the phase to the secondorder differences of the logmagnitude. The linear equations are derived from the assumption that the phase can be represented as a linear combination of phase functions that depend only on the frequency and time indices.
 Reconstruct the phase of the STFT coefficients by computing a linear combination of the estimated phase functions. This involves solving a linear system of equations that relates the phase to the estimated phase functions.
 Invert the STFT using the reconstructed phase and the original magnitude information to obtain the reconstructed signal. This is done by computing the inverse Fourier transform of the reconstructed STFT coefficients using an appropriate window function. The reconstructed signal should closely match the original signal, except for some phase ambiguity that is common to all Fourierbased reconstruction methods.
0 
so, apparently AI can explain research papers through every single step in excruciating detail like you're five years old and i have somehow only now fully realized this lol ROFL
we may just be able to cook this up
EDIT
working my way through the algo, so far it has it taking second order differences instead of just the one like phase unwrapping (and also across the time axis AND frequency axis. interesting)
0
Categories
 All Categories
 21 Welcome
 851 Hangout
 78 NI News
 411 Tech Talks
 1.9K Native Access
 8.6K Komplete
 1.1K Komplete General
 2.2K Komplete Kontrol
 3.1K Kontakt
 724 Reaktor
 252 Battery 4
 493 Guitar Rig & FX
 287 Massive X & Synths
 510 Other Software & Hardware
 3.4K Maschine
 23 Sampling Room
 4.2K Traktor
 3.9K Traktor Software & Hardware
 Check out everything you can do
 Create an account
 See member benefits
 Answer questions
 Ask the community
 See product news
 Connect with creators