essentia
essentia copied to clipboard
Enhance Windowing compatibility with Librosa and SciPy
One of the goals of Essentia is to maximize parametrizability to allow compatibility with relevant implementations from other frameworks. The following feature requests for Windowing allow replicating some framing/windowing options from SciPy and Librosa:
- [x] Support SciPy-like
hamming
windows. While SciPy uses 2 decimals for the window parametersa0
anda1
, Essentia uses 5. I propose the implementation of a general solution via aWindowParametersDecimals
parameter that could rather bypass-1
or round to then
decimal the parameters used to build the windows for maximum flexibility. - [x] Support asymmetric windows, as in SciPy.
- [x] Implement a
splitPadding
flag so thatWindowing
applies zero padding symmetrically and not only at the end of the frame whenzeroPhase=False
:splitPadding=False
→/\__
,splitPadding=True
→_/\_
. This option is bypassed whenzeroPhase=True
→\__/
(default).zeroPhase=False
andsplitPadding=True
matches Librosa's behaviour.