Index: content/browser/renderer_host/media/video_capture_device_client.cc |
diff --git a/content/browser/renderer_host/media/video_capture_device_client.cc b/content/browser/renderer_host/media/video_capture_device_client.cc |
index 63345fb1b5457df828f2c380dd3521f7a60c72d5..aa44bd1b9e2895c3a785d44bc1646f4e035d9fad 100644 |
--- a/content/browser/renderer_host/media/video_capture_device_client.cc |
+++ b/content/browser/renderer_host/media/video_capture_device_client.cc |
@@ -105,8 +105,8 @@ void VideoCaptureDeviceClient::OnIncomingCapturedData( |
return; |
} |
- scoped_refptr<Buffer> buffer = ReserveOutputBuffer(VideoFrame::I420, |
- dimensions); |
+ const VideoCaptureFormat format(dimensions, 0.0, media::PIXEL_FORMAT_I420); |
+ scoped_refptr<Buffer> buffer = ReserveOutputBuffer(format); |
if (!buffer.get()) |
return; |
@@ -243,8 +243,7 @@ VideoCaptureDeviceClient::OnIncomingCapturedYuvData( |
DCHECK_EQ(frame_format.pixel_format, media::PIXEL_FORMAT_I420); |
DCHECK_EQ(clockwise_rotation, 0) << "Rotation not supported"; |
- scoped_refptr<Buffer> buffer = ReserveOutputBuffer(VideoFrame::I420, |
- frame_format.frame_size); |
+ scoped_refptr<Buffer> buffer = ReserveOutputBuffer(frame_format); |
if (!buffer.get()) |
return; |
@@ -301,19 +300,21 @@ VideoCaptureDeviceClient::OnIncomingCapturedYuvData( |
}; |
scoped_refptr<media::VideoCaptureDevice::Client::Buffer> |
-VideoCaptureDeviceClient::ReserveOutputBuffer(VideoFrame::Format format, |
- const gfx::Size& dimensions) { |
- const size_t frame_bytes = VideoFrame::AllocationSize(format, dimensions); |
- if (format == VideoFrame::NATIVE_TEXTURE) { |
- DCHECK_EQ(dimensions.width(), 0); |
- DCHECK_EQ(dimensions.height(), 0); |
+VideoCaptureDeviceClient::ReserveOutputBuffer( |
+ const media::VideoCaptureFormat& format) { |
+ DCHECK(format.pixel_format == media::PIXEL_FORMAT_TEXTURE || |
+ format.pixel_format == media::PIXEL_FORMAT_I420); |
+ if (format.pixel_format == media::PIXEL_FORMAT_TEXTURE) { |
miu
2015/04/08 01:20:00
IMO, you should just delete lines 307-313 and repl
mcasas
2015/04/08 22:07:06
Done.
|
+ DCHECK_EQ(format.frame_size.width(), 0); |
+ DCHECK_EQ(format.frame_size.height(), 0); |
} else { |
- DLOG_IF(ERROR, frame_bytes == 0) << "Error calculating allocation size"; |
+ DLOG_IF(ERROR, format.ImageAllocationSize() == 0) |
+ << "Error calculating allocation size"; |
} |
int buffer_id_to_drop = VideoCaptureBufferPool::kInvalidId; |
- const int buffer_id = |
- buffer_pool_->ReserveForProducer(frame_bytes, &buffer_id_to_drop); |
+ const int buffer_id = buffer_pool_->ReserveForProducer( |
+ format, &buffer_id_to_drop); |
if (buffer_id == VideoCaptureBufferPool::kInvalidId) |
return NULL; |
void* data; |