Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 144 const int kSizeY = 400; | 144 const int kSizeY = 400; |
| 145 const int kSizeU = 100; | 145 const int kSizeU = 100; |
| 146 const int kSizeV = 100; | 146 const int kSizeV = 100; |
| 147 const VideoRotation kRotation = kVideoRotation_270; | 147 const VideoRotation kRotation = kVideoRotation_270; |
| 148 uint8_t buffer_y[kSizeY]; | 148 uint8_t buffer_y[kSizeY]; |
| 149 uint8_t buffer_u[kSizeU]; | 149 uint8_t buffer_u[kSizeU]; |
| 150 uint8_t buffer_v[kSizeV]; | 150 uint8_t buffer_v[kSizeV]; |
| 151 memset(buffer_y, 16, kSizeY); | 151 memset(buffer_y, 16, kSizeY); |
| 152 memset(buffer_u, 8, kSizeU); | 152 memset(buffer_u, 8, kSizeU); |
| 153 memset(buffer_v, 4, kSizeV); | 153 memset(buffer_v, 4, kSizeV); |
| 154 // TODO(nisse): This new + Copy looks quite awkward. Consider adding | 154 |
| 155 // an alternative I420Buffer::Create method. | |
| 156 VideoFrame frame1( | 155 VideoFrame frame1( |
| 157 I420Buffer::Copy(*rtc::scoped_refptr<VideoFrameBuffer>( | 156 I420Buffer::Copy(width, height, |
| 158 new rtc::RefCountedObject<webrtc::WrappedI420Buffer>( | 157 buffer_y, stride_y, |
| 159 width, height, | 158 buffer_u, stride_u, |
| 160 buffer_y, stride_y, | 159 buffer_v, stride_v), |
| 161 buffer_u, stride_u, | |
| 162 buffer_v, stride_v, | |
| 163 rtc::Callback0<void>([](){})))), | |
|
nisse-webrtc
2016/11/25 15:07:46
The main point of this change is to get rid of thi
| |
| 164 kRotation, 0); | 160 kRotation, 0); |
| 165 frame1.set_timestamp(timestamp); | 161 frame1.set_timestamp(timestamp); |
| 166 frame1.set_ntp_time_ms(ntp_time_ms); | 162 frame1.set_ntp_time_ms(ntp_time_ms); |
| 167 frame1.set_render_time_ms(render_time_ms); | 163 frame1.set_render_time_ms(render_time_ms); |
| 168 VideoFrame frame2(frame1); | 164 VideoFrame frame2(frame1); |
| 169 | 165 |
| 170 EXPECT_EQ(frame1.video_frame_buffer(), frame2.video_frame_buffer()); | 166 EXPECT_EQ(frame1.video_frame_buffer(), frame2.video_frame_buffer()); |
| 171 EXPECT_EQ(frame1.video_frame_buffer()->DataY(), | 167 EXPECT_EQ(frame1.video_frame_buffer()->DataY(), |
| 172 frame2.video_frame_buffer()->DataY()); | 168 frame2.video_frame_buffer()->DataY()); |
| 173 EXPECT_EQ(frame1.video_frame_buffer()->DataU(), | 169 EXPECT_EQ(frame1.video_frame_buffer()->DataU(), |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 294 CheckRotate(640, 480, GetParam(), *rotated_buffer); | 290 CheckRotate(640, 480, GetParam(), *rotated_buffer); |
| 295 } | 291 } |
| 296 | 292 |
| 297 INSTANTIATE_TEST_CASE_P(Rotate, TestI420BufferRotate, | 293 INSTANTIATE_TEST_CASE_P(Rotate, TestI420BufferRotate, |
| 298 ::testing::Values(kVideoRotation_0, | 294 ::testing::Values(kVideoRotation_0, |
| 299 kVideoRotation_90, | 295 kVideoRotation_90, |
| 300 kVideoRotation_180, | 296 kVideoRotation_180, |
| 301 kVideoRotation_270)); | 297 kVideoRotation_270)); |
| 302 | 298 |
| 303 } // namespace webrtc | 299 } // namespace webrtc |
| OLD | NEW |