OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/renderer_host/media/media_stream_manager.h" | 5 #include "content/browser/renderer_host/media/media_stream_manager.h" |
6 | 6 |
7 #include <list> | 7 #include <list> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 MediaStreamManager::~MediaStreamManager() { | 158 MediaStreamManager::~MediaStreamManager() { |
159 DCHECK(requests_.empty()); | 159 DCHECK(requests_.empty()); |
160 DCHECK(!device_thread_.get()); | 160 DCHECK(!device_thread_.get()); |
161 DCHECK(!io_loop_); | 161 DCHECK(!io_loop_); |
162 } | 162 } |
163 | 163 |
164 VideoCaptureManager* MediaStreamManager::video_capture_manager() { | 164 VideoCaptureManager* MediaStreamManager::video_capture_manager() { |
165 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); | 165 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
166 EnsureDeviceManagersStarted(); | 166 EnsureDeviceManagersStarted(); |
167 DCHECK(video_capture_manager_); | 167 DCHECK(video_capture_manager_); |
168 return video_capture_manager_; | 168 return video_capture_manager_.get(); |
169 } | 169 } |
170 | 170 |
171 AudioInputDeviceManager* MediaStreamManager::audio_input_device_manager() { | 171 AudioInputDeviceManager* MediaStreamManager::audio_input_device_manager() { |
172 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); | 172 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
173 EnsureDeviceManagersStarted(); | 173 EnsureDeviceManagersStarted(); |
174 DCHECK(audio_input_device_manager_); | 174 DCHECK(audio_input_device_manager_); |
175 return audio_input_device_manager_; | 175 return audio_input_device_manager_.get(); |
176 } | 176 } |
177 | 177 |
178 void MediaStreamManager::MakeMediaAccessRequest( | 178 void MediaStreamManager::MakeMediaAccessRequest( |
179 int render_process_id, | 179 int render_process_id, |
180 int render_view_id, | 180 int render_view_id, |
181 const StreamOptions& options, | 181 const StreamOptions& options, |
182 const GURL& security_origin, | 182 const GURL& security_origin, |
183 const MediaRequestResponseCallback& callback, | 183 const MediaRequestResponseCallback& callback, |
184 std::string* label) { | 184 std::string* label) { |
185 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); | 185 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
552 return; | 552 return; |
553 | 553 |
554 device_thread_.reset(new base::Thread("MediaStreamDeviceThread")); | 554 device_thread_.reset(new base::Thread("MediaStreamDeviceThread")); |
555 #if defined(OS_WIN) | 555 #if defined(OS_WIN) |
556 device_thread_->init_com_with_mta(true); | 556 device_thread_->init_com_with_mta(true); |
557 #endif | 557 #endif |
558 CHECK(device_thread_->Start()); | 558 CHECK(device_thread_->Start()); |
559 | 559 |
560 audio_input_device_manager_ = new AudioInputDeviceManager(audio_manager_); | 560 audio_input_device_manager_ = new AudioInputDeviceManager(audio_manager_); |
561 audio_input_device_manager_->Register(this, | 561 audio_input_device_manager_->Register(this, |
562 device_thread_->message_loop_proxy()); | 562 device_thread_-> |
| 563 message_loop_proxy().get()); |
563 | 564 |
564 video_capture_manager_ = new VideoCaptureManager(); | 565 video_capture_manager_ = new VideoCaptureManager(); |
565 video_capture_manager_->Register(this, device_thread_->message_loop_proxy()); | 566 video_capture_manager_-> |
| 567 Register(this, device_thread_->message_loop_proxy().get()); |
566 | 568 |
567 // We want to be notified of IO message loop destruction to delete the thread | 569 // We want to be notified of IO message loop destruction to delete the thread |
568 // and the device managers. | 570 // and the device managers. |
569 io_loop_ = MessageLoop::current(); | 571 io_loop_ = MessageLoop::current(); |
570 io_loop_->AddDestructionObserver(this); | 572 io_loop_->AddDestructionObserver(this); |
571 } | 573 } |
572 | 574 |
573 void MediaStreamManager::Opened(MediaStreamType stream_type, | 575 void MediaStreamManager::Opened(MediaStreamType stream_type, |
574 int capture_session_id) { | 576 int capture_session_id) { |
575 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); | 577 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
(...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1010 it != requests_.end(); ++it) { | 1012 it != requests_.end(); ++it) { |
1011 if (it->second.type == DeviceRequest::ENUMERATE_DEVICES && | 1013 if (it->second.type == DeviceRequest::ENUMERATE_DEVICES && |
1012 Requested(it->second.options, stream_type)) { | 1014 Requested(it->second.options, stream_type)) { |
1013 return true; | 1015 return true; |
1014 } | 1016 } |
1015 } | 1017 } |
1016 return false; | 1018 return false; |
1017 } | 1019 } |
1018 | 1020 |
1019 } // namespace content | 1021 } // namespace content |
OLD | NEW |