Change class VideoCaptureDevice::Name to struct VideoCaptureDeviceDescriptor.
The purpose of this change is to simplify the VideoCaptureDeviceFactory interface in preparation for making it a Mojo interface in a future step. In particular, we want to remove the platform-dependency of the interface.
No new functionality added. This is a refactoring.
This CL is a step towards the larger goal of Mojofication of Video Capture.
For the bigger picture, please refer to the design document at [1].
* Changed VideoCaptureDevice::Name to a struct VideoCaptureDeviceDescriptor
with a platform-independent interface. Moved out of
video_capture_device.h/cc into new files
video_capture_device_descriptor.h/cc.
* Instead of a method VideoCaptureDevice::Name::GetModel(), have |model_id|
be a public field in struct VideoCaptureDeviceDescriptor. Moved the logic
for determining the |model_id| into the platform-specific factory
implementations. As a side-effect, this change eliminates the need for
code that was added in issue 532272 [2].
* Rename VideoCaptureDeviceFactory::Create() to
VideoCaptureDeviceFactory::CreateDevice()
* Moved struct VideoCaptureDeviceInfo closer to its usage. Moved from
media/capture/video to content/browser/media.
[1] https://docs.google.com/a/chromium.org/document/d/1Qw7rw1AJy0QHXjha36jZNiEuxsxWslJ_X-zpOhijvI8/edit?usp=sharing
[2] http://crbug.com/532272
BUG=584797
TEST=Existing tests still pass (trybots). Verified
that issue 532272 does not regress by trying the repro steps in the crbug entry. Successfully conducted an apprtc loopback session on Linux.
Review-Url: https://codereview.chromium.org/2169013002
Cr-Commit-Position: refs/heads/master@{#409199}
53 files changed