DescriptionReland [Mojo Video Capture] Decouple VideoCaptureController from VideoCaptureBufferPool and VideoCaptureDeviceClient
PatchSet 1 is the state as reviewed and landed previously, see
https://codereview.chromium.org/2551193002/
This state caused a regression where video capture would be stuck in a loop of
old frames on Android when moving the browser to the background and bringing it
back to the foreground. This was caused by a new buffer pool instance being
created instead of the existing one being reused, while the renderer side would
still be pointing to buffers of the previous instance.
PatchSet 2 applies a fix for this issue.
Below is the CL description of the original CL:
Decouple VideoCaptureController from VideoCaptureBufferPool and
VideoCaptureDeviceClient. This is needed in order to prepare
VideoCaptureController for working with both the (legacy) in-process video
capture and the new video_capture Mojo service.
List of changes:
* Introduce an abstraction FrameBufferPool for the VideoCaptureController to
talk to the VideoCaptureBufferPool.
* Move VideoFrameReceiverOnIOThread to separate file.
* Move factory logic for creating and connecting
VideoCaptureBufferPoolImpl and VideoCaptureDeviceClient out of
VideoCaptureController and into VideoCaptureManager as well as the tests.
* Update OWNERS to include new file and include chfremer as owner.
* In VideoCaptureDeviceClient: Rename |frame_format| to |foramt|.
This CL is part of the Mojo Video Capture work. For the bigger picture,
see [1] CL1.9.8
BUG=584797
TEST=
content_unittests,
video_capture_unittests,
Apprtc loopback on Debug,
Desktop Capture Example extension on Release
[1] https://docs.google.com/a/chromium.org/document/d/1Qw7rw1AJy0QHXjha36jZNiEuxsxWslJ_X-zpOhijvI8/edit?usp=sharing
Committed: https://crrev.com/4f85f2f30f051cf961d28b17e3093dbd67c62661
Cr-Commit-Position: refs/heads/master@{#441261}
Patch Set 1 : State as reviewed previously #Patch Set 2 : Fix for bug 675528 #
Total comments: 2
Patch Set 3 : Rebase #Dependent Patchsets: Messages
Total messages: 25 (16 generated)
|