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

Side by Side Diff: webrtc/voice_engine/channel.h

Issue 2638083002: Attach TransportFeedbackPacketLossTracker to ANA (PLR only) (Closed)
Patch Set: event_log_visualizer Created 3 years, 9 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 16 matching lines...) Expand all
27 #include "webrtc/modules/rtp_rtcp/include/remote_ntp_time_estimator.h" 27 #include "webrtc/modules/rtp_rtcp/include/remote_ntp_time_estimator.h"
28 #include "webrtc/modules/rtp_rtcp/include/rtp_header_parser.h" 28 #include "webrtc/modules/rtp_rtcp/include/rtp_header_parser.h"
29 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h" 29 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h"
30 #include "webrtc/voice_engine/audio_level.h" 30 #include "webrtc/voice_engine/audio_level.h"
31 #include "webrtc/voice_engine/file_player.h" 31 #include "webrtc/voice_engine/file_player.h"
32 #include "webrtc/voice_engine/file_recorder.h" 32 #include "webrtc/voice_engine/file_recorder.h"
33 #include "webrtc/voice_engine/include/voe_audio_processing.h" 33 #include "webrtc/voice_engine/include/voe_audio_processing.h"
34 #include "webrtc/voice_engine/include/voe_base.h" 34 #include "webrtc/voice_engine/include/voe_base.h"
35 #include "webrtc/voice_engine/include/voe_network.h" 35 #include "webrtc/voice_engine/include/voe_network.h"
36 #include "webrtc/voice_engine/shared_data.h" 36 #include "webrtc/voice_engine/shared_data.h"
37 #include "webrtc/voice_engine/transport_feedback_packet_loss_tracker.h"
37 #include "webrtc/voice_engine/voice_engine_defines.h" 38 #include "webrtc/voice_engine/voice_engine_defines.h"
38 39
39 namespace rtc { 40 namespace rtc {
40 class TimestampWrapAroundHandler; 41 class TimestampWrapAroundHandler;
41 } 42 }
42 43
43 namespace webrtc { 44 namespace webrtc {
44 45
45 class AudioDeviceModule; 46 class AudioDeviceModule;
46 class FileWrapper; 47 class FileWrapper;
(...skipping 330 matching lines...) Expand 10 before | Expand all | Expand 10 after
377 378
378 // Set a RtcEventLog logging object. 379 // Set a RtcEventLog logging object.
379 void SetRtcEventLog(RtcEventLog* event_log); 380 void SetRtcEventLog(RtcEventLog* event_log);
380 381
381 void SetRtcpRttStats(RtcpRttStats* rtcp_rtt_stats); 382 void SetRtcpRttStats(RtcpRttStats* rtcp_rtt_stats);
382 void SetTransportOverhead(size_t transport_overhead_per_packet); 383 void SetTransportOverhead(size_t transport_overhead_per_packet);
383 384
384 // From OverheadObserver in the RTP/RTCP module 385 // From OverheadObserver in the RTP/RTCP module
385 void OnOverheadChanged(size_t overhead_bytes_per_packet) override; 386 void OnOverheadChanged(size_t overhead_bytes_per_packet) override;
386 387
388 void HandleTransportFeedback(const std::vector<SentTransportPacketRecord>&
389 packets_sent_since_last_feedback,
390 const rtcp::TransportFeedback& feedback);
391
387 protected: 392 protected:
388 void OnIncomingFractionLoss(int fraction_lost); 393 void OnIncomingFractionLoss(int fraction_lost);
389 394
390 private: 395 private:
391 bool InputMute() const; 396 bool InputMute() const;
392 bool OnRtpPacketWithHeader(const uint8_t* received_packet, 397 bool OnRtpPacketWithHeader(const uint8_t* received_packet,
393 size_t length, 398 size_t length,
394 RTPHeader *header); 399 RTPHeader *header);
395 bool ReceivePacket(const uint8_t* packet, 400 bool ReceivePacket(const uint8_t* packet,
396 size_t packet_length, 401 size_t packet_length,
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
506 511
507 bool pacing_enabled_; 512 bool pacing_enabled_;
508 PacketRouter* packet_router_ = nullptr; 513 PacketRouter* packet_router_ = nullptr;
509 std::unique_ptr<TransportFeedbackProxy> feedback_observer_proxy_; 514 std::unique_ptr<TransportFeedbackProxy> feedback_observer_proxy_;
510 std::unique_ptr<TransportSequenceNumberProxy> seq_num_allocator_proxy_; 515 std::unique_ptr<TransportSequenceNumberProxy> seq_num_allocator_proxy_;
511 std::unique_ptr<RtpPacketSenderProxy> rtp_packet_sender_proxy_; 516 std::unique_ptr<RtpPacketSenderProxy> rtp_packet_sender_proxy_;
512 std::unique_ptr<RateLimiter> retransmission_rate_limiter_; 517 std::unique_ptr<RateLimiter> retransmission_rate_limiter_;
513 518
514 // TODO(ossu): Remove once GetAudioDecoderFactory() is no longer needed. 519 // TODO(ossu): Remove once GetAudioDecoderFactory() is no longer needed.
515 rtc::scoped_refptr<AudioDecoderFactory> decoder_factory_; 520 rtc::scoped_refptr<AudioDecoderFactory> decoder_factory_;
521
522 bool use_twcc_plr_for_ana_;
523 TransportFeedbackPacketLossTracker packet_loss_tracker_;
516 }; 524 };
517 525
518 } // namespace voe 526 } // namespace voe
519 } // namespace webrtc 527 } // namespace webrtc
520 528
521 #endif // WEBRTC_VOICE_ENGINE_CHANNEL_H_ 529 #endif // WEBRTC_VOICE_ENGINE_CHANNEL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698