| Index: media/capture/video/shared_memory_buffer_tracker.cc
|
| diff --git a/content/browser/renderer_host/media/shared_memory_buffer_tracker.cc b/media/capture/video/shared_memory_buffer_tracker.cc
|
| similarity index 49%
|
| rename from content/browser/renderer_host/media/shared_memory_buffer_tracker.cc
|
| rename to media/capture/video/shared_memory_buffer_tracker.cc
|
| index 2ac92b269e44bbbbf11a66611e4057218adb1952..d21e35d7863f9005de4b08b04262f14f827678d9 100644
|
| --- a/content/browser/renderer_host/media/shared_memory_buffer_tracker.cc
|
| +++ b/media/capture/video/shared_memory_buffer_tracker.cc
|
| @@ -2,20 +2,19 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "content/browser/renderer_host/media/shared_memory_buffer_tracker.h"
|
| +#include "media/capture/video/shared_memory_buffer_tracker.h"
|
|
|
| #include "base/memory/ptr_util.h"
|
| -#include "content/browser/renderer_host/media/shared_memory_buffer_handle.h"
|
| #include "mojo/public/cpp/system/platform_handle.h"
|
|
|
| -namespace content {
|
| +namespace media {
|
|
|
| SharedMemoryBufferTracker::SharedMemoryBufferTracker()
|
| : VideoCaptureBufferTracker() {}
|
|
|
| bool SharedMemoryBufferTracker::Init(const gfx::Size& dimensions,
|
| - media::VideoPixelFormat format,
|
| - media::VideoPixelStorage storage_type,
|
| + VideoPixelFormat format,
|
| + VideoPixelStorage storage_type,
|
| base::Lock* lock) {
|
| DVLOG(2) << __func__ << "allocating ShMem of " << dimensions.ToString();
|
| set_dimensions(dimensions);
|
| @@ -23,15 +22,14 @@ bool SharedMemoryBufferTracker::Init(const gfx::Size& dimensions,
|
| set_max_pixel_count(dimensions.GetArea());
|
| set_pixel_format(format);
|
| set_storage_type(storage_type);
|
| - mapped_size_ =
|
| - media::VideoCaptureFormat(dimensions, 0.0f, format, storage_type)
|
| - .ImageAllocationSize();
|
| + mapped_size_ = VideoCaptureFormat(dimensions, 0.0f, format, storage_type)
|
| + .ImageAllocationSize();
|
| if (!mapped_size_)
|
| return true;
|
| return shared_memory_.CreateAndMapAnonymous(mapped_size_);
|
| }
|
|
|
| -std::unique_ptr<media::VideoCaptureBufferHandle>
|
| +std::unique_ptr<VideoCaptureBufferHandle>
|
| SharedMemoryBufferTracker::GetBufferHandle() {
|
| return base::MakeUnique<SharedMemoryBufferHandle>(this);
|
| }
|
| @@ -43,4 +41,37 @@ SharedMemoryBufferTracker::GetHandleForTransit() {
|
| mapped_size_, false /* read_only */);
|
| }
|
|
|
| -} // namespace content
|
| +SharedMemoryBufferHandle::SharedMemoryBufferHandle(
|
| + SharedMemoryBufferTracker* tracker)
|
| + : tracker_(tracker) {}
|
| +
|
| +SharedMemoryBufferHandle::~SharedMemoryBufferHandle() = default;
|
| +
|
| +gfx::Size SharedMemoryBufferHandle::dimensions() const {
|
| + return tracker_->dimensions();
|
| +}
|
| +
|
| +size_t SharedMemoryBufferHandle::mapped_size() const {
|
| + return tracker_->mapped_size_;
|
| +}
|
| +
|
| +void* SharedMemoryBufferHandle::data(int plane) {
|
| + DCHECK_EQ(0, plane);
|
| + return tracker_->shared_memory_.memory();
|
| +}
|
| +
|
| +#if defined(OS_POSIX) && !defined(OS_MACOSX)
|
| +base::FileDescriptor SharedMemoryBufferHandle::AsPlatformFile() {
|
| + return tracker_->shared_memory_.handle();
|
| +}
|
| +#endif
|
| +
|
| +bool SharedMemoryBufferHandle::IsBackedByVideoFrame() const {
|
| + return false;
|
| +}
|
| +
|
| +scoped_refptr<VideoFrame> SharedMemoryBufferHandle::GetVideoFrame() {
|
| + return scoped_refptr<VideoFrame>();
|
| +}
|
| +
|
| +} // namespace media
|
|
|