forked from chromium/chromium
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Modify the Mojo interfaces so that clients interact with the VideoCap…
…tureDeviceClient interface instead of VideoCaptureDevice. This CL is part of the Mojo Video Capture work. For the bigger picture, see [1] CL1.7.1. * Instead of exposing the interface mojom::VideoCaptureDeviceClient (which is the mojo equivalent of media::VideoCaptureDevice::Client) to clients of the Mojo service, use the implementation media::VideoCaptureDeviceClient inside the service and expose its client interface (media::VideoFrameReceiver) as mojom::VideoFrameReceiver to clients of the service. * Add class video_capture::BufferTrackerFactory, and use it as the Mojo service's implementation of media::VideoCaptureBufferTrackerFactory required to operate the media::VideoCaptureDeviceClient. The buffers it creates are backed by MojoSharedBufferVideoFrames. * Add support to VideoCaptureDeviceClient for buffers that are backed by video frames in order to avoid wrapping the MojoSharedBufferVideoFrame-backed buffers in another VideoFrame. BUG=584797 TEST=content_unittest, capture_unittest, video_capture_unittest [1] https://docs.google.com/a/chromium.org/document/d/1Qw7rw1AJy0QHXjha36jZNiEuxsxWslJ_X-zpOhijvI8/edit?usp=sharing Review-Url: https://codereview.chromium.org/2378943002 Cr-Commit-Position: refs/heads/master@{#424550}
- Loading branch information
chfremer
authored and
Commit bot
committed
Oct 11, 2016
1 parent
4155c92
commit a15bab5
Showing
35 changed files
with
503 additions
and
274 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
// Copyright 2016 The Chromium Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style license that can be | ||
// found in the LICENSE file. | ||
|
||
#include "services/video_capture/buffer_tracker_factory_impl.h" | ||
|
||
#include "base/memory/ptr_util.h" | ||
#include "services/video_capture/mojo_shared_memory_buffer_tracker.h" | ||
|
||
namespace video_capture { | ||
|
||
std::unique_ptr<media::VideoCaptureBufferTracker> | ||
BufferTrackerFactoryImpl::CreateTracker(media::VideoPixelStorage storage) { | ||
switch (storage) { | ||
case media::PIXEL_STORAGE_CPU: | ||
return base::MakeUnique<MojoSharedMemoryBufferTracker>(); | ||
} | ||
NOTREACHED(); | ||
return std::unique_ptr<media::VideoCaptureBufferTracker>(); | ||
} | ||
|
||
} // namespace video_capture |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
// Copyright 2016 The Chromium Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style license that can be | ||
// found in the LICENSE file. | ||
|
||
#ifndef SERVICES_VIDEO_CAPTURE_BUFFER_TRACKER_FACTORY_IMPL_H_ | ||
#define SERVICES_VIDEO_CAPTURE_BUFFER_TRACKER_FACTORY_IMPL_H_ | ||
|
||
#include <memory> | ||
|
||
#include "media/capture/video/video_capture_buffer_tracker_factory.h" | ||
|
||
namespace video_capture { | ||
|
||
// Implementation of media::VideoCaptureBufferTrackerFactory specific to the | ||
// Mojo Video Capture service. It produces buffers that are backed by | ||
// mojo shared memory. | ||
class BufferTrackerFactoryImpl | ||
: public media::VideoCaptureBufferTrackerFactory { | ||
public: | ||
std::unique_ptr<media::VideoCaptureBufferTracker> CreateTracker( | ||
media::VideoPixelStorage storage) override; | ||
}; | ||
|
||
} // namespace video_capture | ||
|
||
#endif // SERVICES_VIDEO_CAPTURE_BUFFER_TRACKER_FACTORY_IMPL_H_ |
84 changes: 0 additions & 84 deletions
84
services/video_capture/device_client_mojo_to_media_adapter.cc
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.