flucoma-sc icon indicating copy to clipboard operation
flucoma-sc copied to clipboard

FluidBufLoudness hopSize default

Open tedmoore opened this issue 4 years ago • 5 comments

Greetings FluCoMa,

I just noticed that objects FluidBufSpectralShape, FluidBufPitch, FluidBufMFCC, and FluidBufMelBands all have a hopSize default of -1 (which I understand to be windowSize / 2), however FluidBufLoudness has a hopSize default of 512, which is the default windowSize of 1024 / 2, but is inconsistent with the other objects.

Thanks!

tedmoore avatar May 30 '21 14:05 tedmoore

Same with FluidLoudness it looks like.

tedmoore avatar May 30 '21 14:05 tedmoore

Indeed, but there was a reason IIRC. I think that is because it did not use the same OLA mechanism under the hood. Changing this property is a good idea but not as trivial as it seems since it is done at the lowest level, and the other implementations (everything FFT) allows to modulate the windowSize and if hopSize is -1 it will modulate accordingly (keeping an overlap of 2)

This is a good example of the other behaviour that we would need to emulate:

{FluidSTFTPass.ar(SinOsc.ar(110,mul: 0.1),windowSize: LFTri.kr(0.1,mul: 2000,add: 2064).poll)}.play

tremblap avatar May 30 '21 15:05 tremblap

@weefuzzy is this a documentation change or a deep code change? if the later is this feasible for milestone beta5?

tedmoore avatar Jan 26 '22 17:01 tedmoore

At the C++ level it's deep, and certainly not within beta5 timeframe or anything like it. If you just wanted it to be different in SC, then the class could be altered to simulate the behaviour, but this would make SC diverge

weefuzzy avatar Jan 28 '22 11:01 weefuzzy

We should refrain to do SC-only interface change. Let's park it until we can do it in C++

tremblap avatar Jan 28 '22 11:01 tremblap