Index: content/browser/renderer_host/media/video_capture_controller.cc |
diff --git a/content/browser/renderer_host/media/video_capture_controller.cc b/content/browser/renderer_host/media/video_capture_controller.cc |
index e1d5d28014181cebe5d9a0f60cc1e3b3ecc30865..87d29819a717eb4fc6219e742721eb47366277d8 100644 |
--- a/content/browser/renderer_host/media/video_capture_controller.cc |
+++ b/content/browser/renderer_host/media/video_capture_controller.cc |
@@ -8,6 +8,7 @@ |
#include "content/browser/browser_thread.h" |
#include "content/browser/renderer_host/media/media_stream_manager.h" |
#include "content/browser/renderer_host/media/video_capture_manager.h" |
+#include "content/browser/resource_context.h" |
#include "media/base/yuv_convert.h" |
// The number of TransportDIBs VideoCaptureController allocate. |
@@ -16,11 +17,13 @@ static const size_t kNoOfDIBS = 3; |
VideoCaptureController::VideoCaptureController( |
const VideoCaptureControllerID& id, |
base::ProcessHandle render_process, |
- VideoCaptureControllerEventHandler* event_handler) |
+ VideoCaptureControllerEventHandler* event_handler, |
+ const content::ResourceContext* resource_context) |
: render_handle_(render_process), |
report_ready_to_delete_(false), |
event_handler_(event_handler), |
- id_(id) { |
+ id_(id), |
+ resource_context_(resource_context) { |
memset(¶ms_, 0, sizeof(params_)); |
} |
@@ -35,21 +38,19 @@ void VideoCaptureController::StartCapture( |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
params_ = params; |
- media_stream::VideoCaptureManager* manager = |
- media_stream::MediaStreamManager::Get()->video_capture_manager(); |
// Order the manager to start the actual capture. |
- manager->Start(params, this); |
+ resource_context_->media_stream_manager()->video_capture_manager()-> |
+ Start(params, this); |
} |
void VideoCaptureController::StopCapture(Task* stopped_task) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
- media_stream::VideoCaptureManager* manager = |
- media_stream::MediaStreamManager::Get()->video_capture_manager(); |
- manager->Stop(params_.session_id, |
- NewRunnableMethod(this, |
- &VideoCaptureController::OnDeviceStopped, |
- stopped_task)); |
+ resource_context_->media_stream_manager()->video_capture_manager()-> |
+ Stop(params_.session_id, |
+ NewRunnableMethod(this, |
+ &VideoCaptureController::OnDeviceStopped, |
+ stopped_task)); |
} |
void VideoCaptureController::ReturnBuffer(int buffer_id) { |
@@ -157,7 +158,7 @@ void VideoCaptureController::OnIncomingCapturedFrame(const uint8* data, |
void VideoCaptureController::OnError() { |
event_handler_->OnError(id_); |
- media_stream::MediaStreamManager::Get()->video_capture_manager()-> |
+ resource_context_->media_stream_manager()->video_capture_manager()-> |
Error(params_.session_id); |
wjia(left Chromium)
2011/08/19 18:09:54
resource_context_ can be accessed only on IO threa
mflodman_chromium_OOO
2011/08/21 19:15:24
Done.
|
} |