| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2004 The WebRTC project authors. All Rights Reserved. | 2 * Copyright 2004 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 328 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 339 video_channels_.erase(it); | 339 video_channels_.erase(it); |
| 340 delete video_channel; | 340 delete video_channel; |
| 341 } | 341 } |
| 342 | 342 |
| 343 DataChannel* ChannelManager::CreateDataChannel( | 343 DataChannel* ChannelManager::CreateDataChannel( |
| 344 TransportController* transport_controller, | 344 TransportController* transport_controller, |
| 345 const std::string& content_name, | 345 const std::string& content_name, |
| 346 const std::string* bundle_transport_name, | 346 const std::string* bundle_transport_name, |
| 347 bool rtcp, | 347 bool rtcp, |
| 348 DataChannelType channel_type) { | 348 DataChannelType channel_type) { |
| 349 return CreateDataChannel(transport_controller, nullptr, content_name, |
| 350 bundle_transport_name, rtcp, channel_type); |
| 351 } |
| 352 |
| 353 DataChannel* ChannelManager::CreateDataChannel( |
| 354 TransportController* transport_controller, |
| 355 webrtc::MediaControllerInterface* media_controller, |
| 356 const std::string& content_name, |
| 357 const std::string* bundle_transport_name, |
| 358 bool rtcp, |
| 359 DataChannelType channel_type) { |
| 349 return worker_thread_->Invoke<DataChannel*>( | 360 return worker_thread_->Invoke<DataChannel*>( |
| 350 RTC_FROM_HERE, | 361 RTC_FROM_HERE, |
| 351 Bind(&ChannelManager::CreateDataChannel_w, this, transport_controller, | 362 Bind(&ChannelManager::CreateDataChannel_w, this, transport_controller, |
| 352 content_name, bundle_transport_name, rtcp, channel_type)); | 363 content_name, bundle_transport_name, rtcp, channel_type, |
| 364 media_controller)); |
| 353 } | 365 } |
| 354 | 366 |
| 355 DataChannel* ChannelManager::CreateDataChannel_w( | 367 DataChannel* ChannelManager::CreateDataChannel_w( |
| 356 TransportController* transport_controller, | 368 TransportController* transport_controller, |
| 357 const std::string& content_name, | 369 const std::string& content_name, |
| 358 const std::string* bundle_transport_name, | 370 const std::string* bundle_transport_name, |
| 359 bool rtcp, | 371 bool rtcp, |
| 360 DataChannelType data_channel_type) { | 372 DataChannelType data_channel_type, |
| 373 webrtc::MediaControllerInterface* media_controller) { |
| 361 // This is ok to alloc from a thread other than the worker thread. | 374 // This is ok to alloc from a thread other than the worker thread. |
| 362 ASSERT(initialized_); | 375 ASSERT(initialized_); |
| 363 DataMediaChannel* media_channel = data_media_engine_->CreateChannel( | 376 MediaConfig config; |
| 364 data_channel_type); | 377 if (media_controller) { |
| 378 config = media_controller->config(); |
| 379 } |
| 380 DataMediaChannel* media_channel = |
| 381 data_media_engine_->CreateChannel(data_channel_type, config); |
| 365 if (!media_channel) { | 382 if (!media_channel) { |
| 366 LOG(LS_WARNING) << "Failed to create data channel of type " | 383 LOG(LS_WARNING) << "Failed to create data channel of type " |
| 367 << data_channel_type; | 384 << data_channel_type; |
| 368 return NULL; | 385 return NULL; |
| 369 } | 386 } |
| 370 | 387 |
| 371 DataChannel* data_channel = | 388 DataChannel* data_channel = |
| 372 new DataChannel(worker_thread_, network_thread_, media_channel, | 389 new DataChannel(worker_thread_, network_thread_, media_channel, |
| 373 transport_controller, content_name, rtcp); | 390 transport_controller, content_name, rtcp); |
| 374 data_channel->SetCryptoOptions(crypto_options_); | 391 data_channel->SetCryptoOptions(crypto_options_); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 411 media_engine_.get(), file, max_size_bytes)); | 428 media_engine_.get(), file, max_size_bytes)); |
| 412 } | 429 } |
| 413 | 430 |
| 414 void ChannelManager::StopAecDump() { | 431 void ChannelManager::StopAecDump() { |
| 415 worker_thread_->Invoke<void>( | 432 worker_thread_->Invoke<void>( |
| 416 RTC_FROM_HERE, | 433 RTC_FROM_HERE, |
| 417 Bind(&MediaEngineInterface::StopAecDump, media_engine_.get())); | 434 Bind(&MediaEngineInterface::StopAecDump, media_engine_.get())); |
| 418 } | 435 } |
| 419 | 436 |
| 420 } // namespace cricket | 437 } // namespace cricket |
| OLD | NEW |