Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(273)

Side by Side Diff: webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy.h

Issue 2157843002: Fix crash which happens when there's reordering in the beginning of a call. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Addressed comment. Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 void SetMinBitrate(int min_bitrate_bps) override {} 47 void SetMinBitrate(int min_bitrate_bps) override {}
48 int64_t TimeUntilNextProcess() override; 48 int64_t TimeUntilNextProcess() override;
49 void Process() override; 49 void Process() override;
50 50
51 static const int kDefaultProcessIntervalMs; 51 static const int kDefaultProcessIntervalMs;
52 static const int kBackWindowMs; 52 static const int kBackWindowMs;
53 53
54 private: 54 private:
55 void OnPacketArrival(uint16_t sequence_number, int64_t arrival_time) 55 void OnPacketArrival(uint16_t sequence_number, int64_t arrival_time)
56 EXCLUSIVE_LOCKS_REQUIRED(&lock_); 56 EXCLUSIVE_LOCKS_REQUIRED(&lock_);
57 bool BuildFeedbackPacket(rtcp::TransportFeedback* feedback_packetket); 57 bool BuildFeedbackPacket(rtcp::TransportFeedback* feedback_packet);
58 58
59 Clock* const clock_; 59 Clock* const clock_;
60 PacketRouter* const packet_router_; 60 PacketRouter* const packet_router_;
61 int64_t last_process_time_ms_; 61 int64_t last_process_time_ms_;
62 62
63 rtc::CriticalSection lock_; 63 rtc::CriticalSection lock_;
64 64
65 uint32_t media_ssrc_ GUARDED_BY(&lock_); 65 uint32_t media_ssrc_ GUARDED_BY(&lock_);
66 uint8_t feedback_sequence_ GUARDED_BY(&lock_); 66 uint8_t feedback_sequence_ GUARDED_BY(&lock_);
67 SequenceNumberUnwrapper unwrapper_ GUARDED_BY(&lock_); 67 SequenceNumberUnwrapper unwrapper_ GUARDED_BY(&lock_);
68 int64_t window_start_seq_ GUARDED_BY(&lock_); 68 int64_t window_start_seq_ GUARDED_BY(&lock_);
69 // Map unwrapped seq -> time. 69 // Map unwrapped seq -> time.
70 std::map<int64_t, int64_t> packet_arrival_times_ GUARDED_BY(&lock_); 70 std::map<int64_t, int64_t> packet_arrival_times_ GUARDED_BY(&lock_);
71 }; 71 };
72 72
73 } // namespace webrtc 73 } // namespace webrtc
74 74
75 #endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_REMOTE_ESTIMATOR_PROXY_H_ 75 #endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_REMOTE_ESTIMATOR_PROXY_H_
OLDNEW
« no previous file with comments | « no previous file | webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698