audiality2 icon indicating copy to clipboard operation
audiality2 copied to clipboard

Click-free wave loops through frequency space morphing

Open olofson opened this issue 8 years ago • 0 comments

The XFADE tool is fast, simple, and straightforward, and works great for many use cases, but it typically has the side effect of introducing a flanger or chorus like effect. This can be an advantage when the whole purpose of using offline rendered waves is to achieve a richer sound, but sometimes, it's just not desirable.

The "correct" solution is to render the sound so that phases and amplitudes of all partials match up at the loop point, typically by calculating frequencies so that every partial completes an integer number of periods over the duration of the loop. Needless to say, this becomes a real pain to get right with anything but trivial additive synthesis with all fixed frequencies.

What we want is a tool that takes an arbitrary input wave, converts it to frequency domain, tweaks/ramps the phases and amplitudes of all components, so they match up at the loop point, and then renders the result into the final wave. Basically the generalized, brute force, after the fact alternative to tweaking the input A2S program until you have a click-free loop.

Suggested method: Windowed overlap add FFT resynthesis.

olofson avatar Feb 10 '17 18:02 olofson