Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 |
| 11 #include "webrtc/pc/rtpreceiver.h" | 11 #include "webrtc/pc/rtpreceiver.h" |
| 12 | 12 |
| 13 #include "webrtc/api/mediastreamtrackproxy.h" | 13 #include "webrtc/api/mediastreamtrackproxy.h" |
| 14 #include "webrtc/api/videosourceproxy.h" | 14 #include "webrtc/api/videosourceproxy.h" |
| 15 #include "webrtc/base/ptr_util.h" | |
| 15 #include "webrtc/base/trace_event.h" | 16 #include "webrtc/base/trace_event.h" |
| 17 #include "webrtc/modules/rtp_rtcp/include/rtp_receiver.h" | |
| 16 #include "webrtc/pc/audiotrack.h" | 18 #include "webrtc/pc/audiotrack.h" |
| 17 #include "webrtc/pc/videotrack.h" | 19 #include "webrtc/pc/videotrack.h" |
| 18 | 20 |
| 19 namespace webrtc { | 21 namespace webrtc { |
| 20 | 22 |
| 21 AudioRtpReceiver::AudioRtpReceiver(const std::string& track_id, | 23 AudioRtpReceiver::AudioRtpReceiver(const std::string& track_id, |
| 22 uint32_t ssrc, | 24 uint32_t ssrc, |
| 23 cricket::VoiceChannel* channel) | 25 cricket::VoiceChannel* channel) |
| 24 : id_(track_id), | 26 : id_(track_id), |
| 25 ssrc_(ssrc), | 27 ssrc_(ssrc), |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 90 return; | 92 return; |
| 91 } | 93 } |
| 92 if (channel_) { | 94 if (channel_) { |
| 93 // Allow that SetOutputVolume fail. This is the normal case when the | 95 // Allow that SetOutputVolume fail. This is the normal case when the |
| 94 // underlying media channel has already been deleted. | 96 // underlying media channel has already been deleted. |
| 95 channel_->SetOutputVolume(ssrc_, 0); | 97 channel_->SetOutputVolume(ssrc_, 0); |
| 96 } | 98 } |
| 97 stopped_ = true; | 99 stopped_ = true; |
| 98 } | 100 } |
| 99 | 101 |
| 102 std::vector<std::unique_ptr<RtpContributingSourceInterface>> | |
| 103 AudioRtpReceiver::GetContributingSources() { | |
| 104 std::vector<std::unique_ptr<RtpContributingSourceInterface>> | |
| 105 contributing_sources; | |
| 106 auto sources = channel_->GetContributingSources(ssrc_); | |
|
the sun
2017/03/30 11:31:42
Note, you can add the ssrc entry here and avoid pr
Taylor Brandstetter
2017/03/30 22:55:38
But the AudioRtpReceiver only knows about the SSRC
the sun
2017/03/31 07:05:42
Hmm. Thanks for bringing this up. When does it hap
| |
| 107 for (auto source : sources) { | |
| 108 contributing_sources.push_back( | |
| 109 rtc::MakeUnique<RtpContributingSource>(*source)); | |
| 110 } | |
| 111 return contributing_sources; | |
| 112 } | |
| 113 | |
| 100 void AudioRtpReceiver::Reconfigure() { | 114 void AudioRtpReceiver::Reconfigure() { |
| 101 RTC_DCHECK(!stopped_); | 115 RTC_DCHECK(!stopped_); |
| 102 if (!channel_) { | 116 if (!channel_) { |
| 103 LOG(LS_ERROR) << "AudioRtpReceiver::Reconfigure: No audio channel exists."; | 117 LOG(LS_ERROR) << "AudioRtpReceiver::Reconfigure: No audio channel exists."; |
| 104 return; | 118 return; |
| 105 } | 119 } |
| 106 if (!channel_->SetOutputVolume(ssrc_, | 120 if (!channel_->SetOutputVolume(ssrc_, |
| 107 track_->enabled() ? cached_volume_ : 0)) { | 121 track_->enabled() ? cached_volume_ : 0)) { |
| 108 RTC_NOTREACHED(); | 122 RTC_NOTREACHED(); |
| 109 } | 123 } |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 229 } | 243 } |
| 230 | 244 |
| 231 void VideoRtpReceiver::OnFirstPacketReceived(cricket::BaseChannel* channel) { | 245 void VideoRtpReceiver::OnFirstPacketReceived(cricket::BaseChannel* channel) { |
| 232 if (observer_) { | 246 if (observer_) { |
| 233 observer_->OnFirstPacketReceived(media_type()); | 247 observer_->OnFirstPacketReceived(media_type()); |
| 234 } | 248 } |
| 235 received_first_packet_ = true; | 249 received_first_packet_ = true; |
| 236 } | 250 } |
| 237 | 251 |
| 238 } // namespace webrtc | 252 } // namespace webrtc |
| OLD | NEW |