Chromium Code Reviews| Index: content/browser/renderer_host/media/video_capture_manager.cc |
| diff --git a/content/browser/renderer_host/media/video_capture_manager.cc b/content/browser/renderer_host/media/video_capture_manager.cc |
| index 24880a5759a4fb77c265057242bd5fb93c51fed1..651fc0e9a0be85230049ded17037fd0ea2cb0aec 100644 |
| --- a/content/browser/renderer_host/media/video_capture_manager.cc |
| +++ b/content/browser/renderer_host/media/video_capture_manager.cc |
| @@ -34,6 +34,7 @@ |
| #include "content/public/common/media_stream_request.h" |
| #include "media/base/bind_to_current_loop.h" |
| #include "media/base/media_switches.h" |
| +#include "media/base/video_facing.h" |
| #include "media/capture/video/video_capture_buffer_pool_impl.h" |
| #include "media/capture/video/video_capture_buffer_tracker_factory_impl.h" |
| #include "media/capture/video/video_capture_device.h" |
| @@ -335,10 +336,12 @@ VideoCaptureManager::CaptureDeviceStartRequest::CaptureDeviceStartRequest( |
| } |
| VideoCaptureManager::VideoCaptureManager( |
| - std::unique_ptr<media::VideoCaptureDeviceFactory> factory) |
| + std::unique_ptr<media::VideoCaptureDeviceFactory> factory, |
| + component::VideoCaptureOberser observer) |
| : listener_(nullptr), |
| new_capture_session_id_(1), |
| - video_capture_device_factory_(std::move(factory)) {} |
| + video_capture_device_factory_(std::move(factory)), |
| + capture_observer_(observer) {} |
| VideoCaptureManager::~VideoCaptureManager() { |
| DCHECK(devices_.empty()); |
| @@ -653,6 +656,24 @@ VideoCaptureManager::DoStartDeviceCaptureOnDeviceThread( |
| return nullptr; |
| } |
| + if (capture_observer_ != NULL) { |
| + component::VideoFacingMode facing = |
| + component::VideoFacingMode::NONE; |
| + switch (descriptor.facing) { |
| + case media::MEDIA_VIDEO_FACING_NONE: |
| + case media::NUM_MEDIA_VIDEO_FACING_MODE: |
| + facing = component::VideoFacingMode::NONE; |
| + break; |
| + case media::MEDIA_VIDEO_FACING_USER: |
| + facing = component::VideoFacingMode::USER; |
| + break; |
| + case media::MEDIA_VIDEO_FACING_ENVIRONMENT: |
| + facing = component::VideoFacingMode::ENVIRONMENT; |
| + break; |
| + } |
| + capture_observer_->OnVideoCaptureStarted(facing); |
|
chfremer
2017/01/20 18:23:53
Where will we call OnVideoCaptureStopped()?
shenghao
2017/01/24 12:52:01
Oh I forgot to add it.
|
| + } |
| + |
| video_capture_device->AllocateAndStart(params, std::move(device_client)); |
| return video_capture_device; |
| } |