commit | 1050fbca91e7685e42cf97d3fa11cf6beac96eb7 | [log] [tgz] |
---|---|---|
author | Tommi <tommi@webrtc.org> | Thu Jun 03 15:58:28 2021 |
committer | WebRTC LUCI CQ <webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu Jun 03 19:13:45 2021 |
tree | e4026372136bf3ac03d7f5d85921d12079473220 | |
parent | c2b4d9be15efed77a95d91296fe86569a8503f1f [diff] |
Remove synchronization from VideoSendStream construction. * Make VideoSendStream and VideoSendStreamImpl construction non-blocking. * Move ownership of the rtp video sender to VideoSendStream. * Most state is constructed in initializer lists. * More state is now const (including VideoSendStreamImpl ptr) * Adding thread checks to classes that appear to have had a race before E.g. RtpTransportControllerSend. The change in threading now actually fixes an issue we weren't aware of. * Moved from using weak_ptr to safety flag and made some PostTask calls cancellable that could potentially have been problematic. Initalizing the flag without thread synchronization is also simpler. This should speed up renegotiation significantly when there are multiple channels. A follow-up change will improve SetSend as well which is another costly step during renegotiation. Bug: webrtc:12840 Change-Id: If4b28da5a085643ce132c7cfcf80a62cd1a625c5 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/221105 Commit-Queue: Tommi <tommi@webrtc.org> Reviewed-by: Markus Handell <handellm@webrtc.org> Cr-Commit-Position: refs/heads/master@{#34224}
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.
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.