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

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

Issue 2415943002: Revert of Add RtcpRttStats to AudioStream (Closed)
Patch Set: Created 4 years, 2 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
« no previous file with comments | « webrtc/voice_engine/channel.h ('k') | webrtc/voice_engine/channel_proxy.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 rtc::CritScope lock(&crit_); 150 rtc::CritScope lock(&crit_);
151 event_log_ = event_log; 151 event_log_ = event_log;
152 } 152 }
153 153
154 private: 154 private:
155 rtc::CriticalSection crit_; 155 rtc::CriticalSection crit_;
156 RtcEventLog* event_log_ GUARDED_BY(crit_); 156 RtcEventLog* event_log_ GUARDED_BY(crit_);
157 RTC_DISALLOW_COPY_AND_ASSIGN(RtcEventLogProxy); 157 RTC_DISALLOW_COPY_AND_ASSIGN(RtcEventLogProxy);
158 }; 158 };
159 159
160 class RtcpRttStatsProxy final : public RtcpRttStats {
161 public:
162 RtcpRttStatsProxy() : rtcp_rtt_stats_(nullptr) {}
163
164 void OnRttUpdate(int64_t rtt) override {
165 rtc::CritScope lock(&crit_);
166 if (rtcp_rtt_stats_)
167 rtcp_rtt_stats_->OnRttUpdate(rtt);
168 }
169
170 int64_t LastProcessedRtt() const override {
171 rtc::CritScope lock(&crit_);
172 if (rtcp_rtt_stats_ == nullptr)
173 return 0;
174 return rtcp_rtt_stats_->LastProcessedRtt();
175 }
176
177 void SetRtcpRttStats(RtcpRttStats* rtcp_rtt_stats) {
178 rtc::CritScope lock(&crit_);
179 rtcp_rtt_stats_ = rtcp_rtt_stats;
180 }
181
182 private:
183 rtc::CriticalSection crit_;
184 RtcpRttStats* rtcp_rtt_stats_ GUARDED_BY(crit_);
185 RTC_DISALLOW_COPY_AND_ASSIGN(RtcpRttStatsProxy);
186 };
187
188 class TransportFeedbackProxy : public TransportFeedbackObserver { 160 class TransportFeedbackProxy : public TransportFeedbackObserver {
189 public: 161 public:
190 TransportFeedbackProxy() : feedback_observer_(nullptr) { 162 TransportFeedbackProxy() : feedback_observer_(nullptr) {
191 pacer_thread_.DetachFromThread(); 163 pacer_thread_.DetachFromThread();
192 network_thread_.DetachFromThread(); 164 network_thread_.DetachFromThread();
193 } 165 }
194 166
195 void SetTransportFeedbackObserver( 167 void SetTransportFeedbackObserver(
196 TransportFeedbackObserver* feedback_observer) { 168 TransportFeedbackObserver* feedback_observer) {
197 RTC_DCHECK(thread_checker_.CalledOnValidThread()); 169 RTC_DCHECK(thread_checker_.CalledOnValidThread());
(...skipping 638 matching lines...) Expand 10 before | Expand all | Expand 10 after
836 "Channel::RecordFileEnded() => output file recorder module is" 808 "Channel::RecordFileEnded() => output file recorder module is"
837 " shutdown"); 809 " shutdown");
838 } 810 }
839 811
840 Channel::Channel(int32_t channelId, 812 Channel::Channel(int32_t channelId,
841 uint32_t instanceId, 813 uint32_t instanceId,
842 const VoEBase::ChannelConfig& config) 814 const VoEBase::ChannelConfig& config)
843 : _instanceId(instanceId), 815 : _instanceId(instanceId),
844 _channelId(channelId), 816 _channelId(channelId),
845 event_log_proxy_(new RtcEventLogProxy()), 817 event_log_proxy_(new RtcEventLogProxy()),
846 rtcp_rtt_stats_proxy_(new RtcpRttStatsProxy()),
847 rtp_header_parser_(RtpHeaderParser::Create()), 818 rtp_header_parser_(RtpHeaderParser::Create()),
848 rtp_payload_registry_( 819 rtp_payload_registry_(
849 new RTPPayloadRegistry(RTPPayloadStrategy::CreateStrategy(true))), 820 new RTPPayloadRegistry(RTPPayloadStrategy::CreateStrategy(true))),
850 rtp_receive_statistics_( 821 rtp_receive_statistics_(
851 ReceiveStatistics::Create(Clock::GetRealTimeClock())), 822 ReceiveStatistics::Create(Clock::GetRealTimeClock())),
852 rtp_receiver_( 823 rtp_receiver_(
853 RtpReceiver::CreateAudioReceiver(Clock::GetRealTimeClock(), 824 RtpReceiver::CreateAudioReceiver(Clock::GetRealTimeClock(),
854 this, 825 this,
855 this, 826 this,
856 rtp_payload_registry_.get())), 827 rtp_payload_registry_.get())),
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
922 configuration.outgoing_transport = this; 893 configuration.outgoing_transport = this;
923 configuration.receive_statistics = rtp_receive_statistics_.get(); 894 configuration.receive_statistics = rtp_receive_statistics_.get();
924 configuration.bandwidth_callback = rtcp_observer_.get(); 895 configuration.bandwidth_callback = rtcp_observer_.get();
925 if (pacing_enabled_) { 896 if (pacing_enabled_) {
926 configuration.paced_sender = rtp_packet_sender_proxy_.get(); 897 configuration.paced_sender = rtp_packet_sender_proxy_.get();
927 configuration.transport_sequence_number_allocator = 898 configuration.transport_sequence_number_allocator =
928 seq_num_allocator_proxy_.get(); 899 seq_num_allocator_proxy_.get();
929 configuration.transport_feedback_callback = feedback_observer_proxy_.get(); 900 configuration.transport_feedback_callback = feedback_observer_proxy_.get();
930 } 901 }
931 configuration.event_log = &(*event_log_proxy_); 902 configuration.event_log = &(*event_log_proxy_);
932 configuration.rtt_stats = &(*rtcp_rtt_stats_proxy_);
933 configuration.retransmission_rate_limiter = 903 configuration.retransmission_rate_limiter =
934 retransmission_rate_limiter_.get(); 904 retransmission_rate_limiter_.get();
935 905
936 _rtpRtcpModule.reset(RtpRtcp::CreateRtpRtcp(configuration)); 906 _rtpRtcpModule.reset(RtpRtcp::CreateRtpRtcp(configuration));
937 _rtpRtcpModule->SetSendingMediaStatus(false); 907 _rtpRtcpModule->SetSendingMediaStatus(false);
938 908
939 statistics_proxy_.reset(new StatisticsProxy(_rtpRtcpModule->SSRC())); 909 statistics_proxy_.reset(new StatisticsProxy(_rtpRtcpModule->SSRC()));
940 rtp_receive_statistics_->RegisterRtcpStatisticsCallback( 910 rtp_receive_statistics_->RegisterRtcpStatisticsCallback(
941 statistics_proxy_.get()); 911 statistics_proxy_.get());
942 } 912 }
(...skipping 1891 matching lines...) Expand 10 before | Expand all | Expand 10 after
2834 // Channel ID, disassociate with it. 2804 // Channel ID, disassociate with it.
2835 ChannelOwner ref(NULL); 2805 ChannelOwner ref(NULL);
2836 associate_send_channel_ = ref; 2806 associate_send_channel_ = ref;
2837 } 2807 }
2838 } 2808 }
2839 2809
2840 void Channel::SetRtcEventLog(RtcEventLog* event_log) { 2810 void Channel::SetRtcEventLog(RtcEventLog* event_log) {
2841 event_log_proxy_->SetEventLog(event_log); 2811 event_log_proxy_->SetEventLog(event_log);
2842 } 2812 }
2843 2813
2844 void Channel::SetRtcpRttStats(RtcpRttStats* rtcp_rtt_stats) {
2845 rtcp_rtt_stats_proxy_->SetRtcpRttStats(rtcp_rtt_stats);
2846 }
2847
2848 int Channel::RegisterExternalMediaProcessing(ProcessingTypes type, 2814 int Channel::RegisterExternalMediaProcessing(ProcessingTypes type,
2849 VoEMediaProcess& processObject) { 2815 VoEMediaProcess& processObject) {
2850 WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, _channelId), 2816 WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, _channelId),
2851 "Channel::RegisterExternalMediaProcessing()"); 2817 "Channel::RegisterExternalMediaProcessing()");
2852 2818
2853 rtc::CritScope cs(&_callbackCritSect); 2819 rtc::CritScope cs(&_callbackCritSect);
2854 2820
2855 if (kPlaybackPerChannel == type) { 2821 if (kPlaybackPerChannel == type) {
2856 if (_outputExternalMediaCallbackPtr) { 2822 if (_outputExternalMediaCallbackPtr) {
2857 _engineStatisticsPtr->SetLastError( 2823 _engineStatisticsPtr->SetLastError(
(...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after
3255 int64_t min_rtt = 0; 3221 int64_t min_rtt = 0;
3256 if (_rtpRtcpModule->RTT(remoteSSRC, &rtt, &avg_rtt, &min_rtt, &max_rtt) != 3222 if (_rtpRtcpModule->RTT(remoteSSRC, &rtt, &avg_rtt, &min_rtt, &max_rtt) !=
3257 0) { 3223 0) {
3258 return 0; 3224 return 0;
3259 } 3225 }
3260 return rtt; 3226 return rtt;
3261 } 3227 }
3262 3228
3263 } // namespace voe 3229 } // namespace voe
3264 } // namespace webrtc 3230 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/voice_engine/channel.h ('k') | webrtc/voice_engine/channel_proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698