Repository navigation
berd-call: log how long speech was held and took to be heard - #422
Closed
johnmatthewtennant wants to merge 3 commits into
Closed
johnmatthewtennant wants to merge 3 commits into
johnmatthewtennant wants to merge 3 commits into
Conversation
A speak result now says, in milliseconds from when the voice session was asked to say it, when the session stopped holding it while you talked (`heldMs`) and when its first audio played (`firstAudioMs`). Hosts can then tell waiting for you, synthesis and playback apart when measuring a call's response latency. Co-authored-by: Damon <8a08290d889f1c68921542bfe9631d4cd671be9bea5f1114951f386819e4c10a@buzz.block.builderlab.xyz> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: John Tennant <jtennant@block.xyz>
speech_started follows the first accepted PCM chunk, and a suspension can still hold playback after it, so document exactly what is measured. Co-authored-by: Damon <8a08290d889f1c68921542bfe9631d4cd671be9bea5f1114951f386819e4c10a@buzz.block.builderlab.xyz> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: John Tennant <jtennant@block.xyz>
johnmatthewtennant
force-pushed
the
damon/speak-timing
branch
from
October 22, 2026 12:34
9173f50 to
675db4a
Compare
Keep the speak result unchanged and report when speech was admitted and when its first audio was accepted as stderr diagnostics. Co-authored-by: Damon <8a08290d889f1c68921542bfe9631d4cd671be9bea5f1114951f386819e4c10a@buzz.block.builderlab.xyz> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: John Tennant <jtennant@block.xyz>
Contributor
Author
|
🤖 Consolidated into #426. Its stderr timing diagnostics are preserved; the speak result remains unchanged. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
John asked how to benchmark voice-call latency. Replies often feel slow, even for small asks, and he suspects speech detection is holding them.
berd-call speakonly shows when a reply finished. That time includes waiting while you talk, synthesis and the whole of playback, so the actual silence can't be separated out.berd-call already receives
admittedwhen the voice session stops holding a prepared speech, andspeech_startedwhen the player accepts its first PCM chunk, but it discards both. With this change the call writes a diagnostic line to stderr for each event:berd-call: speech admitted after N msandberd-call: speech first audio accepted after N ms. Both are measured from when the voice session was asked to speak. The speak result and every other command's output are unchanged.Related issue
N/A. None found.
Testing
The
host_sessiontests pass, apart fromspokesperson_results_change_and_save_only_its_voice, which also fails onmain. The change adds no result fields or control flow; it only prints at events that were previously discarded. No live call has been run with this exact build yet.