Metadata-Version: 2.1
Name: nendo-plugin-classify-core
Version: 0.2.4
Summary: Nendo plugin for automatic music information retrieval.
Home-page: https://okio.ai
License: MIT
Keywords: Nendo,Plugin,Audio,Generative,Music,Audio Production,Audio Analysis
Author: Felix Lorenz
Author-email: felix@okio.ai
Requires-Python: >=3.8,<3.11
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Multimedia :: Sound/Audio
Requires-Dist: essentia-tensorflow (>=2.1b6.dev1110,<3.0)
Requires-Dist: nendo (>=0.1.2,<0.2.0)
Requires-Dist: pydantic (>=2.0.0,<2.5.0)
Requires-Dist: tqdm (>=4.65.0,<5.0.0)
Project-URL: Repository, https://github.com/okio-ai/nendo_plugin_classify_core
Description-Content-Type: text/markdown

# Nendo Plugin Classify Core

<br>
<p align="left">
    <img src="https://okio.ai/docs/assets/nendo_core_logo.png" width="350" alt="nendo core">
</p>
<br>

---

![Documentation](https://img.shields.io/website/https/nendo.ai)
[![Twitter](https://img.shields.io/twitter/url/https/twitter.com/okio_ai.svg?style=social&label=Follow%20%40okio_ai)](https://twitter.com/okio_ai) [![](https://dcbadge.vercel.app/api/server/gaZMZKzScj?compact=true&style=flat)](https://discord.gg/gaZMZKzScj)

Automatic music information retrieval (based on [essentia](https://essentia.upf.edu/)).

## Features

- Extract musical features from a `NendoTrack` or a `NendoCollection`
- Use descriptive features to filter, search and sort your library
- Extract rich features to annotate datasets for training custom models

## Installation

1. [Install nendo](https://github.com/okio-ai/nendo#installation)
2. `pip install nendo-plugin-classify-core`

## Usage

Take a look at a basic usage example below.
For more detailed information, please refer to the [documentation](https://okio.ai/docs/classify-core/advanced).

For more advanced examples, check out the examples folder.
or try it in colab:

<a target="_blank" href="https://colab.research.google.com/drive/1mmbjf0NfsF596p2zDWBDryuxvFYMGAzO?usp=sharing">
    <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/>
</a>


```python
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
```

## Contributing

Visit our docs to learn all about how to contribute to Nendo: [Contributing](https://okio.ai/docs/contributing/)

## License

Nendo: MIT License

Essentia: Affero GPLv3 license
