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 #include "webrtc/test/direct_transport.h" | 10 #include "webrtc/test/direct_transport.h" |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 bool DirectTransport::SendRtcp(const uint8_t* data, size_t length) { | 117 bool DirectTransport::SendRtcp(const uint8_t* data, size_t length) { |
118 fake_network_.SendPacket(data, length); | 118 fake_network_.SendPacket(data, length); |
119 return true; | 119 return true; |
120 } | 120 } |
121 | 121 |
122 int DirectTransport::GetAverageDelayMs() { | 122 int DirectTransport::GetAverageDelayMs() { |
123 return fake_network_.AverageDelay(); | 123 return fake_network_.AverageDelay(); |
124 } | 124 } |
125 | 125 |
126 DirectTransport::ForceDemuxer::ForceDemuxer(MediaType media_type) | 126 DirectTransport::ForceDemuxer::ForceDemuxer(MediaType media_type) |
127 : media_type_(media_type) {} | 127 : media_type_(media_type), |
| 128 packet_receiver_(nullptr) {} |
128 | 129 |
129 void DirectTransport::ForceDemuxer::SetReceiver(PacketReceiver* receiver) { | 130 void DirectTransport::ForceDemuxer::SetReceiver(PacketReceiver* receiver) { |
130 packet_receiver_ = receiver; | 131 packet_receiver_ = receiver; |
131 } | 132 } |
132 | 133 |
133 void DirectTransport::ForceDemuxer::DeliverPacket( | 134 void DirectTransport::ForceDemuxer::DeliverPacket( |
134 const NetworkPacket* packet, | 135 const NetworkPacket* packet, |
135 const PacketTime& packet_time) { | 136 const PacketTime& packet_time) { |
136 if (!packet_receiver_) | 137 if (!packet_receiver_) |
137 return; | 138 return; |
138 packet_receiver_->DeliverPacket(media_type_, packet->data(), | 139 packet_receiver_->DeliverPacket(media_type_, packet->data(), |
139 packet->data_length(), packet_time); | 140 packet->data_length(), packet_time); |
140 } | 141 } |
141 | 142 |
142 void DirectTransport::SendPackets() { | 143 void DirectTransport::SendPackets() { |
143 RTC_DCHECK_CALLED_SEQUENTIALLY(&sequence_checker_); | 144 RTC_DCHECK_CALLED_SEQUENTIALLY(&sequence_checker_); |
144 | 145 |
145 fake_network_.Process(); | 146 fake_network_.Process(); |
146 | 147 |
147 int64_t delay_ms = fake_network_.TimeUntilNextProcess(); | 148 int64_t delay_ms = fake_network_.TimeUntilNextProcess(); |
148 next_scheduled_task_ = task_queue_->PostDelayedTask([this]() { | 149 next_scheduled_task_ = task_queue_->PostDelayedTask([this]() { |
149 SendPackets(); | 150 SendPackets(); |
150 }, delay_ms); | 151 }, delay_ms); |
151 } | 152 } |
152 } // namespace test | 153 } // namespace test |
153 } // namespace webrtc | 154 } // namespace webrtc |
OLD | NEW |