Nendo plugin for automatic music information retrieval.
Project description
Nendo Plugin Classify Core
Automatic music information retrieval (based on essentia).
Features
- Extract musical features from a
NendoTrack
or aNendoCollection
- Use descriptive features to filter, search and sort your library
- Extract rich features to annotate datasets for training custom models
Installation
-
pip install nendo-plugin-classify-core
Note: Installing this plugin together with another nendo plugin that uses
essentia
, you are likely to run into the runtime errorError: module 'essentia.standard' has no attribute 'TensorflowPredictEffnetDiscogs'
. See the corresponding entry in the troubleshooting guide below for instructions on how to fix this issue.
Usage
Take a look at a basic usage example below. For more detailed information, please refer to the documentation.
For more advanced examples, check out the examples folder. or try it in colab:
from nendo import Nendo, NendoConfig
nd = Nendo(config=NendoConfig(plugins=["nendo_plugin_classify_core"]))
track = nd.library.add_track(file_path='/path/to/track.mp3')
track = nd.plugins.classify_core(track=track)
data = track.get_plugin_data(plugin_name="nendo_plugin_classify_core")
print(data)
tracks_with_filtered_tempo = nd.library.filter_tracks(
filters={"tempo": (170, 180)},
plugin_names=["nendo_plugin_classify_core"],
)
assert len(tracks_with_filtered_tempo) == 1
Troubleshooting
Essentia can't find the embedding model
When I try to run the plugin, I get the following error:
Failed to import plugin 'nendo_plugin_classify_core'. Error: module 'essentia.standard' has no attribute 'TensorflowPredictEffnetDiscogs'
This is due to the fact that you have essentia
and essentia-tensorflow
installed at the same time, possibly because you installed another nendo plugin that uses essentia
, like e.g. nendo_plugin_quantize_core. The fix in this case is to reinstall essentia, this time only installing the essentia-tensorflow
package:
pip uninstall -y essentia essentia-tensorflow
pip install essentia-tensorflow
Contributing
Visit our docs to learn all about how to contribute to Nendo: Contributing
License
Nendo: MIT License
Essentia: Affero GPLv3 license
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for nendo_plugin_classify_core-0.2.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57f2a150f4f42794242af37a26f5df91cda25b39d885a3efb2add1456e4a1e66 |
|
MD5 | 95d9ea32cfc27d1d7a5d45cc7db79ba2 |
|
BLAKE2b-256 | 471365ab34156d43903f76f7f8616ded68ef074623dd98ec912dd9edeffce2e6 |
Hashes for nendo_plugin_classify_core-0.2.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dbf5810f58c24662a3e0b3e3e97e918de051c06c30df9e220668c5c63cd152ce |
|
MD5 | e9757f8ee2ebb757976d9c0fa79d6ea4 |
|
BLAKE2b-256 | 1ed4e5ffc5cd6bd756b65198c0d8585e7969423b4153a885b0cade5a77e2c872 |