diff options
author | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-05-14 20:35:35 +0000 |
---|---|---|
committer | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-05-14 20:35:35 +0000 |
commit | 629b32899929cc043154ee54a4bf6364eccf5ce6 (patch) | |
tree | 77fb9a472f5b8302d20b836b21992e7e753968bb /media/base/video_frame_unittest.cc | |
parent | 77d7aeebd314325c40d602bdaffe9342e3f4e29e (diff) | |
download | chromium_src-629b32899929cc043154ee54a4bf6364eccf5ce6.zip chromium_src-629b32899929cc043154ee54a4bf6364eccf5ce6.tar.gz chromium_src-629b32899929cc043154ee54a4bf6364eccf5ce6.tar.bz2 |
Add a private opaque pointer option to VideoFrame.
This will allow using types such as EGLImageKHR for decoding and rendering.
Patch by wjia@google.com:
http://codereview.chromium.org/2008005/show
BUG=none
TEST=compiles
Review URL: http://codereview.chromium.org/2137001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47307 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/video_frame_unittest.cc')
-rw-r--r-- | media/base/video_frame_unittest.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/media/base/video_frame_unittest.cc b/media/base/video_frame_unittest.cc index 27e15dc..caa5675 100644 --- a/media/base/video_frame_unittest.cc +++ b/media/base/video_frame_unittest.cc @@ -119,6 +119,8 @@ TEST(VideoFrame, CreateFrame) { EXPECT_FALSE(frame->IsDiscontinuous()); // Test VideoFrame implementation. + EXPECT_EQ(media::VideoFrame::TYPE_SYSTEM_MEMORY, frame->type()); + EXPECT_EQ(media::VideoFrame::YV12, frame->format()); { SCOPED_TRACE(""); InitializeYV12Frame(frame, 0.0f); @@ -173,4 +175,24 @@ TEST(VideoFrame, CreateBlackFrame) { } } +TEST(VideoFrame, CreatePrivateFrame) { + void* private_buffer = NULL; + const base::TimeDelta kTimestampA = base::TimeDelta::FromMicroseconds(1337); + const base::TimeDelta kDurationA = base::TimeDelta::FromMicroseconds(1667); + + // Create an EGL Frame. + scoped_refptr<media::VideoFrame> frame; + VideoFrame::CreatePrivateFrame(media::VideoFrame::TYPE_EGL_IMAGE, + media::VideoFrame::RGBA, 0, 0, + kTimestampA, kDurationA, + private_buffer, &frame); + ASSERT_TRUE(frame); + + // Test |frame| properties. + EXPECT_EQ(media::VideoFrame::TYPE_EGL_IMAGE, frame->type()); + EXPECT_EQ(media::VideoFrame::RGBA, frame->format()); + EXPECT_EQ(private_buffer, frame->private_buffer()); + EXPECT_EQ(NULL, frame->data(VideoFrame::kYPlane)); +} + } // namespace media |