From c725700814150076e1f52714343ea418dd6d5d2d Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Mon, 27 Jul 2026 09:53:17 -0400 Subject: [PATCH] Minor fixes to UI for connection feedback. --- .../com/objectbrokers/whisperclient2/MainActivity.kt | 12 +++--------- .../objectbrokers/whisperclient2/SettingsManager.kt | 4 ++-- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/com/objectbrokers/whisperclient2/MainActivity.kt b/app/src/main/java/com/objectbrokers/whisperclient2/MainActivity.kt index 1c3377f..e392361 100644 --- a/app/src/main/java/com/objectbrokers/whisperclient2/MainActivity.kt +++ b/app/src/main/java/com/objectbrokers/whisperclient2/MainActivity.kt @@ -329,8 +329,9 @@ class MainActivity : ComponentActivity() { return } - // 5. Transcript segments — the normal steady-state message during recording. + // 5. Transcript — the normal steady-state message during recording. if (message.has("segments")) { + Log.i(TAG, "Raw segments: ${message.getJSONArray("segments")}") val segments = message.getJSONArray("segments") val sb = StringBuilder() for (i in 0 until segments.length()) { @@ -384,7 +385,7 @@ class MainActivity : ComponentActivity() { fun stopRecording() { - connectionStatus = "Disconnected" + runOnUiThread { connectionStatus = "Disconnected" } stopAudioCapture() recordingJob?.cancel() // the ?. is Kotlin null-safety — no NPE if job is null webSocket?.close(1000, "Done") @@ -422,13 +423,6 @@ class MainActivity : ComponentActivity() { } } - fun sendAudioPacket(webSocket: WebSocket, audioBytes: ByteArray) { - // OkHttp's send() is overloaded: - // send(String) → text frame - // send(ByteString) → binary frame ← this is what we want - // ByteString.of() wraps a ByteArray without copying if possible. - webSocket.send(ByteString.of(*audioBytes)) - } } /* diff --git a/app/src/main/java/com/objectbrokers/whisperclient2/SettingsManager.kt b/app/src/main/java/com/objectbrokers/whisperclient2/SettingsManager.kt index 13fc85a..9e61525 100644 --- a/app/src/main/java/com/objectbrokers/whisperclient2/SettingsManager.kt +++ b/app/src/main/java/com/objectbrokers/whisperclient2/SettingsManager.kt @@ -57,10 +57,10 @@ class SettingsManager(private val context: Context) { const val DEFAULT_LANGUAGE = "en" const val DEFAULT_USE_VAD = false const val DEFAULT_AUDIO_FORMAT = "int16" - const val DEFAULT_SEND_LAST_N_SEGMENTS = 10 + const val DEFAULT_SEND_LAST_N_SEGMENTS = 2 const val DEFAULT_NO_SPEECH_THRESH = 0.45 const val DEFAULT_CLIP_AUDIO = false - const val DEFAULT_SAME_OUTPUT_THRESHOLD = 10 + const val DEFAULT_SAME_OUTPUT_THRESHOLD = 3 const val DEFAULT_ENABLE_TRANSLATION = false const val DEFAULT_TARGET_LANGUAGE = "fr" const val DEFAULT_ENABLE_DIARIZATION = false