Implement soft mute that doesn't affect system audio chain#877
Open
mr-byrd wants to merge 1 commit intocommetchat:mainfrom
Open
Implement soft mute that doesn't affect system audio chain#877mr-byrd wants to merge 1 commit intocommetchat:mainfrom
mr-byrd wants to merge 1 commit intocommetchat:mainfrom
Conversation
mr-byrd
commented
Apr 7, 2026
- Replace LiveKit's setMicrophoneEnabled(false) with setVolume(0) to mute audio at the WebRTC mixer level instead of disabling the audio track
- This prevents the microphone device from being released at the device level, keeping it available for other applications
- This fixes issues such as disabling the microphone in commet and leaving a session keeps the microphone disabled for other applications until the device is re-enabled either in commet or some other mechanism
- Disable audio level visualizer border when local user is muted to prevent misleading feedback
- Use local _softMuted state tracker combined with updateMuted() to signal mute state to LiveKit server to notify other users that the current user is muted through the LiveKit event without stopping the capture device
- Replace LiveKit's setMicrophoneEnabled(false) with setVolume(0) to mute audio at the WebRTC mixer level instead of disabling the audio track - This prevents the microphone device from being released at the device level, keeping it available for other applications - This fixes issues such as disabling the microphone in commet and leaving a session keeps the microphone disabled for other applications until the device is re-enabled either in commet or some other mechanism. - Disable audio level visualizer border when local user is muted to prevent misleading feedback - Use local _softMuted state tracker combined with updateMuted() to signal mute state to LiveKit server without stopping the capture device
Contributor
|
Thank you! would you mind trying to implement the same for the p2p calls which dont use livekit? Also I think it would be a good idea to have an option in preferences to revert to use previous implementation just in case this introduces anything unexpected |
Author
|
Sure, I can make it a preference and I'll look into the doing this for p2p as well. Seeing as how LiveKit and the p2p implementation will be different I think it would be good to have them as separate toggles |
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.