Skip to main content

## CATCHY

### Corpus Analysis Tools for Computational Hook discovery

Python tools for the corpus analysis of popular music recordings. The tools can be used separately or together. I.e.: you can use your own psychoacoustic features and still use the other modules. Note that to use all scripts, it is assumed that audio files come pre-segmented (e.g., into structural sections).

The base feature modules’ requirements include Matlab, Librosa and VAMP.

### Structure

Extracting catchy features from a folder of files involves three steps (look for the eurovision_demo.ipynb ipython notebook for a more detailed demo):

  1. Base feature extraction

    Here, basic, familiar feature time series are extracted. The toolbox currently implements (wrappers for) MFCC, chroma, melody and perceptual feature extraction. (Rhythm features under development in branch rhythm.) This part of the toolbox relies on a lot of external code, but it’s also easy to work around: if you want to use other features, just save them to a set of csv files (1 per song section–see below) in some folder (1 per feature).

  2. Pitch (and rhythm) descriptor extraction

    This part computes mid-level pitch descriptors from chroma and/or melody information computed in step one. Essentially an implementation of several kinds of audio bigram descriptors. See also [1] and [2].

  3. Feature transforms

    Compute ‘first’ and ‘second order’ aggregates of any of the features computed in step 1 and step 2. See [2].

The above three steps correspond to the three columns in below diagram.

![Module Diagram](docs/catchy%20modules.png?raw=true)

### Known issues:

  • i/o currently very conservative–you may have to do your own mkdirs when writing features.

  • Matlab path handling hasn’t been checked on other machines than mine.

Hopefully these will be addressed soon.

### License

Matlab scripts under GNU Public license; everything else, see LICENSE.

If you use this, feel free to refer to [2].

[1] Van Balen, J., Wiering, F., & Veltkamp, R. (2015). Audio Bigrams as a Unifying Model of Pitch-based Song Description. In Proc. 11th International Symposium on Computer Music Multidisciplinary Research (CMMR). Plymouth, United Kingdom.

[2] Van Balen, J., Burgoyne, J. A., Bountouridis, D., Müllensiefen, D., & Veltkamp, R. (2015). Corpus Analysis Tools for Computational Hook Discovery. In Proc. 16th International Society for Music Information Retrieval Conference (pp. 227–233). Malaga, Spain.

Home page: [http://www.github.com/jvbalen/catchy](http://www.github.com/jvbalen/catchy)

  1. 2016 Jan Van Balen ([@jvanbalen](https://twitter.com/jvanbalen))

Metadata

Release files for catchy-toolbox 0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for catchy-toolbox 0.4
File Size Uploaded Provenance Actions
catchy-toolbox-0.4.tar.gz 21.1 kB Without provenance Details for catchy-toolbox-0.4.tar.gz

Release files / catchy-toolbox-0.4.tar.gz

Download URL catchy-toolbox-0.4.tar.gz
Size 21.1 kB
Tags Source
SHA-256 checksum
How to use checksums
55d6a68d7d00ff41f811ea295140552213abc3f30f8e1bb2a28601f827d94e81
BLAKE2b-256 checksum
How to use checksums
77bfb4aeaac742736c31ca6a4bd1207e2830f3b016c5ffa3c2946de26a434468
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.8.6

Security for catchy-toolbox 0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page