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

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

Issue 2684773002: Experiment-driven configuration of PLR/RPLR-based FecController (Closed)
Patch Set: Rebased 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 17 matching lines...) Expand all
28 #include "webrtc/modules/audio_device/include/audio_device.h" 28 #include "webrtc/modules/audio_device/include/audio_device.h"
29 #include "webrtc/modules/audio_processing/include/audio_processing.h" 29 #include "webrtc/modules/audio_processing/include/audio_processing.h"
30 #include "webrtc/modules/include/module_common_types.h" 30 #include "webrtc/modules/include/module_common_types.h"
31 #include "webrtc/modules/pacing/packet_router.h" 31 #include "webrtc/modules/pacing/packet_router.h"
32 #include "webrtc/modules/rtp_rtcp/include/receive_statistics.h" 32 #include "webrtc/modules/rtp_rtcp/include/receive_statistics.h"
33 #include "webrtc/modules/rtp_rtcp/include/rtp_payload_registry.h" 33 #include "webrtc/modules/rtp_rtcp/include/rtp_payload_registry.h"
34 #include "webrtc/modules/rtp_rtcp/include/rtp_receiver.h" 34 #include "webrtc/modules/rtp_rtcp/include/rtp_receiver.h"
35 #include "webrtc/modules/rtp_rtcp/source/rtp_packet_received.h" 35 #include "webrtc/modules/rtp_rtcp/source/rtp_packet_received.h"
36 #include "webrtc/modules/rtp_rtcp/source/rtp_receiver_strategy.h" 36 #include "webrtc/modules/rtp_rtcp/source/rtp_receiver_strategy.h"
37 #include "webrtc/modules/utility/include/process_thread.h" 37 #include "webrtc/modules/utility/include/process_thread.h"
38 #include "webrtc/system_wrappers/include/field_trial.h"
38 #include "webrtc/system_wrappers/include/trace.h" 39 #include "webrtc/system_wrappers/include/trace.h"
39 #include "webrtc/voice_engine/include/voe_rtp_rtcp.h" 40 #include "webrtc/voice_engine/include/voe_rtp_rtcp.h"
40 #include "webrtc/voice_engine/output_mixer.h" 41 #include "webrtc/voice_engine/output_mixer.h"
41 #include "webrtc/voice_engine/statistics.h" 42 #include "webrtc/voice_engine/statistics.h"
42 #include "webrtc/voice_engine/utility.h" 43 #include "webrtc/voice_engine/utility.h"
43 44
44 namespace webrtc { 45 namespace webrtc {
45 namespace voe { 46 namespace voe {
46 47
47 namespace { 48 namespace {
(...skipping 849 matching lines...) Expand 10 before | Expand all | Expand 10 after
897 restored_packet_in_use_(false), 898 restored_packet_in_use_(false),
898 rtcp_observer_(new VoERtcpObserver(this)), 899 rtcp_observer_(new VoERtcpObserver(this)),
899 associate_send_channel_(ChannelOwner(nullptr)), 900 associate_send_channel_(ChannelOwner(nullptr)),
900 pacing_enabled_(config.enable_voice_pacing), 901 pacing_enabled_(config.enable_voice_pacing),
901 feedback_observer_proxy_(new TransportFeedbackProxy()), 902 feedback_observer_proxy_(new TransportFeedbackProxy()),
902 seq_num_allocator_proxy_(new TransportSequenceNumberProxy()), 903 seq_num_allocator_proxy_(new TransportSequenceNumberProxy()),
903 rtp_packet_sender_proxy_(new RtpPacketSenderProxy()), 904 rtp_packet_sender_proxy_(new RtpPacketSenderProxy()),
904 retransmission_rate_limiter_(new RateLimiter(Clock::GetRealTimeClock(), 905 retransmission_rate_limiter_(new RateLimiter(Clock::GetRealTimeClock(),
905 kMaxRetransmissionWindowMs)), 906 kMaxRetransmissionWindowMs)),
906 decoder_factory_(config.acm_config.decoder_factory), 907 decoder_factory_(config.acm_config.decoder_factory),
907 // TODO(elad.alon): Subsequent CL experiments with PLR source. 908 use_twcc_plr_for_ana_(
908 use_twcc_plr_for_ana_(false) { 909 webrtc::field_trial::FindFullName("UseTwccPlrForAna") == "Enabled") {
909 WEBRTC_TRACE(kTraceMemory, kTraceVoice, VoEId(_instanceId, _channelId), 910 WEBRTC_TRACE(kTraceMemory, kTraceVoice, VoEId(_instanceId, _channelId),
910 "Channel::Channel() - ctor"); 911 "Channel::Channel() - ctor");
911 AudioCodingModule::Config acm_config(config.acm_config); 912 AudioCodingModule::Config acm_config(config.acm_config);
912 acm_config.id = VoEModuleId(instanceId, channelId); 913 acm_config.id = VoEModuleId(instanceId, channelId);
913 acm_config.neteq_config.enable_muted_state = true; 914 acm_config.neteq_config.enable_muted_state = true;
914 audio_coding_.reset(AudioCodingModule::Create(acm_config)); 915 audio_coding_.reset(AudioCodingModule::Create(acm_config));
915 916
916 _outputAudioLevel.Clear(); 917 _outputAudioLevel.Clear();
917 918
918 RtpRtcp::Configuration configuration; 919 RtpRtcp::Configuration configuration;
(...skipping 2114 matching lines...) Expand 10 before | Expand all | Expand 10 after
3033 int64_t min_rtt = 0; 3034 int64_t min_rtt = 0;
3034 if (_rtpRtcpModule->RTT(remoteSSRC, &rtt, &avg_rtt, &min_rtt, &max_rtt) != 3035 if (_rtpRtcpModule->RTT(remoteSSRC, &rtt, &avg_rtt, &min_rtt, &max_rtt) !=
3035 0) { 3036 0) {
3036 return 0; 3037 return 0;
3037 } 3038 }
3038 return rtt; 3039 return rtt;
3039 } 3040 }
3040 3041
3041 } // namespace voe 3042 } // namespace voe
3042 } // namespace webrtc 3043 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698