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 |
11 #ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ | 11 #ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ |
12 #define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ | 12 #define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ |
13 | 13 |
14 #include <set> | 14 #include <set> |
15 #include <utility> | 15 #include <utility> |
16 #include <vector> | 16 #include <vector> |
17 | 17 |
18 #include "webrtc/base/criticalsection.h" | 18 #include "webrtc/base/criticalsection.h" |
19 #include "webrtc/base/gtest_prod_util.h" | 19 #include "webrtc/base/gtest_prod_util.h" |
| 20 #include "webrtc/base/optional.h" |
20 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h" | 21 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h" |
21 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h" | 22 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h" |
22 #include "webrtc/modules/rtp_rtcp/source/packet_loss_stats.h" | 23 #include "webrtc/modules/rtp_rtcp/source/packet_loss_stats.h" |
23 #include "webrtc/modules/rtp_rtcp/source/rtcp_receiver.h" | 24 #include "webrtc/modules/rtp_rtcp/source/rtcp_receiver.h" |
24 #include "webrtc/modules/rtp_rtcp/source/rtcp_sender.h" | 25 #include "webrtc/modules/rtp_rtcp/source/rtcp_sender.h" |
25 #include "webrtc/modules/rtp_rtcp/source/rtp_sender.h" | 26 #include "webrtc/modules/rtp_rtcp/source/rtp_sender.h" |
26 | 27 |
27 namespace webrtc { | 28 namespace webrtc { |
28 | 29 |
29 class ModuleRtpRtcpImpl : public RtpRtcp, public RTCPReceiver::ModuleRtpRtcp { | 30 class ModuleRtpRtcpImpl : public RtpRtcp, public RTCPReceiver::ModuleRtpRtcp { |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 RTCPSender::FeedbackState GetFeedbackState(); | 91 RTCPSender::FeedbackState GetFeedbackState(); |
91 | 92 |
92 void SetRtxSendStatus(int mode) override; | 93 void SetRtxSendStatus(int mode) override; |
93 int RtxSendStatus() const override; | 94 int RtxSendStatus() const override; |
94 | 95 |
95 void SetRtxSsrc(uint32_t ssrc) override; | 96 void SetRtxSsrc(uint32_t ssrc) override; |
96 | 97 |
97 void SetRtxSendPayloadType(int payload_type, | 98 void SetRtxSendPayloadType(int payload_type, |
98 int associated_payload_type) override; | 99 int associated_payload_type) override; |
99 | 100 |
| 101 rtc::Optional<uint32_t> FlexfecSsrc() const override; |
| 102 |
100 // Sends kRtcpByeCode when going from true to false. | 103 // Sends kRtcpByeCode when going from true to false. |
101 int32_t SetSendingStatus(bool sending) override; | 104 int32_t SetSendingStatus(bool sending) override; |
102 | 105 |
103 bool Sending() const override; | 106 bool Sending() const override; |
104 | 107 |
105 // Drops or relays media packets. | 108 // Drops or relays media packets. |
106 void SetSendingMediaStatus(bool sending) override; | 109 void SetSendingMediaStatus(bool sending) override; |
107 | 110 |
108 bool SendingMedia() const override; | 111 bool SendingMedia() const override; |
109 | 112 |
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
353 PacketLossStats receive_loss_stats_; | 356 PacketLossStats receive_loss_stats_; |
354 | 357 |
355 // The processed RTT from RtcpRttStats. | 358 // The processed RTT from RtcpRttStats. |
356 rtc::CriticalSection critical_section_rtt_; | 359 rtc::CriticalSection critical_section_rtt_; |
357 int64_t rtt_ms_; | 360 int64_t rtt_ms_; |
358 }; | 361 }; |
359 | 362 |
360 } // namespace webrtc | 363 } // namespace webrtc |
361 | 364 |
362 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ | 365 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ |
OLD | NEW |