v1.22.0
canticle v1.22.0
Highlights
When no lyrics service can find a track, canticle listens to the audio and decides whether it is an instrumental. That decision is permanent, so it never looks again. The setting behind it was an early placeholder that had never actually been tested. Measured at last against a few hundred known tracks, it was calling about one song in twenty an instrumental despite it having real lyrics. In a decent-sized library that is hundreds of songs quietly written off. The new default makes it rare.
The trade is that canticle is now slower to call anything an instrumental, which costs a little wasted searching and never costs you lyrics. The surprise was the direction: everyone assumed it was too strict, and it turned out too generous. Fixing the number does nothing for decisions already made, because canticle never revisited a track it considered settled. So this release also adds a cleanup command that re-examines past instrumental verdicts and undoes the wrong ones. It shows you the list before changing anything, and never touches a marker that came from a lyrics service rather than canticle's own listening.
What's changed
Fixed
- The audio detector no longer marks roughly one in twenty genuinely sung tracks as an instrumental. The setting behind that call is now based on measurement against known tracks rather than an untested placeholder (#555)
Added
- A new cleanup command re-examines tracks previously marked as instrumentals, undoes the ones the corrected setting no longer agrees with, and sends them back for a normal lyrics search. Shows you what it would do first, changes nothing without
--yes, and keeps a record of everything it touches (#556)
Upgrading
If you set instrumental_detector.vocal_max_confidence yourself, nothing changes for you. Everything below applies to the default.
Your existing library still carries the old decisions, and they will not fix themselves. Upgrading changes what happens next, not what already happened. Start with the version that changes nothing:
canticle scan reconcile-instrumental-recalibrate --reverse
That prints one line per track it thinks it got wrong and touches nothing. When you are happy with the list, add --yes to apply it. Corrected tracks go back into the queue ahead of the ordinary backlog so they are looked up promptly, and on a large library the whole pass takes a minute or two.
Two things it cannot do. Tracks analyzed before v1.11.0 predate canticle recording the scores behind each decision, so there is nothing to re-examine and the cleanup passes over them; correcting those needs a full re-scan. And the measurement behind the new default came from one real music collection, so a library weighted very differently, heavily choral or spoken-word, may still want a different number. That is what the config key is for.