#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "media/renderers/shared_image_video_frame_test_utils.h"
#include "base/logging.h"
#include "components/viz/common/resources/shared_image_format.h"
#include "gpu/command_buffer/client/client_shared_image.h"
#include "gpu/command_buffer/client/raster_interface.h"
#include "gpu/command_buffer/client/shared_image_interface.h"
#include "gpu/command_buffer/common/capabilities.h"
#include "gpu/command_buffer/common/shared_image_usage.h"
#include "third_party/skia/include/core/SkPixmap.h"
#include "third_party/skia/include/core/SkYUVAInfo.h"
#include "third_party/skia/include/core/SkYUVAPixmaps.h"
namespace media {
namespace {
static constexpr const uint8_t kYuvColors[8][3] = …;
void DestroySharedImage(scoped_refptr<gpu::ClientSharedImage> shared_image,
base::OnceClosure callback,
const gpu::SyncToken& sync_token) { … }
scoped_refptr<VideoFrame> CreateSharedImageFrame(
VideoPixelFormat format,
scoped_refptr<gpu::ClientSharedImage> shared_image,
const gpu::SyncToken& sync_token,
GLenum texture_target,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
const gfx::Size& natural_size,
base::TimeDelta timestamp,
base::OnceClosure destroyed_callback) { … }
}
scoped_refptr<VideoFrame> CreateSharedImageRGBAFrame(
scoped_refptr<viz::RasterContextProvider> context_provider,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
base::OnceClosure destroyed_callback) { … }
scoped_refptr<VideoFrame> CreateSharedImageI420Frame(
scoped_refptr<viz::RasterContextProvider> context_provider,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
base::OnceClosure destroyed_callback) { … }
scoped_refptr<VideoFrame> CreateSharedImageNV12Frame(
scoped_refptr<viz::RasterContextProvider> context_provider,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
base::OnceClosure destroyed_callback) { … }
}