-
Node: Require expected calling message fields
-
Log notebook improvements
- Revert "Android: Increase max jitter buffer size" (from v2.25.0)
-
Adjustments to CallId, EraId, RingId and derivations/conversions
-
Group Calls: Limit bitrate for the lowest layer
-
Reference signalapp/webrtc@5481b
- VideoAdapter: Fix scaling of very large frames
- Log more info when video input starts
-
Reference signalapp/webrtc@5481a
- Set inactive timeout to 30s
- rffi: Set a bandwidth limit on the lowest layer of a group call
- Allow tcp candidates in group calls
-
Log notebook improvements
-
Build improvements
-
Node: Ensure that a frame is fully copied before sending it to WebRTC
-
Node: Clean up our eslint config, and fix uncovered issues
-
Log stats 2sec into a call, then every 10sec after
-
Build improvements
-
Update to WebRTC 5481 (m110)
-
Use default ptime for all bandwidth modes
-
Desktop: Add workaround for slow call to enumerateDevices
-
Update dependencies (Rust and Electron)
-
Allow SFU to return multiple ICE candidates (for IPv6 support)
-
Android: Add more devices to hardware encoding blocklist
-
Android: Increase max jitter buffer size
-
Desktop: Initialize call endpoint lazily
-
Desktop: Allow explicitly rejecting very tall or very wide frames
-
Add cpu statistics to logging
-
Reference signalapp/webrtc@5359d
- Improved logging around network switch
- Allow TURN ports to be pruned
-
CI: Add "Slow Tests" that will run once every night
-
Update dependencies, logging, build improvements
-
Desktop: Get TURN servers after call creation to improve glare handling
-
Desktop: Add test cases for glare handling
-
Desktop: Set a minimum frame rate for screenshare capture
-
Reference signalapp/webrtc@5359c
- Remove Android API 19 support
- Cleanup merge diffs
- Include candidate information for ICE route changes
- Allow any address ports to be disabled
-
Log when the selected ICE candidate pair changes
-
Add debuglogs notebook for analyzing logs
-
CI: Add builds and tests for all platforms
-
Build improvements
-
Support fetching prebuilds from build-artifacts.signal.org
-
Add support for setting WebRTC field trials
-
Android: Add support non-vendored NDK
-
Update logging, builds
-
Update to WebRTC 5359 (m108)
-
Enable Opus DTX and set default encoding bitrate to 32kbps
-
Desktop: Handle failure when entering PiP
-
Desktop: Move builds to NPM
-
Update dependencies, builds
-
Group Calls: Only allow ringing if you are the call creator
-
Electron: Add callId to the call ended notification function
-
Improve display of stats in logs
-
Update dependencies
-
Electron: Save debug information when building
-
Group Calls: Improve ring handling
-
Group Calls: Update group membership upon unknown media keys
-
Improve display of stats in logs
-
Update builds and documentation
-
Update Rust
- iOS: Add isValidOfferMessage and isValidOpaqueRing to the API
-
iOS: Allow WebRTC field trials to be set
-
Update dependencies, builds
-
Android: Fix possible crash from AndroidNetworkMonitor
-
Electron: Update dependencies (neon mainly)
-
Reference signalapp/webrtc@5005b
- Cherry-pick commits to fix issues
-
Group Calls: Expose
isHigherResolutionPending
to apps -
Android: Fix race when audio levels change early
-
iOS: Set deployment target to 12.2
-
Other logging improvements
-
Update to WebRTC 5005 (m102)
-
Allow clients to specify the active speaker's height
-
Reference signalapp/webrtc@5005a
- Add logging for audio device timing
- Reference signalapp/webrtc@4896g
- Windows: Support multi-channel output
-
Android: Remove audio level debug logging
-
Group Calls: Expose decoded video height to apps
-
Handle out-of-order IceCandidate and Hangup messages
-
Turn off backtraces to stderr by default
-
Group Calls: Prefer recently received group call rings
-
Reduce binary size by dropping unicode support from the regex crate
-
Enforce that errors are handled on background tokio runtimes
-
Update Android builds
- Update gradle dependencies
- Use
-C linker
instead of ndk toolchains
-
Add support for TURN over TLS
-
Android: Add echo likelihood to logs
-
Reference signalapp/webrtc@4896f
- Add support for TURN over TLS
- Enable echo detection
-
Update Rust
-
Update builds
- Group Calls: Enable audio recording properly
- Reference signalapp/webrtc@4896d
- Have one default port allocator flags instead of two
-
Reference signalapp/webrtc@4896c
- Remove bitrate multiplier
-
Electron: Add logging to video support
-
Log PeerConnection ICE gathering errors
-
Let rust core enable media (playback and recording), not clients
-
Prioritize VP9 and H.264 hardware codecs for 1:1 calls
-
Add more logging for checking connectivity and group call issues
-
Update parse_log.py utility for more debugging
-
Reference signalapp/webrtc@4896b
- Cherry-pick upstream fixes for network crash and iOS audio/logging
-
Update Android builds
- Fix a deadlock when calling set_network_route
-
Remove old video frames when re-enabling video
-
Use less bandwidth when using TURN relays
-
Improve support when developing on M1 chips
-
Avoid notifying remote ringing in case of accepted before connected
-
Process remote status events received before the call is accepted
-
Android: Allow local video recording to be started while ringing
-
Reference signalapp/webrtc@4896a
- Fix issue with opus frame length for AudioSendStream
-
Adjust logging
- iOS: Fix mapping of log output
-
Update to WebRTC 4896 (M100)
-
Disable transport-cc for audio
-
Add VP9 codec support and enable for Android hardware/Electron
-
Add state for ConnectingAfterAccepted to fix connect/accept race on caller's end
-
Group Calls: Fire peek changed events even if the call is empty
-
Reference signalapp/webrtc@4638j
- Reduce more noise from error/warning logs
-
Update dependencies, builds, and ci
-
Clean up "lite" interfaces
-
Add recall support
-
Fix typos
-
Add WebRTC error and warning logs to RingRTC logging
-
Reference signalapp/webrtc@4638i
- Reduce noise from error/warning logs
- Introduce a "lite" part of RingRTC
- Android: Add default enum for audio processing
-
Group Calls: Increase max send bitrate for large calls
-
Group Calls: Use v2 frontend api and remove notion of endpoint_id
-
Reference signalapp/webrtc@4638h
- Android: Add Aec3/AecM switch
- Windows: Workaround for multi-channel input
-
Android: Add aec switch and remove legacy default
-
Electron: Bubble up more DemuxIds
-
Update Rust and dependencies
-
Fix group call rate constant
-
iOS: Fix audio level api for group calls and tests
-
Update Audio Level API to specify desired interval
-
Electron: Use WebCodecs to capture and send video
-
Reference signalapp/webrtc@4638f
- Group Calls: Enable 3rd spatial layer for video
-
Update dependencies
- Electron: Revert new state and fix issue with prering ended handling
-
Electron: Fix incoming call notifications for better call history
-
Reference signalapp/webrtc@4638e
- Mac: Fix stereo playout bug
-
Update dependencies
- Add API to get the incoming and outgoing audio levels
-
Node: Optimize use of CanvasVideoRenderer.renderVideoFrame
-
Node: Update builds and logging
-
Group Calls: Leave via RTP instead of HTTP
-
Group Calls: Don't use DTLS
-
Group Calls: Increase default max receive rate
-
Android: Add audio processing options (to control AEC/NS)
-
Android: Improve JNI/Rust interfaces
-
Remove legacy Multi-Ring checks and hangup
-
Avoid handling RTP Data before accepted
-
Reference signalapp/webrtc@4638c
- Port crash fix
-
Don't terminate a 1:1 call because of transient RTP data error
-
Reference signalapp/webrtc@4638b
- Make it possible to share an APM between PeerConnections (ensures AEC/NS operation)
-
Desktop: Clear out the incoming video frame to avoid rendering old data
-
iOS: Delete the dSYMs out of the built xcframework
-
Update WebRTC to 4638 (M95)
-
Further improvements to WebRTC pointer management
-
Replace DataChannel with direct RTP data
-
Logging/Testing/Build improvements
- Use SetAudioPlayout() function for group calls
-
Improve how WebRTC pointer is tracked across FFI
-
Update Rust
-
Update dependencies
-
Update builds
-
Electron: Use Neon's Channel to avoid polling for events/logs
-
Desktop: Allow logger to be initialized multiple times
-
Enable the use of the SetAudioPlayout() function to start playout after accept
-
Reference signalapp/webrtc@4389k
- Initialize ADM playout before starting
-
iOS & Android: Pass PeerConnectionFactory down to Rust for group calls
-
Desktop: Fix an issue generating device lists on Windows
-
Add test client for group calls
-
Adjust some interfaces between RingRTC and WebRTC
-
Reference signalapp/webrtc@4389j
- Cleanup iOS interfaces
-
Desktop: Update local preview source object correctly
-
Android: Build Java against the same SDK/NDK that WebRTC uses
-
Desktop: Add support for auto-ended call timestamps
-
Desktop: Formatting and other updates
-
Android: Fix signature for new argument
-
Desktop: Option to use new or default audio device module on Windows
-
Reference signalapp/webrtc@4389i
- Support new Windows ADM
-
Desktop: Support glare scenarios
-
Request updated membership proof for group calls at least once a day
-
Request bitrate constraints for group calls according to BandwidthMode
-
Fix PeerConnectionFactory leaks
-
iOS: Remove dependency on PromiseKit
-
Android: Enable a Hardware AEC blocklist and fix a memory leak
-
Android: Native PeerConnectionFactory uses AndroidNetworkMonitor and JavaAudioDeviceModule
-
Enable ICE continual gathering
-
Add signaling for the removal of ICE candidates
-
Add notifications for network route changes
-
Adjust ringing timeout to 60 seconds
-
iOS: Fixes to address resource leaks
-
Reference signalapp/webrtc@4389h
- iOS: AudioSession adjustments for volume issues
-
Update builds and documentation
- Update Group Ringing feature
-
Add Group Ringing feature
-
Reference signalapp/webrtc@4389f
-
Remove DTLS and SDP
-
Group Calling: Reduce notifications for active speakers
-
Android: Modify NDK dependencies and use armv7 instead of arm
-
Update logging
-
iOS: Add support for building for Catalyst
-
iOS: Update builds
-
Update dependencies
-
Electron: Use Buffer everywhere we used to use ArrayBuffer
-
iOS: Update builds and tests to support M1 iOS simulator
-
Update to Rust nightly
- Screenshare: Allow screenshare without a camera
- Screenshare: Add optimizations
- Screenshare: Fix bandwidth for group call
- Screenshare: Fix sending of status
-
Screenshare: Fixes for legacy clients
-
Build Fixes: Support older Linux distros and other optimizations
-
Reference signalapp/webrtc@4389c
-
Add Screensharing feature
-
Electron: Support alternative target architectures
- Electron: Rebuild (no functional changes)
- Revert change for shared picture ID in WebRTC
-
Reference signalapp/webrtc@4389a
-
Update dependencies
-
Update builds and tests
-
Add statistics to monitor connection information
-
Reference signalapp/webrtc@4183l
-
Adjust logging and build issues
-
Electron: Update neon to use n-api runtime
-
CI optimizations and lint improvements
-
Electron: Update to version 11
-
Android: Add setOrientation() API
-
Update contributing readme
- Electron: Fix Windows build
-
Add very low bandwidth support for audio
-
Remove SCTP
-
Update documentation
- Android: Fix JNI out of memory issues for large groups
-
Android: Fix memory issues for Direct Calling
-
Electron: Fix issue where camera was not released
- iOS: Fix issue when ending a Group Call
- Group Calling: Fix issue with video resolution requests
-
Update Group Calling feature
-
Reference signalapp/webrtc@4183h
- Android: Improve stability for Group Calling
- Update Group Calling feature
- Update Group Calling feature
-
Update Group Calling feature
-
Android: Add more devices to hardware encoder blacklist
-
Reference signalapp/webrtc@4183g
- Electron: Fix video track setting
-
Add Group Calling feature
-
Reference signalapp/webrtc@4183f
-
Update Rust dependencies
-
Update builds and documentation
- Electron: Fix debug build
-
Refactor calling code (non-functional improvements)
-
Update opus codec settings
-
Update builds and documentation
- Electron: Expose more message types
-
Reference signalapp/webrtc@4183a
- Electron: Should prevent early microphone access
-
Electron: Do not stretch video if different resolution
-
Update Rust dependencies
-
Implement "V4" protocol with protobufs; deprecate SDP
-
Electron: Improve logging and handling of device selection
-
Reference signalapp/webrtc@4183
-
Implement "V3" protocol; deprecate DTLS
-
Fix offer-busy handling and support better glare experience
-
Electron: Fix issue when sending busy would end current call
- Electron: Mac minimum sdk and os set to 10.10
-
Electron: Improve device selection on Windows
-
Fix message queue issue
-
Disable processing of incoming RTP before incoming call is accepted
-
Electron: A/V device selection support
-
Implement low bandwidth mode support
- iOS: Update video support
- Reference signalapp/webrtc@4147d
- Fixes for release
-
Reference signalapp/webrtc@4147b
-
Implement data channel support over RTP; deprecate SCTP
-
Add audio statistics logging
-
Minor fixes and improvements
-
Fix for call request support
-
Fix to ensure hangups sent
-
Reference signalapp/webrtc@4103
-
Add support for call request permissions
-
Reference signalapp/webrtc@4044g
-
iOS: Remove 32-bit support, require 11.0 target
- Reference signalapp/webrtc@4044f
-
Implement native interface
-
Reference signalapp/webrtc@4044e
-
Minor API improvements (call, proceed, receivedOffer)
- Android: Use video sink for remote video stream
- Reference signalapp/webrtc@4044d
-
Reference signalapp/webrtc@4044c
- Fixes a call forking bug
- Improves connectivity using PORTALLOCATOR_ENABLE_ANY_ADDRESS_PORTS
- Cherry picked updates from WebRTC
-
Disable TURN port pruning
-
Fix glare handling before connection
-
Add Multi-Ring feature
-
Android: Fix video encoder crash on some devices
-
Update build documentation
-
Update Rust dependencies
- Fix issue preventing some calls from ringing
-
Update build documentation
-
Reference signalapp/webrtc@4044
-
Move to vendored WebRTC at signalapp/webrtc
-
Reference signalapp/webrtc@3987, includes cherry picked updates from WebRTC 4044
-
Disable unused audio codecs and RTP header extensions
-
Adjust settings and logging
-
iOS: Minor optimizations
- Cherry pick updates from WebRTC 4044
- Android: improve logging
- Add Call Manager component
-
Update WebRTC to 3987
-
Update Rust dependencies
-
iOS: build system improvements
- iOS: Fix iOS 13 issue with camera capture
- Android: Filter list of cameras when switching cameras
-
Update WebRTC to m79
-
Android: Improve WebRTC debug logging
-
Improve logging on Android
-
Build system improvements
- Make termination a two-phase close and dispose operation
-
Improve logging on Android
-
Patch WebRTC M78 for AudioRecord regression
-
Add integration tests
-
Build system fixes and clean up
- Android: Use an application supplied logging object
-
Update WebRTC to m78
-
Add integration tests
-
Build system fixes and clean up
-
Update Makefile targets for 'clean' and 'distclean'
-
Simplify the IceReconnecting logic
-
Remove non-critical DataChannel error callbacks
- Add IceReconnectingState
-
iOS Support
-
Update WebRTC to m77
-
Initial Release
-
Based on WebRTC release m76