[Mojo Video Capture] Add support for ImageCapture API to video_capture service

Desktop / Chromium - Christian Fremerey [chromium.org] - 14 June 2017 20:28 EDT

This CL is part of the Mojo Video Capture work. For the bigger picture, see [1] CL26.1.

Adds methods to video_capture service's Device interface to bring it on par with interface media::VideoCaptureDevice. Besides three methods RequestRefreshFrame() MaybeSuspend() Resume() which simply forward an event, this consists of methods for the ImageCapture API.

Use existing integration test for the ImageCaptureAPI. Make the tests run both with and without the Mojo service.

[1] https://docs.google.com/a/chromium.org/document/d/1Qw7rw1AJy0QHXjha36jZNiEuxsxWslJ_X-zpOhijvI8/edit?usp=sharing

content_browsertests --gtest_filter="WebRtcImageCapture*"

BUG: 584797 TEST: Change-Id: I8ab26be74bc0b8f666dcf9b4b20559403e1e0120 Reviewed-on: https://chromium-review.googlesource.com/526254 Commit-Queue: Christian Fremerey

dd68266 [Mojo Video Capture] Add support for ImageCapture API to video_capture service
.../media/service_launched_video_capture_device.cc | 43 ++++-
.../media/service_launched_video_capture_device.h | 9 +
.../webrtc/webrtc_image_capture_browsertest.cc | 194 ++++++++++++++++++---
content/test/data/media/image_capture_test.html | 32 +++-
media/capture/video/fake_video_capture_device.cc | 25 ++-
media/capture/video/fake_video_capture_device.h | 18 +-
.../video/fake_video_capture_device_factory.cc | 63 +++++--
.../video/fake_video_capture_device_factory.h | 13 +-
media/capture/video/video_capture_device.h | 8 +-
.../video_capture/device_media_to_mojo_adapter.cc | 80 +++++++++
.../video_capture/device_media_to_mojo_adapter.h | 8 +-
services/video_capture/public/interfaces/BUILD.gn | 1 +
.../video_capture/public/interfaces/device.mojom | 10 ++
13 files changed, 443 insertions(+), 61 deletions(-)

Upstream: git.chromium.org


  • Share