Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-07-31 | Implement a Logging Sink for WebRTC | Roxie Linden | |
WebRTC logs now pass out of the webrtc library into a logging sink, which converts them into SecondLife.log compatable logging calls. This includes fatal errors and asserts, which are now logged into SecondLife.log, and should be available in the crash logger. | |||
2024-07-29 | Fix trailing whitespaces in webrtc code to pass pre-commit | Andrey Lihatskiy | |
2024-06-24 | [WebRTC] control microphone gain via custom audio processor. | Roxie Linden | |
Previously, there were two places audio gain could be controlled: - the device manager - the audio track The device manager audio gain control sets the system gain for all applications, not just the webrtc application. The audio track gain happens well after the audio processing where we want it to happen. So, gain control was added to the existing custom audio processor, which previously only handled calculating and retrieving the audio levels. After these changes, the microphone gain slider does impact the audio volume heard by peers. | |||
2024-05-19 | Get rid of a deprecated warning in Linux builds | Roxie Linden | |
2024-05-19 | More session shutdown cleanup | Roxie Linden | |
2024-05-17 | Clean up some shutdown code. | Roxie Linden | |
2024-05-16 | Race condition resulted in close causing removal of peer connection while ↵ | Roxie Linden | |
other jobs might be using it. | |||
2024-05-02 | Unregister 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-28 | Don't default the tracks to unmuted | Roxie Linden | |
2024-04-28 | Reconnects to the voice server weren't happening. | Roxie Linden | |
2024-04-21 | Reconnect 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-07 | CR suggestions | Roxie Linden | |
2024-04-07 | Show 'decline' when peer declines p2p voice | Roxie 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-01 | oopse | Roxie Linden | |
2024-04-01 | Fix "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-30 | Fix windows crashes | Roxie 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-30 | Merge branch 'roxie/webrtc-voice' of https://github.com/secondlife/viewer ↵ | Roxie Linden | |
into roxie/webrtc-voice | |||
2024-03-30 | Renegotiate on remote description error | Roxie Linden | |
2024-03-30 | Add 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-22 | Add Tracy categories for WebRTC Voice | Roxie Linden | |
Also: * Fix a few crashes. * Only send position data when it changes. | |||
2024-03-20 | Turn procesIceUpdates into a coroutine to chop up the work a bit. | Roxie Linden | |
2024-03-19 | Clear out observers when terminating a connection | Roxie Linden | |
2024-03-19 | Simplify workqueue calls. Fix issue with webrtc blocking on destruction. | Roxie Linden | |
2024-03-18 | Use LL::WorkQueue to handle transitions from llwebrtc threads to the main thread | Roxie Linden | |
2024-03-14 | Refactor device selection logic | Roxie 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-13 | some comments; allow proximal channel to retry when it drops | Roxie Linden | |
2024-03-10 | Remove trailing spaces. Other code cleanup. | Roxie Linden | |
2024-03-09 | code beautification/comments | Roxie Linden | |
2024-03-05 | The response from the provision account call was being called twice for some ↵ | Roxie Linden | |
reason | |||
2024-02-22 | Merge branch 'roxie/webrtc-voice' of github.com:secondlife/viewer-private ↵ | Roxie Linden | |
into roxie/webrtc-voice | |||
2024-02-22 | coding cleanup | Roxie Linden | |
2024-02-22 | another rebase merge issue | Roxie Linden | |
2024-02-22 | fix rebase issue | Roxie Linden | |
2024-02-22 | race between session established and data channel ready | Roxie Linden | |
2024-02-22 | mac build fix | Roxie Linden | |
2024-02-22 | put observer-based tuning audio level calculation back | Roxie Linden | |
2024-02-22 | Use a custom audio processor to pull data for level determinations, which ↵ | Roxie Linden | |
will happen after AGC | |||
2024-02-22 | Handle 'device changed' callback | Roxie Linden | |
2024-02-22 | fix locking race condition | Roxie Linden | |
2024-02-22 | New WebRTC with echo cancellation fix. | Roxie Linden | |
Also, start/stop recording depending on whether WebRTC has negotiated. | |||
2024-02-22 | Enable AEC | Roxie Linden | |
2024-02-22 | Touch up parcel voice enable/disable. | Roxie Linden | |
2024-02-22 | Better renegotiation support for parcel voice | Roxie Linden | |
Better handle starting up and shutting down WebRTC connections simultaneously. | |||
2024-02-22 | fix device selection (hopefully) | Roxie Linden | |
2024-02-22 | Rework VU meter level processing to be closer to Vivox | Roxie Linden | |
2024-02-22 | missed file | Roxie Linden | |
2024-02-22 | Mute 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-22 | Setting volume for remote stream needs to happen in signaling thread | Roxie Linden | |
2024-02-22 | Using the device module to set speaker/mic volume set the system mic/volume | Roxie Linden | |
for all applications. Instead, modify the volume on the various streams. | |||
2024-02-22 | Refactor/clean-up WebRTC voice to handle multiple voice streams | Roxie Linden | |
This is useful for cross-region voice, quick voice switching, etc. |