Skip to main content

BarMusComp: Encoding songs with linear and nonlinear compression methods to reveal structure

Hello, and welcome on this repository!

This project aims at compressing all bars in a song, and studies the compressed representations of every bar to infer its structure. It is related to my PhD thesis [1].

This repository contains code for the NTD, PCA, NMF, and Autoencoders (developed in PyTorch), as presented in [2].

This project is an extension of the toolbox as_seg [3], which computes the segmentation of an autosimilarity matrix.

It can be installed with pip using pip install barmuscomp.

This is a first release, and may contain bug. Comments are welcomed!

Software version

This code was developed with Python 3.8.5, and some external libraries detailed in dependencies.txt. They should be installed automatically if this project is downloaded using pip.

Tutorial Notebook

4 tutorial notebooks are available in the folder "Notebooks", and present the different compression methods on the song 'Come Together'.

They are only present if you downloaded the project from git (e.g. https://gitlab.inria.fr/amarmore/barmuscomp), and are not available in the pip version (which is in general not accessible easily in the file tree).

How to cite

You should cite the package BarMusComp, available on HAL (https://hal.archives-ouvertes.fr/hal-03782914).

Here are two styles of citations:

As a bibtex format, this should be cited as: @softwareversion{marmoret2022barmuscomp, title={BarMusComp: module for computing barwise compressed representations of music}, author={Marmoret, Axel and Cohen, J{'e}r{'e}my and Bimbot, Fr{'e}d{'e}ric}, URL={https://gitlab.inria.fr/amarmore/barmuscomp}, LICENSE = {BSD 3-Clause ''New'' or ''Revised'' License}, year={2022}}

In the IEEE style, this should be cited as: A. Marmoret, J.E. Cohen, and F. Bimbot, BarMusComp: module for computing barwise compressed representations of music, 2022, url: https://gitlab.inria.fr/amarmore/barmuscomp.

Credits

Code was created by Axel Marmoret (axel.marmoret@gmail.com), and strongly supported by Jeremy E. Cohen (jeremy.cohen@cnrs.fr).

The technique in itself was also developed by Frédéric Bimbot (bimbot@irisa.fr).

References

[1] A. Marmoret, "Unsupervised Machine Learning Paradigms for the Representation of Music Similarity and Structure", Ph.D. dissertation, Université de Rennes 1, 2022. (not uploaded yet but will be soon! You should check the website hal.archives-ouvertes.fr/ in case this README is not updated with the reference.)

[2] A. Marmoret, J.E. Cohen, and F. Bimbot, "Barwise Compression Schemes for Audio-Based Music Structure Analysis"", in: 19th Sound and Music Computing Conference, SMC 2022, Sound and music Computing network, 2022.

[3] A. Marmoret, J.E. Cohen, and F. Bimbot, "as_seg: module for computing and segmenting autosimilarity matrices", 2022, url: https://gitlab.inria.fr/amarmore/autosimilarity_segmentation.

Metadata

Release files for barmuscomp 0.1.6

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

Source distribution (sdist)

Source distribution for barmuscomp 0.1.6
File Size Uploaded Provenance Actions
barmuscomp-0.1.6.tar.gz 33.9 kB Without provenance Details for barmuscomp-0.1.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for barmuscomp 0.1.6
File Interpreter ABI Platform Actions
barmuscomp-0.1.6-py3-none-any.whl Python 3 none any Details for barmuscomp-0.1.6-py3-none-any.whl

Total release size: 72.9 kB

Release files / barmuscomp-0.1.6.tar.gz

Download URL barmuscomp-0.1.6.tar.gz
Size 33.9 kB
Tags Source
SHA-256 checksum
How to use checksums
85fe22f0f5b725828aa27fc408fd1a14b1862233ea8a1637b7988c2478deb51d
BLAKE2b-256 checksum
How to use checksums
c03a0188408486dbf7973ccb186712234a9add25339dba2e5d31943d47bb2610
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.10.12

Release files / barmuscomp-0.1.6-py3-none-any.whl

Download URL barmuscomp-0.1.6-py3-none-any.whl
Size 39.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0629e64f5665a308e0527aece01efa3d8fb82efdd2394c252af68de3f22cfc69
BLAKE2b-256 checksum
How to use checksums
39bdcee7fa727f5956df49cf365afb29833adf8984f93bf4f89d124dfb245fdc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.10.12

Security for barmuscomp 0.1.6

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