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

Side by Side Diff: webrtc/api/rtpreceiver.cc

Issue 2023373002: Separating internal and external methods of RtpSender/RtpReceiver. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Renaming "ProxyTo<X>" to "ProxyWithInternal<X>" Created 4 years, 6 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/api/rtpreceiver.h ('k') | webrtc/api/rtpreceiverinterface.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 2015 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2015 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 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 } 51 }
52 52
53 void AudioRtpReceiver::OnSetVolume(double volume) { 53 void AudioRtpReceiver::OnSetVolume(double volume) {
54 // When the track is disabled, the volume of the source, which is the 54 // When the track is disabled, the volume of the source, which is the
55 // corresponding WebRtc Voice Engine channel will be 0. So we do not allow 55 // corresponding WebRtc Voice Engine channel will be 0. So we do not allow
56 // setting the volume to the source when the track is disabled. 56 // setting the volume to the source when the track is disabled.
57 if (provider_ && track_->enabled()) 57 if (provider_ && track_->enabled())
58 provider_->SetAudioPlayoutVolume(ssrc_, volume); 58 provider_->SetAudioPlayoutVolume(ssrc_, volume);
59 } 59 }
60 60
61 void AudioRtpReceiver::Stop() {
62 // TODO(deadbeef): Need to do more here to fully stop receiving packets.
63 if (!provider_) {
64 return;
65 }
66 provider_->SetAudioPlayout(ssrc_, false);
67 provider_ = nullptr;
68 }
69
70 RtpParameters AudioRtpReceiver::GetParameters() const { 61 RtpParameters AudioRtpReceiver::GetParameters() const {
71 return provider_->GetAudioRtpReceiveParameters(ssrc_); 62 return provider_->GetAudioRtpReceiveParameters(ssrc_);
72 } 63 }
73 64
74 bool AudioRtpReceiver::SetParameters(const RtpParameters& parameters) { 65 bool AudioRtpReceiver::SetParameters(const RtpParameters& parameters) {
75 TRACE_EVENT0("webrtc", "AudioRtpReceiver::SetParameters"); 66 TRACE_EVENT0("webrtc", "AudioRtpReceiver::SetParameters");
76 return provider_->SetAudioRtpReceiveParameters(ssrc_, parameters); 67 return provider_->SetAudioRtpReceiveParameters(ssrc_, parameters);
77 } 68 }
78 69
70 void AudioRtpReceiver::Stop() {
71 // TODO(deadbeef): Need to do more here to fully stop receiving packets.
72 if (!provider_) {
73 return;
74 }
75 provider_->SetAudioPlayout(ssrc_, false);
76 provider_ = nullptr;
77 }
78
79 void AudioRtpReceiver::Reconfigure() { 79 void AudioRtpReceiver::Reconfigure() {
80 if (!provider_) { 80 if (!provider_) {
81 return; 81 return;
82 } 82 }
83 provider_->SetAudioPlayout(ssrc_, track_->enabled()); 83 provider_->SetAudioPlayout(ssrc_, track_->enabled());
84 } 84 }
85 85
86 VideoRtpReceiver::VideoRtpReceiver(MediaStreamInterface* stream, 86 VideoRtpReceiver::VideoRtpReceiver(MediaStreamInterface* stream,
87 const std::string& track_id, 87 const std::string& track_id,
88 rtc::Thread* worker_thread, 88 rtc::Thread* worker_thread,
(...skipping 16 matching lines...) Expand all
105 provider_->SetVideoPlayout(ssrc_, true, &broadcaster_); 105 provider_->SetVideoPlayout(ssrc_, true, &broadcaster_);
106 stream->AddTrack(track_); 106 stream->AddTrack(track_);
107 } 107 }
108 108
109 VideoRtpReceiver::~VideoRtpReceiver() { 109 VideoRtpReceiver::~VideoRtpReceiver() {
110 // Since cricket::VideoRenderer is not reference counted, 110 // Since cricket::VideoRenderer is not reference counted,
111 // we need to remove it from the provider before we are deleted. 111 // we need to remove it from the provider before we are deleted.
112 Stop(); 112 Stop();
113 } 113 }
114 114
115 RtpParameters VideoRtpReceiver::GetParameters() const {
116 return provider_->GetVideoRtpReceiveParameters(ssrc_);
117 }
118
119 bool VideoRtpReceiver::SetParameters(const RtpParameters& parameters) {
120 TRACE_EVENT0("webrtc", "VideoRtpReceiver::SetParameters");
121 return provider_->SetVideoRtpReceiveParameters(ssrc_, parameters);
122 }
123
115 void VideoRtpReceiver::Stop() { 124 void VideoRtpReceiver::Stop() {
116 // TODO(deadbeef): Need to do more here to fully stop receiving packets. 125 // TODO(deadbeef): Need to do more here to fully stop receiving packets.
117 if (!provider_) { 126 if (!provider_) {
118 return; 127 return;
119 } 128 }
120 source_->SetState(MediaSourceInterface::kEnded); 129 source_->SetState(MediaSourceInterface::kEnded);
121 source_->OnSourceDestroyed(); 130 source_->OnSourceDestroyed();
122 provider_->SetVideoPlayout(ssrc_, false, nullptr); 131 provider_->SetVideoPlayout(ssrc_, false, nullptr);
123 provider_ = nullptr; 132 provider_ = nullptr;
124 } 133 }
125 134
126 RtpParameters VideoRtpReceiver::GetParameters() const {
127 return provider_->GetVideoRtpReceiveParameters(ssrc_);
128 }
129
130 bool VideoRtpReceiver::SetParameters(const RtpParameters& parameters) {
131 TRACE_EVENT0("webrtc", "VideoRtpReceiver::SetParameters");
132 return provider_->SetVideoRtpReceiveParameters(ssrc_, parameters);
133 }
134
135 } // namespace webrtc 135 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/api/rtpreceiver.h ('k') | webrtc/api/rtpreceiverinterface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698