Composition Entity Linker (under development)
This is a tool for linking classical music record & track to the corresponding composition / movement, useful in cleaning up metadata in classical music datasets. Inputs are referenced through corpus crawled from https://imslp.org/wiki/Main_Page.
Install
pip install composition-entity-linker
Usage
from composition_entity_linker import CELlinker, Track
linker = CELlinker()
1. Query the composition from track name:
track = Track("Violin Sonata in A Major, Op. 162, D. 574 ""Grand Duo"": III. Andantino (Live)", composer="Franz Schubert")
result = linker.query(track)
"""
result: {
"found_flag": True,
"composition": "Violin Sonata in A major, D.574"
"movement": "Andantino"
}
"""
2. Compare if the two tracks are refering to the same composition:
track1 = Track("Prelude and Fugue No. 2 in C Minor BWV 847", composer="Johann Sebastian Bach")
track2 = Track("Prelude & Fugue In C Minor (Well-Tempered Clavier, Book I, No. 2), BWV 847", composer="J.S. Bach")
linker.compare(track1, track2)
# return: True
track3 = Track("Das Wohltemperierte Klavier: Book 1, BWV 846-869: Fugue in C minor BWV 847", composer="Иоганн Себастьян Бах")
linker.compare(track1, track3)
# return: True
Track info
Although only the title is required, inputing composer name will improve matching accuracy and speed.
Track(title: str,
duration: float in ms,
composer: str)
Metadata
Release files for composition-entity-linker 0.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| composition_entity_linker-0.0.6.tar.gz | 52.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| composition_entity_linker-0.0.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.6 MB
Release files / composition_entity_linker-0.0.6.tar.gz
| Download URL | composition_entity_linker-0.0.6.tar.gz |
|---|---|
| Size | 52.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7e72f3af01e917d84e5b15df4830e35a0f19de761531d81226747ffc4e19f209
|
|
BLAKE2b-256 checksum How to use checksums |
9c7600e6b19fd3457066be4e539cf62901a9a0b0a3f57a87d6b81b493b517120
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.7.13
|
Release files / composition_entity_linker-0.0.6-py3-none-any.whl
| Download URL | composition_entity_linker-0.0.6-py3-none-any.whl |
|---|---|
| Size | 2.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cb71e064cdc8bcfad54c26ee8641cbe5d9d5af5c21fefa7d27514f09011649e4
|
|
BLAKE2b-256 checksum How to use checksums |
663eec0b775d791c910bcd683e6c8b8422b657cd3787041300175b236dc236fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.7.13
|