< Back to IRCAM Forum

Error with manual window step

Hello,
I noticed that in the window “Processing Parameters”, when with Window Step is selected manually (see screen copy, in this case, 25%), SuperVP, when it tries to compute the resulting file, gives the following error (in this case, a simple time stretch by a factor of 2.5 to the famous africa.aiff):

supervp -t -Z -S"/Applications/AudioSculpt 3.4.6/Sounds/africa.aiff" -Afft
-Np1 -M0.0232199542224407s -I256 -Wblackman -P0 -td_ampfac 1 -FCombineMul
-D"/Applications/AudioSculpt 3.4.6/Temp/timefile" “/Applications/AudioSculpt
3.4.6/Sounds/africa-out 2.aiff”

SuperVP::Parameter Error::Module_Synthese::run()>> synthesizer windows are not
overlapping! Reduce your window step or select adaptive stepsize (no -I flag)!
Kernel returned error -42

Setting “Adaptive Oversampling” to x4 works. This error appear for values of Manual Window Steps >= 25. Any idea why it is like this?

Thank you very much in advance.
Marco

Dear Marco

Putting these values manually is very complex and requires a very deep understanding of the internal
working of the algorithm! I would strongly advice against setting this manually.

The problem is that on both sides, the analysis (input) and the synthesis (output) of the phase vocoder algorithm there exist constraints concerning the window overlap.

On the synthesis (output) side you have a more or less optimal balance between synthesis quality and processing speed with overlap of 75% (step = 25%). Reducing the overlap reduces processing time and signal quality. Processing time decreases linearly signal quality not. There is a very hard constraint requiring that the synthesis windows overlap (step < 100%), otherwise there are holes in the signal.
Between step = %25 to 100% quality decreases depending on the processing options you are using.

On the analysis (input) side you find (for other reasons) more or less the same constraints. You need sufficient overlap to be able to calculate frequency from phase difference. The more overlap the more consistent will be you frequency estimate (that you need in the phase vocoder) but the more also processing time will increase. If I remember right I did not establish any other hard constraint then that the step at input and at output is smaller than the window size. You may get a warning already once the step (for analysis or synthesis) > 50%.

Now all this seems pretty straight-forward, and you seem to do everything right. Indeed 25% < 50%

But you need to consider that synthesis stepsize != analysis step size. The difference is given by the dilation and transposition parameters (that I don’t see in your case). You say dilation would be 2.5 and the analysis step size 25%. In this case the synthesis step size would be 62.5%. Which normally should still pass. I tried this, and indeed it passes.

$> svp -S ~/snd/manna.aiff -M1024 -I256  -D2.5 -Np1 -A -Z -P0 -norm 6 /dev/null
Initializing...
Processing...

*** WARNING: synthesizer windows have only small overlap!
Check/remove -I option or check time dilation parameters!
Normalizing...
total time = 0.04 seconds
Done.

But here I get a warning because the synthesis step is already too large. The fact that the command here passes seems to indicate that your dilation factor is closer to 4 at least locally somewhere in the timefile.

Now, here you only have -D if you still add transposition things become quite complex. The only way to achieve constant quality ensuring sufficient overlap in analysis and synthesis phases under all conditions is the “adaptive oversampling” mode. It ensures the stepsize on both sides (analysis and synthesis) will always remain below the given threshold. This is the only way to get consistently a good quality and obviously it would be quite difficult to achieve this manually because you would need to change step size synchronously with dilation and transposition parameters and the relations between analysis and synthesis steps size still depend on other parameters.

I hope all this answers the question.
Best
Axel

Dear Axel,

Thank you VERY much, also in the name of my students, for taking so much time in such a clear explanation. It is absolutely clear.
I perfectly understand your concerns about looking for the best processing and audio quality. Just, sometimes, some composers are a little crazy in their unexpected usage of some software, and what might be considered an audio problem might also have some aesthetic value. It would be curious to hear what kind of sound “with holes” an unreasonable overlap would produce, but, perhaps, this will be simply rubbish…:slight_smile: !
Thank you again, I will keep this mail as a precious source of documentation in my seminars.

All my very best,
Marco