Why gain factor when reconstructing the signal?
AlanLiudx opened this issue · comments
Hi seanwood @seanwood , I'm a junior in BSS and thank you for your useful and effective open-source GCC_NMF. I happened to came across an unknown parameter when applying istft and reconstructing waveform:
def getTargetSignalEstimates(targetSpectrogramEstimates, windowSize, hopSize, windowFunction,numSamples):
numTargets, numChannels, numFreq, numTime = targetSpectrogramEstimates.shape
stftGainFactor = hopSize / float(windowSize) * 2
......
return array(targetSignalEstimates) * stftGainFactor
Of course the outcome is good, but I really don't know why multiplying 2*hop_size/n_fft. Could you please give an explanation? Thank you.