diff options
author | Jonathan "Geenz" Goodman <geenz@lindenlab.com> | 2025-08-08 18:43:32 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-08-08 18:43:32 -0400 |
commit | 5b1c783be7506a745c618e3bbc8a5578026e2fd5 (patch) | |
tree | b4d5928717a283b46f9a85c9489c1f31db3d1963 /indra/llwebrtc/llwebrtc.cpp | |
parent | 8ef660a7450dad60e5f73cd2cc50aeb6b9f8a356 (diff) | |
parent | bab2c12d048e7faf021ee3a9df39251e91973abf (diff) |
Merge pull request #4494 from secondlife/roxie/fix-4419
Straighten out muting to prevent echo when crossing from vivox to webrtc regions near a webrtc region boundary.
Diffstat (limited to 'indra/llwebrtc/llwebrtc.cpp')
-rw-r--r-- | indra/llwebrtc/llwebrtc.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/indra/llwebrtc/llwebrtc.cpp b/indra/llwebrtc/llwebrtc.cpp index 28639b9af0..20951ff816 100644 --- a/indra/llwebrtc/llwebrtc.cpp +++ b/indra/llwebrtc/llwebrtc.cpp @@ -904,12 +904,12 @@ void LLWebRTCPeerConnectionImpl::enableSenderTracks(bool enable) // set_enabled shouldn't be done on the worker thread. if (mPeerConnection) { + mPeerConnection->SetAudioRecording(enable); auto senders = mPeerConnection->GetSenders(); for (auto &sender : senders) { sender->track()->set_enabled(enable); } - mPeerConnection->SetAudioRecording(enable); } } @@ -964,6 +964,9 @@ void LLWebRTCPeerConnectionImpl::setMute(bool mute) { if (mPeerConnection) { + // SetAudioRecording must be called before enabling/disabling tracks. + mPeerConnection->SetAudioRecording(enable); + auto senders = mPeerConnection->GetSenders(); RTC_LOG(LS_INFO) << __FUNCTION__ << (mMute ? "disabling" : "enabling") << " streams count " << senders.size(); @@ -982,7 +985,6 @@ void LLWebRTCPeerConnectionImpl::setMute(bool mute) track->set_enabled(enable); } } - mPeerConnection->SetAudioRecording(enable); } }); } |