Fix wrong audio sync delta after server-driven delay change - #245
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR fixes incorrect audio sync correction when the server issues SET_STATIC_DELAY by tracking the currently applied static delay locally (instead of relying on settings.static_delay_ms, which can lag due to CLI overrides or client recreation).
Changes:
- Add an optional
on_delay_changedcallback to the TUI keyboard command handler so the app can mirror local delay changes. - Track the applied delay in TUI (
_applied_delay_ms) and daemon (_static_delay_ms) and compute server-driven delay deltas against that mirror. - Ensure newly created/recreated
SendspinClientinstances receive the mirrored applied delay value.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| sendspin/tui/keyboard.py | Adds an optional delay-change callback and wires it through keyboard_loop/CommandHandler.adjust_delay. |
| sendspin/tui/app.py | Introduces _applied_delay_ms, uses it when creating clients, and fixes server-driven delay delta computation. |
| sendspin/daemon/daemon.py | Mirrors applied delay in _static_delay_ms, uses it for client creation, and fixes server-driven delay delta computation. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
5 tasks
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.
Server-initiated
set_static_delaycomputed the audio sync delta fromsettings.static_delay_ms, which can lag the client's real delay when--static-delay-msoverrides settings or after a visualizer toggle. The audio worker then got a wrong correction.