Tool for linking classical music record & track to the corresponding composition / movement.
Project description
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)
Project details
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
Close
Hashes for composition_entity_linker-0.0.6.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7e72f3af01e917d84e5b15df4830e35a0f19de761531d81226747ffc4e19f209 |
|
MD5 | 0d5d99800e74600796879440beabc701 |
|
BLAKE2b-256 | 9c7600e6b19fd3457066be4e539cf62901a9a0b0a3f57a87d6b81b493b517120 |
Close
Hashes for composition_entity_linker-0.0.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb71e064cdc8bcfad54c26ee8641cbe5d9d5af5c21fefa7d27514f09011649e4 |
|
MD5 | 94bf846e54eea598a5844a2885247a85 |
|
BLAKE2b-256 | 663eec0b775d791c910bcd683e6c8b8422b657cd3787041300175b236dc236fc |