To reduce latency when delivering messages on channel with low traffic volume and with packet loss, where retransmissions are not driven by fast retransmit but by T3-RTX timer, set the I-SACK bit (RFC7053) when the congestion window is low. Note that RFC7053 doesn't have to be negotiated, as is explained in https://www.rfc-editor.org/rfc/rfc7053.html#section-6, and if the receiver doesn't support it, it will delay SACKs as is done today. When T3-RTX fires, the congestion window will be set to one MTU and any future sent message will only send one MTU's worth of data before waiting for the receiver's SACK until more data is sent. Delayed SACK, which is normally used, could delay the next packet from being sent unecessarily long. Setting I-SACK when the congestion window is small will make the receiver always send a SACK for every received packet with a DATA chunk in it. By not setting it always, it will not affect the packet rate when the channel is fully utilized. This modification improves latency in the aforementioned situations without significantly affecting bandwidth. While this change increases SACK frequency in specific scenarios, the impact on overall network load is expected to be minimal. Bug: webrtc:396080535 Change-Id: If4a5aa960969f1385c9ea59baa7e2d52caf25626 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/377140 Commit-Queue: Victor Boivie <boivie@webrtc.org> Reviewed-by: Harald Alvestrand <hta@webrtc.org> Cr-Commit-Position: refs/heads/main@{#43897}
…
…
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.
Development
See here for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.
More info
- Official web site: http://www.webrtc.org
- Master source code repo: https://webrtc.googlesource.com/src
- Samples and reference apps: https://github.com/webrtc
- Mailing list: http://groups.google.com/group/discuss-webrtc
- Continuous build: https://ci.chromium.org/p/webrtc/g/ci/console
- Coding style guide
- Code of conduct
- Reporting bugs
- Documentation
Description
The idea is to make CMake build for WebRTC m130 version - for audio processing module
Languages
C++
90.3%
Java
2.9%
C
2.2%
Objective-C++
2%
Python
1.3%
Other
1%