Calls: fix screenshare audio on mic mute and add incoming volume control#30293
Open
paterkleomenis wants to merge 1 commit intotelegramdesktop:devfrom
Open
Calls: fix screenshare audio on mic mute and add incoming volume control#30293paterkleomenis wants to merge 1 commit intotelegramdesktop:devfrom
paterkleomenis wants to merge 1 commit intotelegramdesktop:devfrom
Conversation
a6ebc84 to
3116cd5
Compare
ef08e31 to
3116cd5
Compare
Contributor
|
The PR has conflicts |
3116cd5 to
900513b
Compare
Fix system audio stopping when microphone is muted during 1-to-1 screen sharing. Previously setMuteMicrophone() muted the entire outgoing audio channel, killing both mic and system audio. Now when screen audio is active, mic is muted at the ADM mixing level while the channel stays unmuted so system audio continues flowing. Add right-click context menu on the incoming video in 1-to-1 calls with a volume slider and mute toggle for controlling the remote user's audio volume locally. Implements setOutputVolume via the WebRTC receive channel (same mechanism as group calls) so the slider actually affects playback. Always wrap the ADM with MixingAudioDeviceModule so playback volume control is available regardless of loopback capture support. Add separate controls for participant voice and screen-share audio in group call member menus, and expose a dedicated screen-share mute action when screen audio is available. Add screencast-only fullscreen mode for group call screenshare. When a screen endpoint is focused, fullscreen switches to a layout that hides side panels. Controls auto-hide on inactivity and reappear on mouse movement. Also disable speaking outline rendering in fullscreen to avoid full-frame green highlighting.
900513b to
8fc77e9
Compare
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.
Summary
Fix screenshare audio stopping on mic mute: When the user mutes their microphone during a 1-to-1 call with screen audio sharing, the system audio no longer stops. Previously
setMuteMicrophone()muted the entire outgoing audio channel, silencing both mic and system audio. Now when screen audio is active, the mic is muted at the ADM mixing level while the channel stays unmuted so system audio continues flowing.Add right-click volume control for incoming audio: Right-clicking on the incoming video in a 1-to-1 call shows a popup menu with a volume slider and mute toggle, allowing local control of the remote user's audio volume. Reuses the existing
MenuVolumeItemfrom group calls.Always use MixingAudioDeviceModule wrapper: The ADM is now always wrapped with
MixingAudioDeviceModuleso playback volume control is available regardless of loopback capture support.Depends on desktop-app/lib_webrtc#24
Testing