summaryrefslogtreecommitdiff
path: root/chromium/media/capture/video/video_capture_device_client.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-01-20 13:40:20 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-01-22 12:41:23 +0000
commit7961cea6d1041e3e454dae6a1da660b453efd238 (patch)
treec0eeb4a9ff9ba32986289c1653d9608e53ccb444 /chromium/media/capture/video/video_capture_device_client.cc
parentb7034d0803538058e5c9d904ef03cf5eab34f6ef (diff)
downloadqtwebengine-chromium-7961cea6d1041e3e454dae6a1da660b453efd238.tar.gz
BASELINE: Update Chromium to 78.0.3904.130
Change-Id: If185e0c0061b3437531c97c9c8c78f239352a68b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/media/capture/video/video_capture_device_client.cc')
-rw-r--r--chromium/media/capture/video/video_capture_device_client.cc28
1 files changed, 9 insertions, 19 deletions
diff --git a/chromium/media/capture/video/video_capture_device_client.cc b/chromium/media/capture/video/video_capture_device_client.cc
index 6f0013f9beb..1f056943965 100644
--- a/chromium/media/capture/video/video_capture_device_client.cc
+++ b/chromium/media/capture/video/video_capture_device_client.cc
@@ -31,11 +31,9 @@ namespace {
bool IsFormatSupported(media::VideoPixelFormat pixel_format) {
return (pixel_format == media::PIXEL_FORMAT_I420 ||
-#if defined(OS_CHROMEOS)
- // Used by GpuMemoryBuffer on Chrome OS.
+ // NV12 and MJPEG are used by GpuMemoryBuffer on Chrome OS.
pixel_format == media::PIXEL_FORMAT_NV12 ||
pixel_format == media::PIXEL_FORMAT_MJPEG ||
-#endif
pixel_format == media::PIXEL_FORMAT_Y16);
}
@@ -128,24 +126,19 @@ class BufferPoolBufferHandleProvider
int buffer_id)
: buffer_pool_(std::move(buffer_pool)), buffer_id_(buffer_id) {}
- // Implementation of HandleProvider:
- mojo::ScopedSharedBufferHandle GetHandleForInterProcessTransit(
- bool read_only) override {
- return buffer_pool_->GetHandleForInterProcessTransit(buffer_id_, read_only);
+ base::UnsafeSharedMemoryRegion DuplicateAsUnsafeRegion() override {
+ return buffer_pool_->DuplicateAsUnsafeRegion(buffer_id_);
}
- base::SharedMemoryHandle GetNonOwnedSharedMemoryHandleForLegacyIPC()
- override {
- return buffer_pool_->GetNonOwnedSharedMemoryHandleForLegacyIPC(buffer_id_);
+ mojo::ScopedSharedBufferHandle DuplicateAsMojoBuffer() override {
+ return buffer_pool_->DuplicateAsMojoBuffer(buffer_id_);
+ }
+ gfx::GpuMemoryBufferHandle GetGpuMemoryBufferHandle() override {
+ return buffer_pool_->GetGpuMemoryBufferHandle(buffer_id_);
}
std::unique_ptr<VideoCaptureBufferHandle> GetHandleForInProcessAccess()
override {
return buffer_pool_->GetHandleForInProcessAccess(buffer_id_);
}
-#if defined(OS_CHROMEOS)
- gfx::GpuMemoryBufferHandle GetGpuMemoryBufferHandle() override {
- return buffer_pool_->GetGpuMemoryBufferHandle(buffer_id_);
- }
-#endif
private:
const scoped_refptr<VideoCaptureBufferPool> buffer_pool_;
@@ -490,8 +483,7 @@ VideoCaptureDeviceClient::ReserveOutputBuffer(const gfx::Size& frame_size,
switch (target_buffer_type_) {
case VideoCaptureBufferType::kSharedMemory:
buffer_handle->set_shared_buffer_handle(
- buffer_pool_->GetHandleForInterProcessTransit(buffer_id,
- true /*read_only*/));
+ buffer_pool_->DuplicateAsMojoBuffer(buffer_id));
break;
case VideoCaptureBufferType::kSharedMemoryViaRawFileDescriptor:
buffer_handle->set_shared_memory_via_raw_file_descriptor(
@@ -501,12 +493,10 @@ VideoCaptureDeviceClient::ReserveOutputBuffer(const gfx::Size& frame_size,
case VideoCaptureBufferType::kMailboxHolder:
NOTREACHED();
break;
-#if defined(OS_CHROMEOS)
case VideoCaptureBufferType::kGpuMemoryBuffer:
buffer_handle->set_gpu_memory_buffer_handle(
buffer_pool_->GetGpuMemoryBufferHandle(buffer_id));
break;
-#endif
}
receiver_->OnNewBuffer(buffer_id, std::move(buffer_handle));
buffer_ids_known_by_receiver_.push_back(buffer_id);