Essentia documentation contents¶
- Introduction
- Installing Essentia
- Compiling Essentia from source
- Installing dependencies on Linux
- Installing dependencies on macOS
- Compiling Essentia
- Python 3 bindings
- Running tests (optional)
- Building documentation (optional)
- Building Essentia on Windows
- Building Essentia in Windows Subsystem for Linux (WSL)
- Building Essentia on Android
- Building Essentia on iOS
- Building Essentia for Web using asm.js or WebAssembly
- Downloads
- Algorithms overview
- Essentia Python tutorial
- Essentia Python examples
- Using executable extractors out-of-box
- Music extractor
- Using machine learning models
- Essentia models
- Interactive demos
- General architecture / Basic types and classes
- Logging framework
- How to write a simple extractor using the standard mode of Essentia
- Essentia streaming mode architecture
- How to write a simple extractor using the streaming mode of Essentia
- Writing a new Algorithm
- How to write a streaming algorithm
- Composite algorithm description
- Execution network algorithm
- General development guidelines
- Coding Guidelines
- Coding style guidelines
- Code comments
- General C++ pitfalls
- The
Real
data type - The
bool
data type - Error handling
- The const keyword
- Naming conventions
- Case-sensitivity of the identifiers
- Parsing parameters
- On the use of generic/specific types
- Parameters versus inputs
- Things to watch out for
- Error checking
- Contribute
- Licensing Essentia
- Licensing Essentia models
- Licensing dependencies
- Frequently Asked Questions
- libessentia.so is not found after installing from source
- Build Essentia on Ubuntu 14.04 or earlier
- Linux/macOS static builds
- Follow the steps below to create static build of the library and executable example extractors.
- Building lightweight Essentia with reduced dependencies
- Cross-compiling for Windows on Linux
- Cross-compiling for Android
- Cross-compiling for iOS
- Compiling Essentia to ASM.js or WebAssembly using Emscripten
- macOS static builds and templates (JUCE/VST and openFrameworks)
- Building standalone Essentia Vamp plugin
- Running tests
- Writing tests
- How to compile my own C++ code that uses Essentia?
- How to compute music descriptors using Essentia?
- How to know which other Algorithms an Algorithm uses?
- How many algorithms are in Essentia?
- Using Essentia real-time
- Essentia Music Extractor
- Academic research using Essentia
- Music analysis datasets
- Music and sound classification
- Music preferences, similarity, recommendation, and playlists
- Music version / cover song identification
- Emotion detection
- Visualization and interaction with music
- Sound indexing, music production, and intelligent audio processing
- Environmental sounds
- Singing voice analysis
- Audio analysis tools for assisting music education
- Audio problem detection
- Generative music, live coding, audio synthesis, style transfer
- Instrument detection
- Audio source separation
- Music segmentation
- Tonality analysis
- Rhythm and tempo analysis
- Music transcription
- Computational musicology
- Psychoacoustics
- Speech processing and voice technology
- Bioacoustic analyis
- Acoustic analysis for medical and neuroimaging studies