OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 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 #ifndef WEBRTC_CALL_CALL_H_ | 10 #ifndef WEBRTC_CALL_CALL_H_ |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "webrtc/call/flexfec_receive_stream.h" | 23 #include "webrtc/call/flexfec_receive_stream.h" |
24 #include "webrtc/call/rtp_transport_controller_send_interface.h" | 24 #include "webrtc/call/rtp_transport_controller_send_interface.h" |
25 #include "webrtc/common_types.h" | 25 #include "webrtc/common_types.h" |
26 #include "webrtc/video_receive_stream.h" | 26 #include "webrtc/video_receive_stream.h" |
27 #include "webrtc/video_send_stream.h" | 27 #include "webrtc/video_send_stream.h" |
28 | 28 |
29 namespace webrtc { | 29 namespace webrtc { |
30 | 30 |
31 class AudioProcessing; | 31 class AudioProcessing; |
32 class RtcEventLog; | 32 class RtcEventLog; |
| 33 class RtpTransportControllerSendInterface; |
| 34 class SendSideCongestionController; |
33 | 35 |
34 enum class MediaType { | 36 enum class MediaType { |
35 ANY, | 37 ANY, |
36 AUDIO, | 38 AUDIO, |
37 VIDEO, | 39 VIDEO, |
38 DATA | 40 DATA |
39 }; | 41 }; |
40 | 42 |
41 class PacketReceiver { | 43 class PacketReceiver { |
42 public: | 44 public: |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 // TODO(solenberg): Change this to a shared_ptr once we can use C++11. | 81 // TODO(solenberg): Change this to a shared_ptr once we can use C++11. |
80 rtc::scoped_refptr<AudioState> audio_state; | 82 rtc::scoped_refptr<AudioState> audio_state; |
81 | 83 |
82 // Audio Processing Module to be used in this call. | 84 // Audio Processing Module to be used in this call. |
83 // TODO(solenberg): Change this to a shared_ptr once we can use C++11. | 85 // TODO(solenberg): Change this to a shared_ptr once we can use C++11. |
84 AudioProcessing* audio_processing = nullptr; | 86 AudioProcessing* audio_processing = nullptr; |
85 | 87 |
86 // RtcEventLog to use for this call. Required. | 88 // RtcEventLog to use for this call. Required. |
87 // Use webrtc::RtcEventLog::CreateNull() for a null implementation. | 89 // Use webrtc::RtcEventLog::CreateNull() for a null implementation. |
88 RtcEventLog* event_log = nullptr; | 90 RtcEventLog* event_log = nullptr; |
| 91 |
| 92 RtpTransportControllerSendInterface* audio_rtp_transport_send = nullptr; |
| 93 RtpTransportControllerSendInterface* video_rtp_transport_send = nullptr; |
| 94 // Even if we have separate transports (unbundled case), we can have only |
| 95 // one congestion controller. |
| 96 SendSideCongestionController* send_side_cc = nullptr; |
89 }; | 97 }; |
90 | 98 |
91 struct Stats { | 99 struct Stats { |
92 std::string ToString(int64_t time_ms) const; | 100 std::string ToString(int64_t time_ms) const; |
93 | 101 |
94 int send_bandwidth_bps = 0; // Estimated available send bandwidth. | 102 int send_bandwidth_bps = 0; // Estimated available send bandwidth. |
95 int max_padding_bitrate_bps = 0; // Cumulative configured max padding. | 103 int max_padding_bitrate_bps = 0; // Cumulative configured max padding. |
96 int recv_bandwidth_bps = 0; // Estimated available receive bandwidth. | 104 int recv_bandwidth_bps = 0; // Estimated available receive bandwidth. |
97 int64_t pacer_delay_ms = 0; | 105 int64_t pacer_delay_ms = 0; |
98 int64_t rtt_ms = -1; | 106 int64_t rtt_ms = -1; |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 const rtc::NetworkRoute& network_route) = 0; | 172 const rtc::NetworkRoute& network_route) = 0; |
165 | 173 |
166 virtual void OnSentPacket(const rtc::SentPacket& sent_packet) = 0; | 174 virtual void OnSentPacket(const rtc::SentPacket& sent_packet) = 0; |
167 | 175 |
168 virtual ~Call() {} | 176 virtual ~Call() {} |
169 }; | 177 }; |
170 | 178 |
171 } // namespace webrtc | 179 } // namespace webrtc |
172 | 180 |
173 #endif // WEBRTC_CALL_CALL_H_ | 181 #endif // WEBRTC_CALL_CALL_H_ |
OLD | NEW |