| Index: media/capture/video/fake_video_capture_device_factory.cc
|
| diff --git a/media/capture/video/fake_video_capture_device_factory.cc b/media/capture/video/fake_video_capture_device_factory.cc
|
| index 38ef6054ecb237593f6ec916050fb036b80aa2b0..1f96affc8029a48cbcce267e5fdc54f5f5ec14e0 100644
|
| --- a/media/capture/video/fake_video_capture_device_factory.cc
|
| +++ b/media/capture/video/fake_video_capture_device_factory.cc
|
| @@ -13,6 +13,18 @@
|
| #include "build/build_config.h"
|
| #include "media/base/media_switches.h"
|
|
|
| +namespace {
|
| +
|
| +media::VideoPixelFormat get_pixelformat(const std::string& device_id) {
|
| + if (device_id == "/dev/video1")
|
| + return media::PIXEL_FORMAT_Y16;
|
| + else if (device_id == "/dev/video2")
|
| + return media::PIXEL_FORMAT_Y8;
|
| + return media::PIXEL_FORMAT_I420;
|
| +}
|
| +
|
| +}
|
| +
|
| namespace media {
|
|
|
| // Cap the frame rate command line input to reasonable values.
|
| @@ -22,7 +34,7 @@ static const float kFakeCaptureMaxFrameRate = 60.0f;
|
| static const float kFakeCaptureDefaultFrameRate = 20.0f;
|
|
|
| FakeVideoCaptureDeviceFactory::FakeVideoCaptureDeviceFactory()
|
| - : number_of_devices_(1),
|
| + : number_of_devices_(2),
|
| fake_vcd_ownership_(FakeVideoCaptureDevice::BufferOwnership::OWN_BUFFERS),
|
| frame_rate_(kFakeCaptureDefaultFrameRate) {}
|
|
|
| @@ -35,8 +47,8 @@ std::unique_ptr<VideoCaptureDevice> FakeVideoCaptureDeviceFactory::CreateDevice(
|
| for (int n = 0; n < number_of_devices_; ++n) {
|
| std::string possible_id = base::StringPrintf("/dev/video%d", n);
|
| if (device_descriptor.device_id.compare(possible_id) == 0) {
|
| - return std::unique_ptr<VideoCaptureDevice>(
|
| - new FakeVideoCaptureDevice(fake_vcd_ownership_, frame_rate_));
|
| + return std::unique_ptr<VideoCaptureDevice>(new FakeVideoCaptureDevice(
|
| + fake_vcd_ownership_, frame_rate_, get_pixelformat(possible_id)));
|
| }
|
| }
|
| return std::unique_ptr<VideoCaptureDevice>();
|
| @@ -72,8 +84,8 @@ void FakeVideoCaptureDeviceFactory::GetSupportedFormats(
|
| gfx::Size(1920, 1080)};
|
| supported_formats->clear();
|
| for (const auto& size : supported_sizes) {
|
| - supported_formats->push_back(
|
| - VideoCaptureFormat(size, frame_rate_, media::PIXEL_FORMAT_I420));
|
| + supported_formats->push_back(VideoCaptureFormat(
|
| + size, frame_rate_, get_pixelformat(device_descriptor.device_id)));
|
| }
|
| }
|
|
|
|
|