Editing in Freq domain and applying inverse FFT

  • Context: Graduate 
  • Thread starter Thread starter raminee
  • Start date Start date
  • Tags Tags
    Domain Fft Inverse
Click For Summary

Discussion Overview

The discussion revolves around the challenges of editing audio signals in the frequency domain using FFT and iFFT, particularly focusing on issues related to block/frame boundaries and the application of windowing techniques to mitigate distortions in the output audio signal.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • Raminee describes an issue with distortions at block/frame boundaries when editing audio signals in the frequency domain and seeks suggestions for resolution.
  • Some participants mention the use of a phase vocoder technique that sums time domain results from windowed analysis, suggesting it may help with smooth transitions.
  • Raminee reports success after implementing the phase vocoder procedure as suggested by another participant.
  • There is a discussion about the choice of window functions, with one participant recommending the Hann function over the Hamming function due to its properties of fading to zero, while another participant notes that both functions yield similar results in subjective testing.
  • Participants express that subjective testing shows little difference between the outputs of the Hamming and Hann windows, indicating that practical differences may be minimal.

Areas of Agreement / Disagreement

Participants generally agree on the effectiveness of windowing techniques to address boundary issues, but there is no consensus on which window function is superior, as experiences with both Hann and Hamming windows yield similar subjective results.

Contextual Notes

The discussion highlights the importance of windowing in signal processing but does not resolve the specific mathematical or technical details regarding the optimal choice of window function or the exact nature of distortions at block boundaries.

raminee
Messages
15
Reaction score
3
TL;DR
How to overcome the distortions that result in editing in frequency domain before applying inverse FFT ?
Hello All,

I am somewhat familiar with FFT and iFFT and its uses.
However I have an issue when I edit in Freq domain and try to get back to time domain .

I have an audio signal in time domain that I transform to frequency domain using an FFT routine in block sizes of N points.
(in my case 256 samples)

I make some adjustments to the Real and Imaginary data based on some algorithm that I am working on.

I apply inverse FFT to get back to time domain.

I repeat this process for a number of blocks of N that forms my entire audio signal.

The resulted output audio signal has distortions mainly around the Block/Frame boundaries due to the changes that were made to the
real and imaginary samples in each Block.

How to remove block/frame boundary issues ?

Any suggestions would be helpful.

Thanks

Raminee
 
Physics news on Phys.org
I have no expertise in this, but it is interesting that the MATLAB phase vocoder described here sums up the time domain results from the analysis done in the windows. I suspect that makes the transitions smooth.
 
Thank you "FactChecker" for that info.
I have implemented the procedure as in the phase vocoder description and it works !!
THANKS AGAIN !!
Raminee
 
  • Like
Likes   Reactions: FactChecker
FactChecker said:
I have no expertise in this, but it is interesting that the MATLAB phase vocoder described here sums up the time domain results from the analysis done in the windows. I suspect that makes the transitions smooth.
I agree with this and the article linked to.

You can find out more about "windowing" at Window function and for this application the Hann function would be a suitable choice. Use blocks where each block is windowed by the Hann function and overlaps each of its neighbours by 50%.
 
I used Hamming window with 50% overlap.
Any reasons Hann function would be better ?
 
raminee said:
I used Hamming window with 50% overlap.
Any reasons Hann function would be better ?
Hann (a.k.a. Hanning) fades all the way to zero, whereas Hamming still has a small discontinuity. As the discontinuity is small, in practice you might not notice the difference. I'd be tempted to try both and see what difference it makes.
 
For anyone interested I tried both windows and it is very very hard to tell the difference in the outputs.
At least with the audio signals I tried they both performed equally well under subjective testing.
Thx
 

Similar threads

  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 13 ·
Replies
13
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 4 ·
Replies
4
Views
4K
Replies
3
Views
3K
  • · Replies 11 ·
Replies
11
Views
3K
  • · Replies 3 ·
Replies
3
Views
3K
Replies
4
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K