DescriptionReland: Video Capture: extract storage info from pixel format in VideoCaptureFormat.
Relanding https://codereview.chromium.org/1179323002/ with dcheng@
comments addressed.
Original description ---------------------------------------------------
Video Capture: extract storage info from pixel format in VideoCaptureFormat.
Video Capture Devices treat both Texture and GpuMemoryBuffer
as a VideoPixelFormat, but they are storage types. Moreover,
this merging prevents capture devices from indicating a
combination of Storage and Capture formats, i.e.
Texture + ARGB, or GpuMemoryBuffer+YUY2.
This CL separates both concepts and updates necessary
call points. It also extends the translation
VideoCaptureFormat --> VideoFrame in
VideoCaptureDeviceClient and in VideoCaptureBufferPool.
VideoCaptureBufferPool::ReserveOutputBuffer()
also gets a param to specify the StorageType.
This separation also allows for VideoCaptureBufferPool
to operate using VideoPixel{Format, Storage} ISO
VideoFrame types, which spares the constant conversion
between ones and others.
Test: All video captures working exactly as before.
BUG=440843
--------------------------------------------------------------------------
TBR=dalecurtis@chromium.org, miu@chromium.org, hubbe@chromium.org
Rationale: they already LGTM PS1 and the changes
from there onwards are either cosmetic (git cl format,
DCHECK_EQ(expected, actual)) or discussed with dcheng@.
Committed: https://crrev.com/f1beda1770242bdc85112e1b2cd40b172de9cac0
Cr-Commit-Position: refs/heads/master@{#336208}
Patch Set 1 : Uploading verbatim original reverted CL #
Total comments: 6
Patch Set 2 : dcheng@ comments #
Total comments: 10
Patch Set 3 : dcheng@ second round of comments #
Total comments: 4
Patch Set 4 : dcheng@s https://codereview.chromium.org/1210743003/#ps20001 #
Total comments: 5
Patch Set 5 : dcheng@ nit on DCHECK_EQ(expected, actual) #Messages
Total messages: 30 (16 generated)
|