diff --git a/app/src/main/java/com/k2fsa/sherpa/onnx/MainActivity.kt b/app/src/main/java/com/k2fsa/sherpa/onnx/MainActivity.kt index 5180465..7730349 100644 --- a/app/src/main/java/com/k2fsa/sherpa/onnx/MainActivity.kt +++ b/app/src/main/java/com/k2fsa/sherpa/onnx/MainActivity.kt @@ -806,7 +806,8 @@ class MainActivity : AppCompatActivity() { val deepLow = simA < deepLowSwitch Log.i(TAG, "SWITCH-SUSPECT" + " armed fast-endpoint owner=sid$owner" + - (if (deepLow) " deepLow" else "")) + (if (deepLow) " deepLow" else "") + + " rms=" + "%.3f".format(rmsOf(win))) // 无缝插话确证:深低一票即切; // 浅低维持连续两票。切行同时把 // 新说话人挂名(切行即挂名,复用 @@ -951,6 +952,13 @@ class MainActivity : AppCompatActivity() { } pendingSamples = 0 frozen = false + // 锚点随切点作废(2026-09-16 风暴根治):重置依赖"新人 + // 首句 partial→开新行",碎片音/静默期无 partial 时旧 + // 锚点会让每个噪声窗都读"深低"→连环强切;切点即弃, + // 下一窗静默重定基准 + windowRefEmb = null + windowPrevEmb = null + rollingLowStreak = 0 Log.i(TAG, "ONSET-FLUSH " + "${drained * 1000 / sampleRateInHz}ms -> new stream") } @@ -966,6 +974,9 @@ class MainActivity : AppCompatActivity() { } pendingSamples = 0 frozen = false + windowRefEmb = null + windowPrevEmb = null + rollingLowStreak = 0 Log.i(TAG, "ONSET-FLUSH(no-sentence) " + "${drained * 1000 / sampleRateInHz}ms") }