abchapterize 0.11.0
A lighter model that finds more, a mode for books that just count, and a run that stops going quiet when a chapter is missing.
A feature release on top of 0.10.1. New here? The README explains what ABChapterize is for. What follows is what changed.
The default is now -m small -M turbo
Finding a chapter means listening to a window a few seconds wide, and the large models are markedly worse at that — handed a short clip they tend to hand back the whole thing as one run-on sentence with the announcement missing from it. So the small model now does the finding, and turbo is kept for filling gaps, where it transcribes long stretches and genuinely hears more. It is fetched only if a chapter actually goes missing, so a first run downloads a fraction of what it used to and finishes sooner. -m large still means large throughout.
Because the two models now differ by default, the second opinion on an implausible chapter number is on by default too.
--chapter-phrase none, for books that announce a chapter by its number alone
Some narrators say "Seventeen." and read on, with no "chapter" anywhere — and until now there was nothing in such a book for the tool to look for. This mode drops the phrase entirely and takes a number spoken alone, with a pause on either side of it, as the announcement. A number inside a sentence is not one, so the years, prices and house numbers in the prose are left where they are.
Experimental, and labelled so on purpose: it is calibrated against a single book so far, so check what it produces and expect the rules behind it to keep moving.
A chapter missing after the last one found is no longer missed
A hole in the numbering needs a known chapter on either side of it, which made a chapter missing after the last one found the one case nothing noticed: the file came out looking complete, with nothing reported, nothing tagged and nothing in the log to go on. The tail is now transcribed on every file by default, because that silent failure is worse than a run that takes a few minutes longer. --no-trailing-scan buys the time back on a library you have already checked, and the new --chapter-count replaces the blind sweep with a hunt for the numbers actually owed, which stops the moment they turn up.
Substantial performance improvements
Pass 2 now frames each probe around what it expects to hear there instead of handing every candidate the same window — across the test corpus that roughly halves the speech recognition it does, while looking in the places the one-size window was being stretched to cover. The CHANGELOG has the details.
Also new
--cleanupsweeps up after a run: leftovers and logs deleted,.missing-marksname tags taken off, and backups removed only where the file they back up sits next to them and runs the same length.--revertrestores them over their files instead.--verify --fixnudges a confirmed mark onto its announcement rather than only reporting that it sits half a second off.- The silence threshold now adapts to the recording, so a book recorded with audible hiss or mastered very quietly is no longer effectively unsearchable.
--noise-floorsets it by hand. --min-silence-length 0looks at the jingles and nothing else — on a book whose every chapter opens with music, the largest single saving available anywhere in the tool.--summarylists the low-confidence marks, so "which of these should I check by hand" is answered without reading a log back.
Before you upgrade a script
--trailing-scan / -L is gone, the scan being the default now; either spelling stops the run with a message pointing at --no-trailing-scan, rather than quietly doing the opposite of what was meant. --title has become --chapter-title, but the old spelling still works and always will.
A good number of bugs were also cornered and exterminated. The CHANGELOG names them individually, as is only proper.
Downloads
| File | Platform |
|---|---|
abchapterize-0.11.0-win-x64.zip |
Windows x64 |
abchapterize-0.11.0-linux-x64.tar.gz |
Linux x64 (glibc) |
Self-contained — no .NET runtime to install. Each archive carries the executable, the native Whisper and ONNX Runtime libraries (CPU, CUDA and Vulkan backends), the README, the manual and all license texts. Unpack anywhere and keep the runtimes folder next to the executable; you still need ffmpeg/ffprobe available, and the speech model downloads itself on first run.