Extensible distance components
- Dominant language
- Python
- Stars
- 15.7k
- Forks
- 2.1k
- Avg merge
- 4d 21h
- Merged PRs (30d)
- 31
Description
Currently, the chroma plugin uses the "track_id" distance field for its track penalties on fingerprint mismatches. It would be better if it could use its own name (say, "chromaprint") to help the user distinguish between metadata ID mismatches and fingerprinting mismatches. It should also, of course, be possible to specify the weight of fingerprinting mismatches independently.
Right now, however, it's impossible to add new distance penalty categories (all weights are expected to appear under `config['match']['distance_weights']` (see hooks.py).
I'm not exactly sure how, but it should be possible to extend the weight set—possibly by adding a optional weight parameter to the `Distance.add()` method and then extending the various distance-merging functions to also merge the `_weights` dict.
Contributor guide
Assessment
This issue has not been assessed yet.