Step down when losing ground, not when slower than a constant
Build 117. A campus M4 Pro sat in the red with nobody listening and no language being translated — so transcription alone. Measured over SSH: sentences 4.2-4.7 s against roughly 4-5 s of audio, queue 46 deep, lag 152 s and still climbing. The mechanism built to catch exactly this could not fire. It triggers past 8 s, on the reasoning that 8 s means slower than people talk. That held when a chunk could be 8 s long; chunks are capped at HARD_CUT_MAX, 5.5 s. A 4.4 s sentence is already losing and never comes near 8 s, so the ladder never stepped down and the backlog grew without bound. It now compares against the audio the chunk actually held. Two details are measured rather than chosen: the margin is 0.85, because the Mini's 4.4 s against 4.5 s was NOMINALLY faster than real time while still losing — the work outside that timer (segmenting, the preview model sharing the GPU, the scheduler) loses on its own. And it requires a backlog of five, so one slow sentence on a healthy machine 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. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
73ec7f1436
commit
92e86e415f
+2
-2
@@ -2,7 +2,7 @@
|
||||
"name": "church-translate-engine",
|
||||
"productName": "Church Translate",
|
||||
"version": "3.23.2",
|
||||
"buildNumber": 116,
|
||||
"buildNumber": 117,
|
||||
"private": true,
|
||||
"description": "Live sermon translation — self-contained: captures audio, transcribes, translates, and serves the congregation page itself",
|
||||
"main": "main.js",
|
||||
@@ -106,7 +106,7 @@
|
||||
]
|
||||
},
|
||||
"asar": false,
|
||||
"buildVersion": "116",
|
||||
"buildVersion": "117",
|
||||
"win": {
|
||||
"target": [
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user