This subpage is dedicated to taming the beast otherwise known as Essentia. Essentia is actually a very power library of sound processing algorithms that allows you and I to extract various features in an audio file. Algorithms in this library have in fact been used to identify music in large-scale databases.
One of the cool features about Essentia is that you can also find pre-compiled 'extractors' which can give you many useful acoustic features in your sound files without ever needing to install Essentia or programme anything. These extractors are command-line programmes where you input the path to your soundwave and output the calculated features in a .json or .yaml file - it is that easy!
You can find out more about the extractors here.
Essentia is a Python library of algorithms used for audio analysis and music information retrieval developed by the Music Technology Group at Pompeu Fabra University in Barcelona, Spain. Although the Essentia website does contain instructions on how to install the library using a Windows 10 computer, I was rather slow and did things I didn't have to do (e.g. installing Ubuntu alongside Windows 10...). So here are my step-by-step instructions on getting it work without the unnecessary twists and turns:
sudo do-release-upgrade in bash to upgrade).sudo apt-get install python-pip and we upgrade to the latest version of pip with the command:
sudo pip install --upgrade pipthen we install Jupyter notebook with
sudo pip install jupyter(NOTE 1: Although it is recommended that you install Jupyter using Anaconda, we do not do this here because there are compatibility issues with different versions of libraries in Anaconda that do not work in Essentia.)
(NOTE 2: Python 3 support in Essentia is still not quite there yet, we keep Jupyter in Pyton 2.)
sudo apt-get install build-essential libyaml-dev libfftw3-dev libavcodec-dev libavformat-dev libavutil-dev libavresample-dev python-dev libsamplerate0-dev libtag1-dev python-numpy-dev python-numpy python-yamlthen
./waf configure --mode=release --build-static --with-python --with-cpptests --with-examples --with-vampto configure Essentia. Then type
./wafto compile the library. This took around 10 minutes for me. Afterwards, we install Essentia with the command
sudo ./waf installjupyter notebook) and follow the tutorials, adapting accordingly.