Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(912)

Unified Diff: media/video/gpu_memory_buffer_video_frame_copier_unittest.cc

Issue 1874733002: media: split GpuMemoryBufferVideoFramePool into GpuMemoryBufferVideoFrameCopier/Pool Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add GpuMemoryBufferVideoFramePoolTest Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/video/gpu_memory_buffer_video_frame_copier_unittest.cc
diff --git a/media/video/gpu_memory_buffer_video_frame_pool_unittest.cc b/media/video/gpu_memory_buffer_video_frame_copier_unittest.cc
similarity index 83%
copy from media/video/gpu_memory_buffer_video_frame_pool_unittest.cc
copy to media/video/gpu_memory_buffer_video_frame_copier_unittest.cc
index 8374ba699fde41b04e89e0cee5514c14541f3e77..1f709d1ad0f75ea37ba33fc91ef0c384dbe94b2c 100644
--- a/media/video/gpu_memory_buffer_video_frame_pool_unittest.cc
+++ b/media/video/gpu_memory_buffer_video_frame_copier_unittest.cc
@@ -10,7 +10,7 @@
#include "gpu/command_buffer/client/gles2_interface_stub.h"
#include "media/base/video_frame.h"
#include "media/renderers/mock_gpu_video_accelerator_factories.h"
-#include "media/video/gpu_memory_buffer_video_frame_pool.h"
+#include "media/video/gpu_memory_buffer_video_frame_copier.h"
#include "testing/gmock/include/gmock/gmock.h"
namespace media {
@@ -66,9 +66,9 @@ class TestGLES2Interface : public gpu::gles2::GLES2InterfaceStub {
} // unnamed namespace
-class GpuMemoryBufferVideoFramePoolTest : public ::testing::Test {
+class GpuMemoryBufferVideoFrameCopierTest : public ::testing::Test {
public:
- GpuMemoryBufferVideoFramePoolTest() {}
+ GpuMemoryBufferVideoFrameCopierTest() {}
void SetUp() override {
gles2_.reset(new TestGLES2Interface);
media_task_runner_ = make_scoped_refptr(new base::TestSimpleTaskRunner);
@@ -77,13 +77,13 @@ class GpuMemoryBufferVideoFramePoolTest : public ::testing::Test {
new base::ThreadTaskRunnerHandle(media_task_runner_));
mock_gpu_factories_.reset(
new MockGpuVideoAcceleratorFactories(gles2_.get()));
- gpu_memory_buffer_pool_.reset(new GpuMemoryBufferVideoFramePool(
+ gpu_memory_buffer_copier_.reset(new GpuMemoryBufferVideoFrameCopier(
media_task_runner_, copy_task_runner_.get(),
mock_gpu_factories_.get()));
}
void TearDown() override {
- gpu_memory_buffer_pool_.reset();
+ gpu_memory_buffer_copier_.reset();
RunUntilIdle();
mock_gpu_factories_.reset();
}
@@ -123,7 +123,7 @@ class GpuMemoryBufferVideoFramePoolTest : public ::testing::Test {
protected:
scoped_ptr<MockGpuVideoAcceleratorFactories> mock_gpu_factories_;
- scoped_ptr<GpuMemoryBufferVideoFramePool> gpu_memory_buffer_pool_;
+ scoped_ptr<GpuMemoryBufferVideoFrameCopier> gpu_memory_buffer_copier_;
scoped_refptr<base::TestSimpleTaskRunner> media_task_runner_;
scoped_refptr<base::TestSimpleTaskRunner> copy_task_runner_;
// GpuMemoryBufferVideoFramePool uses BindToCurrentLoop(), which requires
@@ -138,21 +138,21 @@ void MaybeCreateHardwareFrameCallback(
*video_frame_output = video_frame;
}
-TEST_F(GpuMemoryBufferVideoFramePoolTest, VideoFrameOutputFormatUnknown) {
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, VideoFrameOutputFormatUnknown) {
scoped_refptr<VideoFrame> software_frame = CreateTestYUVVideoFrame(10);
mock_gpu_factories_->SetVideoFrameOutputFormat(PIXEL_FORMAT_UNKNOWN);
scoped_refptr<VideoFrame> frame;
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
EXPECT_EQ(software_frame.get(), frame.get());
}
-TEST_F(GpuMemoryBufferVideoFramePoolTest, CreateOneHardwareFrame) {
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, CreateOneHardwareFrame) {
scoped_refptr<VideoFrame> software_frame = CreateTestYUVVideoFrame(10);
scoped_refptr<VideoFrame> frame;
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
@@ -161,10 +161,10 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, CreateOneHardwareFrame) {
EXPECT_EQ(3u, gles2_->gen_textures);
}
-TEST_F(GpuMemoryBufferVideoFramePoolTest, ReuseFirstResource) {
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, ReuseFirstResource) {
scoped_refptr<VideoFrame> software_frame = CreateTestYUVVideoFrame(10);
scoped_refptr<VideoFrame> frame;
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
@@ -174,7 +174,7 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, ReuseFirstResource) {
EXPECT_EQ(3u, gles2_->gen_textures);
scoped_refptr<VideoFrame> frame2;
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame2));
RunUntilIdle();
@@ -186,7 +186,7 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, ReuseFirstResource) {
frame2 = nullptr;
RunUntilIdle();
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
@@ -196,13 +196,13 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, ReuseFirstResource) {
EXPECT_NE(frame->mailbox_holder(0).sync_token, sync_token);
}
-TEST_F(GpuMemoryBufferVideoFramePoolTest, DoNotReuseInUse) {
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, DoNotReuseInUse) {
scoped_refptr<VideoFrame> software_frame = CreateTestYUVVideoFrame(10);
scoped_refptr<VideoFrame> frame;
scoped_refptr<VideoFrame> frame2;
// Allocate a frame.
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
EXPECT_NE(software_frame.get(), frame.get());
@@ -211,7 +211,7 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, DoNotReuseInUse) {
EXPECT_EQ(3u, gles2_->gen_textures);
// Allocate a second frame.
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame2));
RunUntilIdle();
EXPECT_NE(software_frame.get(), frame2.get());
@@ -226,7 +226,7 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, DoNotReuseInUse) {
// Set all buffers to be in use, so the next hardware frame will require
// a new allocation.
mock_gpu_factories_->SetGpuMemoryBuffersInUseByMacOSWindowServer(true);
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
EXPECT_NE(software_frame.get(), frame.get());
@@ -236,7 +236,7 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, DoNotReuseInUse) {
// Set the buffers no longer in use, so no new allocations will be made.
mock_gpu_factories_->SetGpuMemoryBuffersInUseByMacOSWindowServer(false);
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame2));
RunUntilIdle();
EXPECT_NE(software_frame.get(), frame2.get());
@@ -245,9 +245,9 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, DoNotReuseInUse) {
EXPECT_NE(frame->mailbox_holder(0).sync_token, sync_token);
}
-TEST_F(GpuMemoryBufferVideoFramePoolTest, DropResourceWhenSizeIsDifferent) {
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, DropResourceWhenSizeIsDifferent) {
scoped_refptr<VideoFrame> frame;
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
CreateTestYUVVideoFrame(10),
base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
@@ -256,18 +256,18 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, DropResourceWhenSizeIsDifferent) {
frame = nullptr;
RunUntilIdle();
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
CreateTestYUVVideoFrame(4),
base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
EXPECT_EQ(6u, gles2_->gen_textures);
}
-TEST_F(GpuMemoryBufferVideoFramePoolTest, CreateOneHardwareUYUVFrame) {
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, CreateOneHardwareUYUVFrame) {
scoped_refptr<VideoFrame> software_frame = CreateTestYUVVideoFrame(10);
scoped_refptr<VideoFrame> frame;
mock_gpu_factories_->SetVideoFrameOutputFormat(PIXEL_FORMAT_UYVY);
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
@@ -278,11 +278,11 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, CreateOneHardwareUYUVFrame) {
media::VideoFrameMetadata::READ_LOCK_FENCES_ENABLED));
}
-TEST_F(GpuMemoryBufferVideoFramePoolTest, CreateOneHardwareNV12Frame) {
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, CreateOneHardwareNV12Frame) {
scoped_refptr<VideoFrame> software_frame = CreateTestYUVVideoFrame(10);
scoped_refptr<VideoFrame> frame;
mock_gpu_factories_->SetVideoFrameOutputFormat(PIXEL_FORMAT_NV12);
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
@@ -294,19 +294,19 @@ TEST_F(GpuMemoryBufferVideoFramePoolTest, CreateOneHardwareNV12Frame) {
}
// AllocateGpuMemoryBuffer can return null (e.g: when the GPU process is down).
-// This test checks that in that case we don't crash and still create the
-// textures.
-TEST_F(GpuMemoryBufferVideoFramePoolTest, AllocateGpuMemoryBufferFail) {
+// This test checks that in that case we don't crash and don't copy it to
+// VideoFrame backed native texture.
+TEST_F(GpuMemoryBufferVideoFrameCopierTest, AllocateGpuMemoryBufferFail) {
scoped_refptr<VideoFrame> software_frame = CreateTestYUVVideoFrame(10);
scoped_refptr<VideoFrame> frame;
mock_gpu_factories_->SetFailToAllocateGpuMemoryBufferForTesting(true);
- gpu_memory_buffer_pool_->MaybeCreateHardwareFrame(
+ gpu_memory_buffer_copier_->MaybeCreateHardwareFrame(
software_frame, base::Bind(MaybeCreateHardwareFrameCallback, &frame));
RunUntilIdle();
- EXPECT_NE(software_frame.get(), frame.get());
- EXPECT_EQ(3u, gles2_->gen_textures);
+ EXPECT_EQ(software_frame.get(), frame.get());
+ EXPECT_EQ(0u, gles2_->gen_textures);
}
} // namespace media
« no previous file with comments | « media/video/gpu_memory_buffer_video_frame_copier.cc ('k') | media/video/gpu_memory_buffer_video_frame_pool.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698