$NetBSD: patch-src_3rdparty_chromium_media_base_video__frame.cc,v 1.2 2022/04/18 11:18:19 adam Exp $ --- src/3rdparty/chromium/media/base/video_frame.cc.orig 2021-02-19 16:41:59.000000000 +0000 +++ src/3rdparty/chromium/media/base/video_frame.cc @@ -60,7 +60,7 @@ std::string VideoFrame::StorageTypeToStr return "OWNED_MEMORY"; case VideoFrame::STORAGE_SHMEM: return "SHMEM"; -#if defined(OS_LINUX) || defined(OS_CHROMEOS) +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) case VideoFrame::STORAGE_DMABUFS: return "DMABUFS"; #endif @@ -77,7 +77,7 @@ std::string VideoFrame::StorageTypeToStr // static bool VideoFrame::IsStorageTypeMappable(VideoFrame::StorageType storage_type) { return -#if defined(OS_LINUX) || defined(OS_CHROMEOS) +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) // This is not strictly needed but makes explicit that, at VideoFrame // level, DmaBufs are not mappable from userspace. storage_type != VideoFrame::STORAGE_DMABUFS && @@ -262,7 +262,7 @@ static base::Optional return VideoFrameLayout::CreateWithPlanes(format, coded_size, planes); } -#if defined(OS_LINUX) || defined(OS_CHROMEOS) +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) // This class allows us to embed a vector into a scoped_refptr, and // thus to have several VideoFrames share the same set of DMABUF FDs. class VideoFrame::DmabufHolder @@ -645,7 +645,7 @@ scoped_refptr VideoFrame::Wr return frame; } -#if defined(OS_LINUX) || defined(OS_CHROMEOS) +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) // static scoped_refptr VideoFrame::WrapExternalDmabufs( const VideoFrameLayout& layout, @@ -847,7 +847,7 @@ scoped_refptr VideoFrame::Wr } } -#if defined(OS_LINUX) || defined(OS_CHROMEOS) +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) DCHECK(frame->dmabuf_fds_); // If there are any |dmabuf_fds_| plugged in, we should refer them too. wrapping_frame->dmabuf_fds_ = frame->dmabuf_fds_; @@ -1190,7 +1190,7 @@ VideoFrame::mailbox_holder(size_t textur : mailbox_holders_[texture_index]; } -#if defined(OS_LINUX) || defined(OS_CHROMEOS) +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) const std::vector& VideoFrame::DmabufFds() const { DCHECK_EQ(storage_type_, STORAGE_DMABUFS); @@ -1273,7 +1273,7 @@ VideoFrame::VideoFrame(const VideoFrameL storage_type_(storage_type), visible_rect_(Intersection(visible_rect, gfx::Rect(layout.coded_size()))), natural_size_(natural_size), -#if defined(OS_LINUX) || defined(OS_CHROMEOS) +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD) dmabuf_fds_(base::MakeRefCounted()), #endif timestamp_(timestamp),