Index: content/browser/renderer_host/media/video_capture_controller.cc |
diff --git a/content/browser/renderer_host/media/video_capture_controller.cc b/content/browser/renderer_host/media/video_capture_controller.cc |
index 35dad208ec2d6928e3c645f91ea25a68e76ba650..f8efa6e36894fca03a94c131536ffadf5f29eef5 100644 |
--- a/content/browser/renderer_host/media/video_capture_controller.cc |
+++ b/content/browser/renderer_host/media/video_capture_controller.cc |
@@ -166,7 +166,9 @@ void VideoCaptureController::AddClient( |
// Check that requested VideoCaptureParams are valid and supported. If not, |
// report an error immediately and punt. |
if (!params.IsValid() || |
- params.requested_format.pixel_format != media::PIXEL_FORMAT_I420 || |
+ !(params.requested_format.pixel_format == media::PIXEL_FORMAT_I420 || |
+ params.requested_format.pixel_format == media::PIXEL_FORMAT_Y8 || |
+ params.requested_format.pixel_format == media::PIXEL_FORMAT_Y16) || |
(params.requested_format.pixel_storage != media::PIXEL_STORAGE_CPU && |
params.requested_format.pixel_storage != |
media::PIXEL_STORAGE_GPUMEMORYBUFFER)) { |
@@ -372,7 +374,9 @@ void VideoCaptureController::DoIncomingCapturedVideoFrameOnIOThread( |
frame->metadata()->MergeInternalValuesInto(metadata.get()); |
// Only I420 pixel format is currently supported. |
- DCHECK_EQ(frame->format(), media::PIXEL_FORMAT_I420) |
+ DCHECK(frame->format() == media::PIXEL_FORMAT_I420 || |
+ frame->format() == media::PIXEL_FORMAT_Y8 || |
+ frame->format() == media::PIXEL_FORMAT_Y16) |
<< "Unsupported pixel format: " |
<< media::VideoPixelFormatToString(frame->format()); |
@@ -474,7 +478,8 @@ void VideoCaptureController::DoNewBufferOnIOThread( |
handles.push_back(remote_handle); |
} |
client->event_handler->OnBufferCreated2(client->controller_id, handles, |
- buffer->dimensions(), buffer_id); |
+ buffer->dimensions(), |
+ frame->format(), buffer_id); |
break; |
} |
case media::VideoFrame::STORAGE_SHMEM: { |