dbogdanov released this
Sep 5, 2019
· 2 commits to master since this release
Essentia 2.1 beta5 is our current preliminary version of the forthcoming 2.1 release. This pre-release includes the following changes:
Algorithms updates and bug-fixes
Fix the slaneyMel scale implementation in MelBands and MFCC (#849). Introduced in 2.1-beta4, it was erroneously computing the HTK Mel scale. Set htkMel as the default scale to ensure backward compatibility with all previous versions of MelBands/MFCC.
New option unit_tri for triangle area normalization in MelBands, MFCC, and TriangularBands.
New parameter silenceThreshold in MFCC and GFCC. Set default threshold to 1e-10 (#543).
TriangularBands: faster unit-sum normalization and an improved check for insufficient spectrum resolution (#142).
ConstantQ and the related Chromagram and SpectrumCQ are reimplemented from scratch and now function correctly. The maxFrequency parameter is replaced by numberBins.
New negativeFrequencies parameter in FFTC to include negative frequencies in the output.
New normalize parameter for IFFT size normalization.
FFTC now supports KissFFT and Accelerate.
PoolAggregator: new aggregation method last to get the last value. Fix possible nan/inf values in kurtosis and skewness (#689). Apply aggregation for pool values that contain only one vector too.
New checkRange parameter in Trimmer and StereoTrimmer.
PitchFilter: improve consistency between input and output stream types (#674).
PitchMelodia: fix missing output pitchConfidence in streaming mode.
MultiPitchMelodia: peakFrameThreshold and peakFrameThreshold parameters now work correctly (they were overridden by hardcoded values).
New tolerance parameter in PitchYinFFT. When the pitch confidence is lower than the tolerance value the output pitch is set to 0. A tolerance of 1 disables this feature.
Fix occasional negative values output by Danceability (#483).
Fix a memory leak in AudioLoader.
BeatTrackerDegara output is now deterministic (#860).
ChordDetectionBeats: add new parameter chromaPick and fix a beat segment indexing bug in the case of very close consecutive beats.
New minPeakDistance parameter in PeakDetection.
Fix invalid memory access in PCA (#727).
Update Key and KeyExtractor algorithms with new pitch class profiles and new parameters for detuning correction and low-energy HPCP bin thresholding.
Proper mutex implementation for all FFT* algorithms.
Updated music and sound feature extractors streaming_extractor_music and streaming_extractor_freesound. Both extractors are now also available as algorithms: MusicExtractor and FreesoundExtractor. New MusicExtractorSVM algorithm allows applying SVM models to the output of MusicExtractor.
Fix possible memory leaks in MusicExtractor
Proper logging for "out of memory" errors
Skip aggregation for some descriptors
Add audio length to metadata and remove end_time
Add number of audio channels to metadata (number_channels)
Better grouping of metadata related to audio analysis
Updated key/chords estimation parameters
Estimate key using three different key profiles (temperley, krumhansl, edma)
Updated descriptors in MusicExtractor:
Updated descriptors in FreesoundExtractor
Python bindings updates
Build scripts updates
Updated documentation, tutorials, and examples including a significant web redesign.
A usual assortment of code cleanup, updated and expanded unit tests, and better logging (more informative log and exception messages).
dbogdanov released this
May 23, 2018
· 312 commits to master since this release
Essentia 2.1 beta4 is our current preliminary version of the forthcoming 2.1 release. This pre-release includes the following changes:
Updates to Mel and ERB energy band algorithms
Bug-fixes in algorithms:
Updates to Python wrapper:
Build scripts updates:
Code cleanup and unit tests updates
Re-designed and expanded documentation: