Aside from what is stated in the commit description, the last commit also brought back absolute frequency, and added a new PROP_UNIT_FREQUENCY
unit to represent numbers in Hz
.
More details…
I think a lot of this is already solved by the
Map Range
node which significantly simplifies the math one has to do. I think the logarithmic scale is not necessary yet. It should be easy…
Personally, I don't really like using relative frequencies. I think it makes it much less obvious what data you get out of this node. Would prefer to keep using absolute frequencies in…
575b26c196f48336b8c411896decc06b96417910 discards bin_index
as part of the key of the map, i.e. caches are now continuous like how blender/blender#122228 (comment)…
The last commit refactored the caching system into C++, used std::shared_mutex
to achieve thread safety, improved user interface, and removed unnecessary node category.
More details can be…
That reminds me… Yes, it's possible and also very useful. It's very common that a user is expecting to get more details (in frequency, not time) in lower range. That would be hard to implement…
Sampling a range of [0, infinity] with FFT is different from directly sampling without FFT. FFT inevitably decreases time resolution, as depicted below:
![fft.drawio.png](/attachments/a0…
I apologize for the ambiguity. What I mean is that we could specialize the node's operation when the start/end frequency range contains full spectrum. For example, if the frequency range is [0,…
Storing all samples of one audio channel in float
will take up ~10MB space per minute. Will it be considered a large space compared to Blender's overall memory usage?
Besides, I think the…
This is not what I expected… In C the designated initializers is used everywhere. It seems that GNU extensions did something in secret again.
Nevermind, will change according to the standard.
Putting them into the side-bar is indeed a better solution. Will change & also choose appropriate default values.
It may be more intuitive to have default values containing full spectrum. However there would be a problem:
Audio sources may have different sample rates, so the default value of `End…
That sounds reasonable. I'll use NODE_CLASS_CONVERTER
for Sample Sound node, and NODE_CLASS_INPUT
for the coming Sound Info node.
The reason I was considering to create a new class is because…
Replaced LRU with a relatively simpler (yet efficient) caching structure. The change also allows user to select FFT size by themselves. More details can be found on [devtalks](https://devtalk.blen…