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

Side by Side Diff: webrtc/common_video/i420_video_frame_unittest.cc

Issue 2517173004: Move VideoFrame and related declarations to webrtc/api/video. (Closed)
Patch Set: Make rotation check clearer. Created 3 years, 11 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 unified diff | Download patch
« no previous file with comments | « webrtc/common_video/BUILD.gn ('k') | webrtc/common_video/include/corevideo_frame_buffer.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #include <math.h> 11 #include <math.h>
12 #include <string.h> 12 #include <string.h>
13 13
14 #include "webrtc/api/video/video_frame.h"
14 #include "webrtc/base/bind.h" 15 #include "webrtc/base/bind.h"
16 #include "webrtc/base/timeutils.h"
15 #include "webrtc/test/fake_texture_frame.h" 17 #include "webrtc/test/fake_texture_frame.h"
16 #include "webrtc/test/frame_utils.h" 18 #include "webrtc/test/frame_utils.h"
17 #include "webrtc/test/gtest.h" 19 #include "webrtc/test/gtest.h"
18 #include "webrtc/video_frame.h"
19 20
20 namespace webrtc { 21 namespace webrtc {
21 22
22 namespace { 23 namespace {
23 24
24 rtc::scoped_refptr<I420Buffer> CreateGradient(int width, int height) { 25 rtc::scoped_refptr<I420Buffer> CreateGradient(int width, int height) {
25 rtc::scoped_refptr<I420Buffer> buffer( 26 rtc::scoped_refptr<I420Buffer> buffer(
26 I420Buffer::Create(width, height)); 27 I420Buffer::Create(width, height));
27 // Initialize with gradient, Y = 128(x/w + y/h), U = 256 x/w, V = 256 y/h 28 // Initialize with gradient, Y = 128(x/w + y/h), U = 256 x/w, V = 256 y/h
28 for (int x = 0; x < width; x++) { 29 for (int x = 0; x < width; x++) {
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 scaled_buffer->CropAndScaleFrom(*buf); 274 scaled_buffer->CropAndScaleFrom(*buf);
274 CheckCrop(*scaled_buffer, 0.0, 0.125, 1.0, 0.75); 275 CheckCrop(*scaled_buffer, 0.0, 0.125, 1.0, 0.75);
275 } 276 }
276 277
277 class TestI420BufferRotate 278 class TestI420BufferRotate
278 : public ::testing::TestWithParam<webrtc::VideoRotation> {}; 279 : public ::testing::TestWithParam<webrtc::VideoRotation> {};
279 280
280 TEST_P(TestI420BufferRotate, Rotates) { 281 TEST_P(TestI420BufferRotate, Rotates) {
281 rtc::scoped_refptr<VideoFrameBuffer> buffer = CreateGradient(640, 480); 282 rtc::scoped_refptr<VideoFrameBuffer> buffer = CreateGradient(640, 480);
282 rtc::scoped_refptr<VideoFrameBuffer> rotated_buffer = 283 rtc::scoped_refptr<VideoFrameBuffer> rotated_buffer =
283 I420Buffer::Rotate(buffer, GetParam()); 284 I420Buffer::Rotate(*buffer, GetParam());
284 CheckRotate(640, 480, GetParam(), *rotated_buffer); 285 CheckRotate(640, 480, GetParam(), *rotated_buffer);
285 } 286 }
286 287
287 INSTANTIATE_TEST_CASE_P(Rotate, TestI420BufferRotate, 288 INSTANTIATE_TEST_CASE_P(Rotate, TestI420BufferRotate,
288 ::testing::Values(kVideoRotation_0, 289 ::testing::Values(kVideoRotation_0,
289 kVideoRotation_90, 290 kVideoRotation_90,
290 kVideoRotation_180, 291 kVideoRotation_180,
291 kVideoRotation_270)); 292 kVideoRotation_270));
292 293
294 class TestI420BufferRotateOld
295 : public ::testing::TestWithParam<webrtc::VideoRotation> {};
296
297 TEST_P(TestI420BufferRotateOld, Rotates) {
298 rtc::scoped_refptr<VideoFrameBuffer> buffer = CreateGradient(640, 480);
299 rtc::scoped_refptr<VideoFrameBuffer> rotated_buffer =
300 I420Buffer::Rotate(buffer, GetParam());
301 CheckRotate(640, 480, GetParam(), *rotated_buffer);
302 }
303
304 INSTANTIATE_TEST_CASE_P(Rotate, TestI420BufferRotateOld,
305 ::testing::Values(kVideoRotation_0,
306 kVideoRotation_90,
307 kVideoRotation_180,
308 kVideoRotation_270));
309
293 } // namespace webrtc 310 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/common_video/BUILD.gn ('k') | webrtc/common_video/include/corevideo_frame_buffer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698