-
3.23.2 · build 117 Stable
released this
2026-09-24 13:24:22 -04:00 | 11 commits to main since this releaseFixes a machine that falls behind and never recovers.
What was happening
A campus Mac mini (M4 Pro, 24 GB) went red within about 90 seconds of starting, with nobody listening and no language being translated — so this was transcription alone, not translation load. Measured over SSH on the machine itself:
sentences 4.2 – 4.7 s each, against roughly 4–5 s of audio queue 46 and growing lag 152 s and still climbing input real speech, transcribed accuratelyThe app has a mechanism for precisely this: three slow sentences in a row and it steps down the speech model. It could not fire. It triggers past 8 seconds, on the reasoning that 8 s means slower than people talk — true when a chunk could be 8 s long, but chunks are capped at 5.5 s (
HARD_CUT_MAX). A 4.4 s sentence is already losing ground and never comes near 8 s, so the ladder never stepped down and the backlog grew without bound.What changed
It now compares the time taken against the audio the chunk actually held, rather than against a constant.
Two numbers in that test are measured rather than picked:
- 0.85 margin. The Mini's 4.4 s against 4.5 s of audio was nominally faster than real time while still losing badly — the work outside that timer (segmenting, the preview model sharing the GPU, the scheduler) is enough to lose on its own.
- A backlog of five. Direct evidence the machine is actually losing, so one slow sentence on a healthy Mac touches nothing.
Checked against eight cases including the Mini's real numbers and a healthy M2 Max. The old absolute rule stays for a model that is genuinely hung.
When it fires, the log now names the arithmetic:
transcription is slower than people are speaking (4400 ms for 4500 ms of audio, 46 waiting) — stepping down to a lighter model.Downloads