I have implemented a phase vocoder (as described in "Improved Phase Vocoder Time-Scale Modification of Audio", by Jean Laroche and Mark Dolson, IEEE) in MATLAB, and what I want it to do, is, in real-time, to pitch shift a signal. It is important, that each frame (max 1024 samples, 44100 khz, latency of 23 ms) can be shifted individually, since I want to make it as an AudioUnit, and therefore processing the incomming signal i real-time.
Unfortunately, when I resample each of the frames individually, there is some kind of discontinuallity between the frames resulting in a kind of clicking, even if I use 1024 samples of the next frame (and also 2048 of the previous frame), resample all 1024*4 samples, and only return the 1024 sample "middle frame". is there a way to smoothen the transition?
