Skip to content

Voice playback drops or becomes silent in multi-user channels (possible libdave/DAVE issue) #7

@crygeo

Description

@crygeo

Hi, I believe I might be encountering an issue related to the voice layer (possibly libdave/DAVE) when using Discord.Net.

Scenario

  • Bot joins a voice channel and plays TTS audio.
  • With only 1 user + bot → audio works correctly.
  • When another user joins while audio is playing → playback gets interrupted.
  • If the bot joins a channel with multiple users already present → sometimes no audio is heard at all.

Observed behavior

  • Audio pipeline (TTS → PCM → queue) works as expected.
  • CreatePCMStream starts correctly.
  • Audio appears to be sent, but users do not hear anything.
  • In some cases, the voice WebSocket disconnects during playback.

Relevant logs

  • Voice disconnected: WebSocket connection was closed
  • SendAsync completed ... during successful runs
  • During failure cases, the disconnect happens while writing audio

Additional notes

  • The issue consistently appears in multi-user voice scenarios.
  • I implemented reconnect and retry logic, but the problem persists.
  • This suggests the issue might be related to how voice reconnection or encryption (DAVE/libdave) is handled internally.

Questions

  1. Is this a known limitation or issue with voice + DAVE/libdave in multi-user channels?
  2. Should IAudioClient handle reconnection transparently in these cases?
  3. Is there a recommended way to handle voice reconnections during active playback?
  4. Could voice state updates (users joining/leaving) invalidate the current audio stream?

If needed, I can provide more detailed logs and a minimal reproducible example.

Thanks in advance.

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