commit | fbf3bce431000fcc315d91602c8d8660ed03dae3 | [log] [tgz] |
---|---|---|
author | Tommi <tommi@webrtc.org> | Wed Feb 21 15:56:05 2018 +0100 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Feb 22 18:03:45 2018 +0000 |
tree | ba798a7ce234bb9d889212cf8e208e340ea13739 | |
parent | ee52562e32e11851653f188ca3f00860131db3a3 [diff] |
Reland "Reduce locking in VideoReceiver and check the threading model." This is a reland of c75f1e45093a8d5cc62937c7708b87aa5c5bf0b0. Original change's description: > Reduce locking in VideoReceiver and check the threading model. > > Note: This is a subset of code that was previously reviewed here: > - https://codereview.webrtc.org/2764573002/ > > * Added two notification methods, DecoderThreadStarting() and DecoderThreadStopped() > * Allows us to establish a period when the decoder thread is not running and it is > safe to modify variables such as callbacks, that are only read when the decoder > thread is running. > * Allows us to DCHECK thread guarantees/correctness. > * Allows synchronizing callbacks from the module process thread and have them only > active while the decoder thread is running. > * The above, allows us to establish two modes for the thread, > single-threaded-mutable and multi-threaded-const. > * Using that knowledge, we can remove |receive_crit_| as well as locking for a > number of member variables. > * Removed |VCMFrameBuffer _frameFromFile| (unused). > * Clean up several of my TODOs > > Bug: webrtc:7361, chromium:695438 > Change-Id: Id0048ee9624f76103c088d02825eb5c0d6c8913c > Reviewed-on: https://webrtc-review.googlesource.com/55000 > Commit-Queue: Tommi <tommi@webrtc.org> > Reviewed-by: Philip Eliasson <philipel@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#22133} Bug: webrtc:7361, chromium:695438 Change-Id: I32e1dc6c62cb30ad96e6366106f39fe415de49f1 Tbr: philipel@webrtc.org Reviewed-on: https://webrtc-review.googlesource.com/56803 Commit-Queue: Tommi <tommi@webrtc.org> Reviewed-by: Tommi <tommi@webrtc.org> Cr-Commit-Position: refs/heads/master@{#22163}
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 http://www.webrtc.org/native-code/development for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.