summaryrefslogtreecommitdiff
path: root/indra/llwebrtc
AgeCommit message (Collapse)Author
2024-05-02Unregister requested data channel when using the negotiated one.Roxie Linden
When creating a new connection, the viewer builds a data channel interface. It then gets a new one, which is a proxy. The viewer uses the new one, and therefore must unregister the callbacks from the old one. Also, update the position data before sending it after the join is sent.
2024-04-28Don't default the tracks to unmutedRoxie Linden
2024-04-28Reconnects to the voice server weren't happening.Roxie Linden
2024-04-21Reconnect when parcel voice params change.Roxie Linden
When parcel voice permissions and region/parcel-only voice settings change, a callback will be made to the viewer with new voice credential information. For webrtc, this means either just the uuid of the voice channel, or nothing if voice is disabled. This change looks at that callback and the channel id, and sets the appropriate flags on the parcel/region as needed which will cause voice to be renegotiated. Also, there was a race condition if the voice connect attempt was made before caps were retrieved, which would have resulted in full renegotiate attempts. Now, just wait until the cap comes in and continue.
2024-04-07CR suggestionsRoxie Linden
2024-04-07Show 'decline' when peer declines p2p voiceRoxie Linden
The simulator will send a chatterbox notification that voice is no longer in use for a given channel, and the viewer should take that as a case where the peer does not want voice, hence it's a decline.
2024-04-01oopseRoxie Linden
2024-04-01Fix "default" audio device handling.Roxie Linden
Windows and Mac/Linux behave slightly differently with respect to Default devices, in that mac/linux (I think) simply assumes the device at index 0 is the default one, and windows has a separate API for enabling the default device.
2024-03-30Fix windows crashesRoxie Linden
* sampling rate was set to 8khz for audio processing, which was causing a 'bands' mismatch with the echo cancler. * Some funnybusiness with lambdas and captures and such was causing a heap crash with respect to function parameters.
2024-03-30Merge branch 'roxie/webrtc-voice' of https://github.com/secondlife/viewer ↵Roxie Linden
into roxie/webrtc-voice
2024-03-30Renegotiate on remote description errorRoxie Linden
2024-03-30Add UI for managing echo cancellation, AGC, and noise control.Roxie Linden
Plumb audio settings through from webrtc to the sound preferences UI (still needs some tweaking, of course.) Also, choose stun servers based on grid. Ultimately, the stun stun servers will be passed up via login or something.
2024-03-22Add Tracy categories for WebRTC VoiceRoxie Linden
Also: * Fix a few crashes. * Only send position data when it changes.
2024-03-20Turn procesIceUpdates into a coroutine to chop up the work a bit.Roxie Linden
2024-03-19Clear out observers when terminating a connectionRoxie Linden
2024-03-19Simplify workqueue calls. Fix issue with webrtc blocking on destruction.Roxie Linden
2024-03-18Use LL::WorkQueue to handle transitions from llwebrtc threads to the main threadRoxie Linden
2024-03-14Refactor device selection logicRoxie Linden
This refactor fixed a few bugs. There is an annoying 'click' when changing devices, however. This will be addressed in the future.
2024-03-13some comments; allow proximal channel to retry when it dropsRoxie Linden
2024-03-10Remove trailing spaces. Other code cleanup.Roxie Linden
2024-03-09code beautification/commentsRoxie Linden
2024-03-05The response from the provision account call was being called twice for some ↵Roxie Linden
reason
2024-02-22Merge branch 'roxie/webrtc-voice' of github.com:secondlife/viewer-private ↵Roxie Linden
into roxie/webrtc-voice
2024-02-22coding cleanupRoxie Linden
2024-02-22another rebase merge issueRoxie Linden
2024-02-22fix rebase issueRoxie Linden
2024-02-22race between session established and data channel readyRoxie Linden
2024-02-22mac build fixRoxie Linden
2024-02-22put observer-based tuning audio level calculation backRoxie Linden
2024-02-22Use a custom audio processor to pull data for level determinations, which ↵Roxie Linden
will happen after AGC
2024-02-22Handle 'device changed' callbackRoxie Linden
2024-02-22fix locking race conditionRoxie Linden
2024-02-22New WebRTC with echo cancellation fix.Roxie Linden
Also, start/stop recording depending on whether WebRTC has negotiated.
2024-02-22Enable AECRoxie Linden
2024-02-22Touch up parcel voice enable/disable.Roxie Linden
2024-02-22Better renegotiation support for parcel voiceRoxie Linden
Better handle starting up and shutting down WebRTC connections simultaneously.
2024-02-22fix device selection (hopefully)Roxie Linden
2024-02-22Rework VU meter level processing to be closer to VivoxRoxie Linden
2024-02-22missed fileRoxie Linden
2024-02-22Mute using enable.Roxie Linden
Muting using the device module microphone mute was muting other applications, speakers, and so on. Instead, we mute by enabling/disabling the input and output streams.
2024-02-22Setting volume for remote stream needs to happen in signaling threadRoxie Linden
2024-02-22Using the device module to set speaker/mic volume set the system mic/volumeRoxie Linden
for all applications. Instead, modify the volume on the various streams.
2024-02-22Refactor/clean-up WebRTC voice to handle multiple voice streamsRoxie Linden
This is useful for cross-region voice, quick voice switching, etc.
2024-02-22Remove a bunch of unnecessary code.Roxie Linden
2024-02-22comment fixesRoxie Linden
2024-02-22SL-20543 - voice over region boundaries.Roxie Linden
This commit includes code to allow the llwebrtc.dll/dylib to allow multiple connections at once.
2024-02-22quicker turnaround on re-establishing voice when server goes down.Roxie Linden
2024-02-22add tcptype to tcp ice candidate stringsRoxie Linden
2024-02-22generate ice candidate with proper formattingRoxie Linden
2024-02-22Fix race in initialization. Fix failure to send ice candidates to janus.Roxie Linden