Skip to content

Comments

Fix bluetooth audio dropout issue#5421

Merged
roxanneskelly merged 1 commit intorelease/2026.01from
roxie/webrtc-audio-dropout-fix
Feb 13, 2026
Merged

Fix bluetooth audio dropout issue#5421
roxanneskelly merged 1 commit intorelease/2026.01from
roxie/webrtc-audio-dropout-fix

Conversation

@roxanneskelly
Copy link
Contributor

@roxanneskelly roxanneskelly commented Feb 13, 2026

Description

Use the latest update of the webrtc.lib which fixes an issue with some bluetooth devices dropping audio.

Related Issues

Fixes #5424

Found during #5118 evaluation

Testing Guidance:

  • Use a windows 11 PC with a bluetooth headset or earbuds (airpods are good)
  • Set the bluetooth device as your system default device for input and output
  • Log in to a webrtc region (webrtc1.) If there is no load-test audio in that area, log in with a second viewer
  • On the one with the bluetooth headset, click 'talk' and listen to the other av/load test. Expect, it reduces in bitrate and goes mono (it's a bluetooth thing)
  • Unclick talk,. Expect, it goes back up to full bitrate and stereo (may take a second or more.)
  • Validate that cycling through talk/mute a number of times does not prevent audio from being heard.
  • If audio does go silent, and there are still voice 'bars' in the chat window, that's a fail. (try it with the release viewer vs this one)

Additional tests:

  • Test basic webrtc usage with a surround sound setup (more than 2 channels output) or with a mixer or virtual mixer
  • Test basic webrtc usage with a 4 channel + input microphone and/or a virtual mixer to get more than 4 channels of input

…ONVERTPCM

  Use WAVEFORMATEXTENSIBLE and AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM to
  support devices whose native format differs from 48kHz stereo PCM,
  such as Bluetooth HFP endpoints (16kHz mono) and surround sound
  devices (5.1/7.1).

  Replace the event-driven render loop (AUDCLNT_STREAMFLAGS_EVENTCALLBACK)
  with a timer-driven polling loop to avoid a known issue where
  AUTOCONVERTPCM combined with EVENTCALLBACK causes the audio engine to
  stop signaling render events, resulting in premature thread termination.

  Also adds 192kHz to the supported sample rate list, uses the first
  closest-match format from IsFormatSupported as a fallback when no
  exact match is found, and applies the same changes to the recording
  path.
@roxanneskelly roxanneskelly changed the base branch from develop to release/2026.01 February 13, 2026 07:20
@roxanneskelly roxanneskelly added the bug Something isn't working label Feb 13, 2026
@roxanneskelly roxanneskelly added this to the 2026.1 milestone Feb 13, 2026
@roxanneskelly roxanneskelly merged commit 4db12c6 into release/2026.01 Feb 13, 2026
33 of 34 checks passed
@roxanneskelly roxanneskelly deleted the roxie/webrtc-audio-dropout-fix branch February 13, 2026 19:07
@github-actions github-actions bot locked and limited conversation to collaborators Feb 13, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

bug Something isn't working c/cpp llcommon

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants