diff options
author | hshi@chromium.org <hshi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-03 19:10:43 +0000 |
---|---|---|
committer | hshi@chromium.org <hshi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-03 19:10:43 +0000 |
commit | 66117a668810e1db2aeae50629fb43ae250db0b6 (patch) | |
tree | a0a58b77b8c1009388680090a8eb79cd9654e40d /ppapi | |
parent | 6703c15da1473dad187f80e3613ab4cd389de001 (diff) | |
download | chromium_src-66117a668810e1db2aeae50629fb43ae250db0b6.zip chromium_src-66117a668810e1db2aeae50629fb43ae250db0b6.tar.gz chromium_src-66117a668810e1db2aeae50629fb43ae250db0b6.tar.bz2 |
Remove redundant I420-to-YV12 conversion in MediaStreamVideoTrack.
The I420 and YV12 formats both are almost identical except for the order
of U and V planes in memory. They are effectively the same for renderers
that access U and V plane data via MediaFrame::data(size_t plane).
BUG=341452
BUG=355763
TEST=trybot
R=danakj@chromium.org, dmichael@chromium.org, fischman@chromium.org, perkj@chromium.org, piman@chromium.org
Review URL: https://codereview.chromium.org/222563002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261497 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi')
-rw-r--r-- | ppapi/tests/test_media_stream_video_track.cc | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/ppapi/tests/test_media_stream_video_track.cc b/ppapi/tests/test_media_stream_video_track.cc index 10f7f97..b4f0186 100644 --- a/ppapi/tests/test_media_stream_video_track.cc +++ b/ppapi/tests/test_media_stream_video_track.cc @@ -98,7 +98,8 @@ std::string TestMediaStreamVideoTrack::TestGetFrame() { ASSERT_EQ(PP_OK, cc.result()); pp::VideoFrame frame = cc.output(); ASSERT_FALSE(frame.is_null()); - ASSERT_EQ(frame.GetFormat(), PP_VIDEOFRAME_FORMAT_YV12); + ASSERT_TRUE(frame.GetFormat() == PP_VIDEOFRAME_FORMAT_YV12 || + frame.GetFormat() == PP_VIDEOFRAME_FORMAT_I420); pp::Size size; ASSERT_TRUE(frame.GetSize(&size)); @@ -164,7 +165,13 @@ std::string TestMediaStreamVideoTrack::TestConfigure() { ASSERT_EQ(PP_OK, cc2.result()); pp::VideoFrame frame = cc2.output(); ASSERT_FALSE(frame.is_null()); - ASSERT_EQ(frame.GetFormat(), formats[i].expected_format); + if (formats[i].format != PP_VIDEOFRAME_FORMAT_UNKNOWN) { + ASSERT_EQ(frame.GetFormat(), formats[i].expected_format); + } else { + // Both YV12 and I420 are acceptable as default YUV formats. + ASSERT_TRUE(frame.GetFormat() == PP_VIDEOFRAME_FORMAT_YV12 || + frame.GetFormat() == PP_VIDEOFRAME_FORMAT_I420); + } pp::Size size; ASSERT_TRUE(frame.GetSize(&size)); @@ -206,7 +213,8 @@ std::string TestMediaStreamVideoTrack::TestConfigure() { ASSERT_EQ(PP_OK, cc2.result()); pp::VideoFrame frame = cc2.output(); ASSERT_FALSE(frame.is_null()); - ASSERT_EQ(frame.GetFormat(), PP_VIDEOFRAME_FORMAT_YV12); + ASSERT_TRUE(frame.GetFormat() == PP_VIDEOFRAME_FORMAT_YV12 || + frame.GetFormat() == PP_VIDEOFRAME_FORMAT_I420); pp::Size size; ASSERT_TRUE(frame.GetSize(&size)); |