Skip to content

Send client/state: 'error' on audio underrun instead of always synchronized #257

Description

@balloob

Severity: 🟡 medium

The sounddevice callback at sendspin/audio.py:432-437 detects underrun and triggers a deferred queue clear, but no send_player_state(state='error') is ever sent. The only send_player_state() call (audio_connector.py:456-460) always sends SYNCHRONIZED. Per spec, an underrun should produce state: 'error' → mute → buffer → state: 'synchronized'.


Source: docs/stream-sync-correction.md §sendspin-cli
Full audit branch: claude/stream-sync-correction-sdks-AWoNC
Per-SDK digest: sdk-issues digest

Filed from a cross-SDK conformance audit; see digest for the full per-SDK punch list.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions