DescriptionVideo 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=dcheng@chromium.org for media_param_traits.cc
(Rationale: the change is small and I'm still going to be
actively working in this area so we can follow up in
other reviews).
Committed: https://crrev.com/957fb245c45052e2c4b2bb0f59e165ba05096904
Cr-Commit-Position: refs/heads/master@{#335872}
Patch Set 1 : #
Total comments: 6
Patch Set 2 : miu@s comments #Patch Set 3 : Tracker working with VideoPixel{Format,Storage} ISO VideoFrame counterparts. Rebased. #
Total comments: 4
Patch Set 4 : hubbe@s comments and minor rebase #
Total comments: 27
Patch Set 5 : second round of comments from hubbe@. Rebase #
Total comments: 12
Patch Set 6 : miu@ comments. Rebase #Patch Set 7 : miu@s comments #
Total comments: 4
Messages
Total messages: 39 (17 generated)
|