Description[Mojo Video Capture] Hook up video capture service behind a feature flag
This CL is part of the Mojo Video Capture work. For the bigger picture,
see [1] CL25.
After this CL, the video capture service can be enabled by starting Chrome with
command-line flag --enable-features=MojoVideoCapture.
Changes in this CL:
* Add a base::Feature kMojoVideoCapture to allow switching the service on and
off.
* Add a class VideoCaptureProviderSwitcher that can route device capture
requests to the service's VideoCaptureProvider while routing screen capture
requests to the InProcessVideoCaptureProvider.
* Hook up the VideoCaptureProviderSwitcher in the factory code in
MediaStreamManager.
* Register video capture service in the service manager context for the Browser
process.
* Remove build flag "enable_mojo_video_capture", since we want the service to
be testable in all builds.
* Forward switches for using fake video capture devices to utility processes.
* Add test cases for exercising the service to VideoCaptureBrowserTest.
BUG=584797
TEST=
content_browsertests --gtest_filter="VideoCaptureBrowserTest.*"
[1] https://docs.google.com/a/chromium.org/document/d/1Qw7rw1AJy0QHXjha36jZNiEuxsxWslJ_X-zpOhijvI8/edit?usp=sharing
Review-Url: https://codereview.chromium.org/2867213004
Cr-Commit-Position: refs/heads/master@{#473358}
Committed: https://chromium.googlesource.com/chromium/src/+/d99842d2bfbffba9b80aaa81aced1f1e7ebb39c8
Patch Set 1 #Patch Set 2 : Rebase to May 9th #Patch Set 3 : Fix mojo::MakeRequest(&device) happening after base::Passed(&device). #
Total comments: 24
Patch Set 4 : Incorporate suggestions from Patch Set 3 #Patch Set 5 : Incorporate more suggestions from Patch Set 3 #
Total comments: 19
Patch Set 6 : Incorporate suggestions from PatchSet 5 #
Total comments: 4
Patch Set 7 : Incorporate suggestions from PatchSet#6 #Patch Set 8 : Fix for compile on Windows #Patch Set 9 : Rebase to May 19th #Depends on Patchset: Dependent Patchsets: Messages
Total messages: 54 (37 generated)
|