OLD | NEW |
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 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 void SetSSRC(uint32_t ssrc); | 99 void SetSSRC(uint32_t ssrc); |
100 | 100 |
101 void SetRemoteSSRC(uint32_t ssrc); | 101 void SetRemoteSSRC(uint32_t ssrc); |
102 | 102 |
103 int32_t SetCNAME(const char* cName); | 103 int32_t SetCNAME(const char* cName); |
104 | 104 |
105 int32_t AddMixedCNAME(uint32_t SSRC, const char* c_name); | 105 int32_t AddMixedCNAME(uint32_t SSRC, const char* c_name); |
106 | 106 |
107 int32_t RemoveMixedCNAME(uint32_t SSRC); | 107 int32_t RemoveMixedCNAME(uint32_t SSRC); |
108 | 108 |
109 int64_t SendTimeOfSendReport(uint32_t sendReport); | |
110 | |
111 bool SendTimeOfXrRrReport(uint32_t mid_ntp, int64_t* time_ms) const; | |
112 | |
113 bool TimeToSendRTCPReport(bool sendKeyframeBeforeRTP = false) const; | 109 bool TimeToSendRTCPReport(bool sendKeyframeBeforeRTP = false) const; |
114 | 110 |
115 int32_t SendRTCP(const FeedbackState& feedback_state, | 111 int32_t SendRTCP(const FeedbackState& feedback_state, |
116 RTCPPacketType packetType, | 112 RTCPPacketType packetType, |
117 int32_t nackSize = 0, | 113 int32_t nackSize = 0, |
118 const uint16_t* nackList = 0, | 114 const uint16_t* nackList = 0, |
119 bool repeat = false, | 115 bool repeat = false, |
120 uint64_t pictureID = 0); | 116 uint64_t pictureID = 0); |
121 | 117 |
122 int32_t SendCompoundRTCP(const FeedbackState& feedback_state, | 118 int32_t SendCompoundRTCP(const FeedbackState& feedback_state, |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
224 uint32_t remote_ssrc_ GUARDED_BY(critical_section_rtcp_sender_); | 220 uint32_t remote_ssrc_ GUARDED_BY(critical_section_rtcp_sender_); |
225 std::string cname_ GUARDED_BY(critical_section_rtcp_sender_); | 221 std::string cname_ GUARDED_BY(critical_section_rtcp_sender_); |
226 | 222 |
227 ReceiveStatistics* receive_statistics_ | 223 ReceiveStatistics* receive_statistics_ |
228 GUARDED_BY(critical_section_rtcp_sender_); | 224 GUARDED_BY(critical_section_rtcp_sender_); |
229 std::map<uint32_t, rtcp::ReportBlock> report_blocks_ | 225 std::map<uint32_t, rtcp::ReportBlock> report_blocks_ |
230 GUARDED_BY(critical_section_rtcp_sender_); | 226 GUARDED_BY(critical_section_rtcp_sender_); |
231 std::map<uint32_t, std::string> csrc_cnames_ | 227 std::map<uint32_t, std::string> csrc_cnames_ |
232 GUARDED_BY(critical_section_rtcp_sender_); | 228 GUARDED_BY(critical_section_rtcp_sender_); |
233 | 229 |
234 // Sent | |
235 uint32_t last_send_report_[RTCP_NUMBER_OF_SR] GUARDED_BY( | |
236 critical_section_rtcp_sender_); // allow packet loss and RTT above 1 sec | |
237 int64_t last_rtcp_time_[RTCP_NUMBER_OF_SR] GUARDED_BY( | |
238 critical_section_rtcp_sender_); | |
239 | |
240 // Sent XR receiver reference time report. | |
241 // <mid ntp (mid 32 bits of the 64 bits NTP timestamp), send time in ms>. | |
242 std::map<uint32_t, int64_t> last_xr_rr_ | |
243 GUARDED_BY(critical_section_rtcp_sender_); | |
244 | |
245 // send CSRCs | 230 // send CSRCs |
246 std::vector<uint32_t> csrcs_ GUARDED_BY(critical_section_rtcp_sender_); | 231 std::vector<uint32_t> csrcs_ GUARDED_BY(critical_section_rtcp_sender_); |
247 | 232 |
248 // Full intra request | 233 // Full intra request |
249 uint8_t sequence_number_fir_ GUARDED_BY(critical_section_rtcp_sender_); | 234 uint8_t sequence_number_fir_ GUARDED_BY(critical_section_rtcp_sender_); |
250 | 235 |
251 // REMB | 236 // REMB |
252 uint32_t remb_bitrate_ GUARDED_BY(critical_section_rtcp_sender_); | 237 uint32_t remb_bitrate_ GUARDED_BY(critical_section_rtcp_sender_); |
253 std::vector<uint32_t> remb_ssrcs_ GUARDED_BY(critical_section_rtcp_sender_); | 238 std::vector<uint32_t> remb_ssrcs_ GUARDED_BY(critical_section_rtcp_sender_); |
254 | 239 |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
299 | 284 |
300 typedef rtc::scoped_ptr<rtcp::RtcpPacket> (RTCPSender::*BuilderFunc)( | 285 typedef rtc::scoped_ptr<rtcp::RtcpPacket> (RTCPSender::*BuilderFunc)( |
301 const RtcpContext&); | 286 const RtcpContext&); |
302 std::map<RTCPPacketType, BuilderFunc> builders_; | 287 std::map<RTCPPacketType, BuilderFunc> builders_; |
303 | 288 |
304 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(RTCPSender); | 289 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(RTCPSender); |
305 }; | 290 }; |
306 } // namespace webrtc | 291 } // namespace webrtc |
307 | 292 |
308 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_SENDER_H_ | 293 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_SENDER_H_ |
OLD | NEW |