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

Side by Side Diff: webrtc/modules/rtp_rtcp/source/rtcp_sender.h

Issue 1571283002: Fixes a bug which incorrectly logs incoming RTCP as outgoing. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 11 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
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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 17 matching lines...) Expand all
28 #include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h" 28 #include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h"
29 #include "webrtc/modules/rtp_rtcp/source/rtp_utility.h" 29 #include "webrtc/modules/rtp_rtcp/source/rtp_utility.h"
30 #include "webrtc/modules/rtp_rtcp/source/tmmbr_help.h" 30 #include "webrtc/modules/rtp_rtcp/source/tmmbr_help.h"
31 #include "webrtc/transport.h" 31 #include "webrtc/transport.h"
32 #include "webrtc/typedefs.h" 32 #include "webrtc/typedefs.h"
33 33
34 namespace webrtc { 34 namespace webrtc {
35 35
36 class ModuleRtpRtcpImpl; 36 class ModuleRtpRtcpImpl;
37 class RTCPReceiver; 37 class RTCPReceiver;
38 class RtcEventLog;
38 39
39 class NACKStringBuilder { 40 class NACKStringBuilder {
40 public: 41 public:
41 NACKStringBuilder(); 42 NACKStringBuilder();
42 ~NACKStringBuilder(); 43 ~NACKStringBuilder();
43 44
44 void PushNACK(uint16_t nack); 45 void PushNACK(uint16_t nack);
45 std::string GetResult(); 46 std::string GetResult();
46 47
47 private: 48 private:
(...skipping 22 matching lines...) Expand all
70 RtcpReceiveTimeInfo last_xr_rr; 71 RtcpReceiveTimeInfo last_xr_rr;
71 72
72 // Used when generating TMMBR. 73 // Used when generating TMMBR.
73 ModuleRtpRtcpImpl* module; 74 ModuleRtpRtcpImpl* module;
74 }; 75 };
75 76
76 RTCPSender(bool audio, 77 RTCPSender(bool audio,
77 Clock* clock, 78 Clock* clock,
78 ReceiveStatistics* receive_statistics, 79 ReceiveStatistics* receive_statistics,
79 RtcpPacketTypeCounterObserver* packet_type_counter_observer, 80 RtcpPacketTypeCounterObserver* packet_type_counter_observer,
81 RtcEventLog* event_log,
80 Transport* outgoing_transport); 82 Transport* outgoing_transport);
81 virtual ~RTCPSender(); 83 virtual ~RTCPSender();
82 84
83 RtcpMode Status() const; 85 RtcpMode Status() const;
84 void SetRTCPStatus(RtcpMode method); 86 void SetRTCPStatus(RtcpMode method);
85 87
86 bool Sending() const; 88 bool Sending() const;
87 int32_t SetSendingStatus(const FeedbackState& feedback_state, 89 int32_t SetSendingStatus(const FeedbackState& feedback_state,
88 bool enabled); // combine the functions 90 bool enabled); // combine the functions
89 91
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_); 198 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_);
197 rtc::scoped_ptr<rtcp::RtcpPacket> BuildDlrr(const RtcpContext& context) 199 rtc::scoped_ptr<rtcp::RtcpPacket> BuildDlrr(const RtcpContext& context)
198 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_); 200 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_);
199 201
200 private: 202 private:
201 const bool audio_; 203 const bool audio_;
202 Clock* const clock_; 204 Clock* const clock_;
203 Random random_ GUARDED_BY(critical_section_rtcp_sender_); 205 Random random_ GUARDED_BY(critical_section_rtcp_sender_);
204 RtcpMode method_ GUARDED_BY(critical_section_rtcp_sender_); 206 RtcpMode method_ GUARDED_BY(critical_section_rtcp_sender_);
205 207
208 RtcEventLog* event_log_;
the sun 2016/01/11 12:36:16 RtcEventLog* const event_log_ = nullptr;
terelius 2016/01/11 15:04:03 Added RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(RTCPSende
206 Transport* const transport_; 209 Transport* const transport_;
207 210
208 rtc::scoped_ptr<CriticalSectionWrapper> critical_section_rtcp_sender_; 211 rtc::scoped_ptr<CriticalSectionWrapper> critical_section_rtcp_sender_;
209 bool using_nack_ GUARDED_BY(critical_section_rtcp_sender_); 212 bool using_nack_ GUARDED_BY(critical_section_rtcp_sender_);
210 bool sending_ GUARDED_BY(critical_section_rtcp_sender_); 213 bool sending_ GUARDED_BY(critical_section_rtcp_sender_);
211 bool remb_enabled_ GUARDED_BY(critical_section_rtcp_sender_); 214 bool remb_enabled_ GUARDED_BY(critical_section_rtcp_sender_);
212 215
213 int64_t next_time_to_send_rtcp_ GUARDED_BY(critical_section_rtcp_sender_); 216 int64_t next_time_to_send_rtcp_ GUARDED_BY(critical_section_rtcp_sender_);
214 217
215 uint32_t start_timestamp_ GUARDED_BY(critical_section_rtcp_sender_); 218 uint32_t start_timestamp_ GUARDED_BY(critical_section_rtcp_sender_);
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 296
294 std::set<ReportFlag> report_flags_ GUARDED_BY(critical_section_rtcp_sender_); 297 std::set<ReportFlag> report_flags_ GUARDED_BY(critical_section_rtcp_sender_);
295 298
296 typedef rtc::scoped_ptr<rtcp::RtcpPacket> (RTCPSender::*BuilderFunc)( 299 typedef rtc::scoped_ptr<rtcp::RtcpPacket> (RTCPSender::*BuilderFunc)(
297 const RtcpContext&); 300 const RtcpContext&);
298 std::map<RTCPPacketType, BuilderFunc> builders_; 301 std::map<RTCPPacketType, BuilderFunc> builders_;
299 }; 302 };
300 } // namespace webrtc 303 } // namespace webrtc
301 304
302 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_SENDER_H_ 305 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_SENDER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698