Skip to content

feat(voice): gate audio sender on DAVE session readiness#556

Draft
thomas-vilte wants to merge 2 commits into
disgoorg:masterfrom
thomas-vilte:feat/dave-ready-gate
Draft

feat(voice): gate audio sender on DAVE session readiness#556
thomas-vilte wants to merge 2 commits into
disgoorg:masterfrom
thomas-vilte:feat/dave-ready-gate

Conversation

@thomas-vilte

Copy link
Copy Markdown

Draft — depends on disgoorg/godave#. Will update go.mod once that merges.

When DAVE is enabled, the audio sender tries to encrypt frames immediately after joining or moving channels — before the MLS handshake completes. Every frame during that window fails with "no active epoch" and gets dropped.

This adds DaveSession() godave.Session to the Conn interface and checks Ready() at the top of the send loop. The sender holds off pulling frames until the epoch is established, then resumes normally. No frames are lost, playback just starts a bit later.

The noop session (non-DAVE guilds) always returns true so there's no behavior change there.

Related: #555

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

1 participant