OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright 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 1218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1229 | 1229 |
1230 bool WebRtcSession::SetAudioRtpParameters(uint32_t ssrc, | 1230 bool WebRtcSession::SetAudioRtpParameters(uint32_t ssrc, |
1231 const RtpParameters& parameters) { | 1231 const RtpParameters& parameters) { |
1232 ASSERT(signaling_thread()->IsCurrent()); | 1232 ASSERT(signaling_thread()->IsCurrent()); |
1233 if (!voice_channel_) { | 1233 if (!voice_channel_) { |
1234 return false; | 1234 return false; |
1235 } | 1235 } |
1236 return voice_channel_->SetRtpParameters(ssrc, parameters); | 1236 return voice_channel_->SetRtpParameters(ssrc, parameters); |
1237 } | 1237 } |
1238 | 1238 |
1239 bool WebRtcSession::SetSource( | |
1240 uint32_t ssrc, | |
1241 rtc::VideoSourceInterface<cricket::VideoFrame>* source) { | |
1242 ASSERT(signaling_thread()->IsCurrent()); | |
1243 | |
1244 if (!video_channel_) { | |
1245 // |video_channel_| doesnt't exist. Probably because the remote end doesnt't | |
1246 // support video. | |
1247 LOG(LS_WARNING) << "Video not used in this call."; | |
1248 return false; | |
1249 } | |
1250 video_channel_->SetSource(ssrc, source); | |
1251 return true; | |
1252 } | |
1253 | |
1254 void WebRtcSession::SetVideoPlayout( | 1239 void WebRtcSession::SetVideoPlayout( |
1255 uint32_t ssrc, | 1240 uint32_t ssrc, |
1256 bool enable, | 1241 bool enable, |
1257 rtc::VideoSinkInterface<cricket::VideoFrame>* sink) { | 1242 rtc::VideoSinkInterface<cricket::VideoFrame>* sink) { |
1258 ASSERT(signaling_thread()->IsCurrent()); | 1243 ASSERT(signaling_thread()->IsCurrent()); |
1259 if (!video_channel_) { | 1244 if (!video_channel_) { |
1260 LOG(LS_WARNING) << "SetVideoPlayout: No video channel exists."; | 1245 LOG(LS_WARNING) << "SetVideoPlayout: No video channel exists."; |
1261 return; | 1246 return; |
1262 } | 1247 } |
1263 if (!video_channel_->SetSink(ssrc, enable ? sink : NULL)) { | 1248 if (!video_channel_->SetSink(ssrc, enable ? sink : NULL)) { |
1264 // Allow that SetSink fail if |sink| is NULL but assert otherwise. | 1249 // Allow that SetSink fail if |sink| is NULL but assert otherwise. |
1265 // This in the normal case when the underlying media channel has already | 1250 // This in the normal case when the underlying media channel has already |
1266 // been deleted. | 1251 // been deleted. |
1267 ASSERT(sink == NULL); | 1252 ASSERT(sink == NULL); |
1268 } | 1253 } |
1269 } | 1254 } |
1270 | 1255 |
1271 void WebRtcSession::SetVideoSend(uint32_t ssrc, | 1256 void WebRtcSession::SetVideoSend( |
1272 bool enable, | 1257 uint32_t ssrc, |
1273 const cricket::VideoOptions* options) { | 1258 bool enable, |
| 1259 const cricket::VideoOptions* options, |
| 1260 rtc::VideoSourceInterface<cricket::VideoFrame>* source) { |
1274 ASSERT(signaling_thread()->IsCurrent()); | 1261 ASSERT(signaling_thread()->IsCurrent()); |
1275 if (!video_channel_) { | 1262 if (!video_channel_) { |
1276 LOG(LS_WARNING) << "SetVideoSend: No video channel exists."; | 1263 LOG(LS_WARNING) << "SetVideoSend: No video channel exists."; |
1277 return; | 1264 return; |
1278 } | 1265 } |
1279 if (!video_channel_->SetVideoSend(ssrc, enable, options)) { | 1266 if (!video_channel_->SetVideoSend(ssrc, enable, options, source)) { |
1280 // Allow that MuteStream fail if |enable| is false but assert otherwise. | 1267 // Allow that MuteStream fail if |enable| is false and |source| is NULL but |
1281 // This in the normal case when the underlying media channel has already | 1268 // assert otherwise. This in the normal case when the underlying media |
1282 // been deleted. | 1269 // channel has already been deleted. |
1283 ASSERT(enable == false); | 1270 ASSERT(enable == false && source == nullptr); |
1284 } | 1271 } |
1285 } | 1272 } |
1286 | 1273 |
1287 RtpParameters WebRtcSession::GetVideoRtpParameters(uint32_t ssrc) const { | 1274 RtpParameters WebRtcSession::GetVideoRtpParameters(uint32_t ssrc) const { |
1288 ASSERT(signaling_thread()->IsCurrent()); | 1275 ASSERT(signaling_thread()->IsCurrent()); |
1289 if (video_channel_) { | 1276 if (video_channel_) { |
1290 return video_channel_->GetRtpParameters(ssrc); | 1277 return video_channel_->GetRtpParameters(ssrc); |
1291 } | 1278 } |
1292 return RtpParameters(); | 1279 return RtpParameters(); |
1293 } | 1280 } |
(...skipping 834 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2128 ssl_cipher_suite); | 2115 ssl_cipher_suite); |
2129 } | 2116 } |
2130 } | 2117 } |
2131 | 2118 |
2132 void WebRtcSession::OnSentPacket_w(const rtc::SentPacket& sent_packet) { | 2119 void WebRtcSession::OnSentPacket_w(const rtc::SentPacket& sent_packet) { |
2133 RTC_DCHECK(worker_thread()->IsCurrent()); | 2120 RTC_DCHECK(worker_thread()->IsCurrent()); |
2134 media_controller_->call_w()->OnSentPacket(sent_packet); | 2121 media_controller_->call_w()->OnSentPacket(sent_packet); |
2135 } | 2122 } |
2136 | 2123 |
2137 } // namespace webrtc | 2124 } // namespace webrtc |
OLD | NEW |