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

Side by Side Diff: remoting/codec/codec_test.cc

Issue 1545723002: Use std::move() instead of .Pass() in remoting/* (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@move_not_pass_host
Patch Set: Created 4 years, 12 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 | « remoting/codec/audio_encoder_verbatim.cc ('k') | remoting/codec/video_encoder_helper.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stddef.h> 5 #include <stddef.h>
6 #include <stdint.h> 6 #include <stdint.h>
7 #include <stdlib.h> 7 #include <stdlib.h>
8
8 #include <deque> 9 #include <deque>
10 #include <utility>
9 11
10 #include "base/bind.h" 12 #include "base/bind.h"
11 #include "base/logging.h" 13 #include "base/logging.h"
12 #include "base/macros.h" 14 #include "base/macros.h"
13 #include "base/memory/scoped_ptr.h" 15 #include "base/memory/scoped_ptr.h"
14 #include "media/base/video_frame.h" 16 #include "media/base/video_frame.h"
15 #include "remoting/base/util.h" 17 #include "remoting/base/util.h"
16 #include "remoting/codec/codec_test.h" 18 #include "remoting/codec/codec_test.h"
17 #include "remoting/codec/video_decoder.h" 19 #include "remoting/codec/video_decoder.h"
18 #include "remoting/codec/video_encoder.h" 20 #include "remoting/codec/video_encoder.h"
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 VideoEncoderTester() : decoder_tester_(nullptr), data_available_(0) {} 179 VideoEncoderTester() : decoder_tester_(nullptr), data_available_(0) {}
178 180
179 ~VideoEncoderTester() { 181 ~VideoEncoderTester() {
180 EXPECT_GT(data_available_, 0); 182 EXPECT_GT(data_available_, 0);
181 } 183 }
182 184
183 void DataAvailable(scoped_ptr<VideoPacket> packet) { 185 void DataAvailable(scoped_ptr<VideoPacket> packet) {
184 ++data_available_; 186 ++data_available_;
185 // Send the message to the VideoDecoderTester. 187 // Send the message to the VideoDecoderTester.
186 if (decoder_tester_) { 188 if (decoder_tester_) {
187 decoder_tester_->ReceivedPacket(packet.Pass()); 189 decoder_tester_->ReceivedPacket(std::move(packet));
188 } 190 }
189 } 191 }
190 192
191 void set_decoder_tester(VideoDecoderTester* decoder_tester) { 193 void set_decoder_tester(VideoDecoderTester* decoder_tester) {
192 decoder_tester_ = decoder_tester; 194 decoder_tester_ = decoder_tester;
193 } 195 }
194 196
195 private: 197 private:
196 VideoDecoderTester* decoder_tester_; 198 VideoDecoderTester* decoder_tester_;
197 int data_available_; 199 int data_available_;
198 200
199 DISALLOW_COPY_AND_ASSIGN(VideoEncoderTester); 201 DISALLOW_COPY_AND_ASSIGN(VideoEncoderTester);
200 }; 202 };
201 203
202 scoped_ptr<DesktopFrame> PrepareFrame(const DesktopSize& size) { 204 scoped_ptr<DesktopFrame> PrepareFrame(const DesktopSize& size) {
203 scoped_ptr<DesktopFrame> frame(new BasicDesktopFrame(size)); 205 scoped_ptr<DesktopFrame> frame(new BasicDesktopFrame(size));
204 206
205 srand(0); 207 srand(0);
206 int memory_size = size.width() * size.height() * kBytesPerPixel; 208 int memory_size = size.width() * size.height() * kBytesPerPixel;
207 for (int i = 0; i < memory_size; ++i) { 209 for (int i = 0; i < memory_size; ++i) {
208 frame->data()[i] = rand() % 256; 210 frame->data()[i] = rand() % 256;
209 } 211 }
210 212
211 return frame.Pass(); 213 return frame;
212 } 214 }
213 215
214 static void TestEncodingRects(VideoEncoder* encoder, 216 static void TestEncodingRects(VideoEncoder* encoder,
215 VideoEncoderTester* tester, 217 VideoEncoderTester* tester,
216 DesktopFrame* frame, 218 DesktopFrame* frame,
217 const DesktopRegion& region) { 219 const DesktopRegion& region) {
218 *frame->mutable_updated_region() = region; 220 *frame->mutable_updated_region() = region;
219 scoped_ptr<VideoPacket> packet = encoder->Encode(*frame); 221 tester->DataAvailable(encoder->Encode(*frame));
220 tester->DataAvailable(packet.Pass());
221 } 222 }
222 223
223 void TestVideoEncoder(VideoEncoder* encoder, bool strict) { 224 void TestVideoEncoder(VideoEncoder* encoder, bool strict) {
224 const int kSizes[] = {80, 79, 77, 54}; 225 const int kSizes[] = {80, 79, 77, 54};
225 226
226 VideoEncoderTester tester; 227 VideoEncoderTester tester;
227 228
228 for (size_t xi = 0; xi < arraysize(kSizes); ++xi) { 229 for (size_t xi = 0; xi < arraysize(kSizes); ++xi) {
229 for (size_t yi = 0; yi < arraysize(kSizes); ++yi) { 230 for (size_t yi = 0; yi < arraysize(kSizes); ++yi) {
230 DesktopSize size(kSizes[xi], kSizes[yi]); 231 DesktopSize size(kSizes[xi], kSizes[yi]);
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
279 const int row_size = DesktopFrame::kBytesPerPixel * i.rect().width(); 280 const int row_size = DesktopFrame::kBytesPerPixel * i.rect().width();
280 uint8_t* memory = frame->data() + frame->stride() * i.rect().top() + 281 uint8_t* memory = frame->data() + frame->stride() * i.rect().top() +
281 DesktopFrame::kBytesPerPixel * i.rect().left(); 282 DesktopFrame::kBytesPerPixel * i.rect().left();
282 for (int y = 0; y < i.rect().height(); ++y) { 283 for (int y = 0; y < i.rect().height(); ++y) {
283 for (int x = 0; x < row_size; ++x) 284 for (int x = 0; x < row_size; ++x)
284 memory[x] = rand() % 256; 285 memory[x] = rand() % 256;
285 memory += frame->stride(); 286 memory += frame->stride();
286 } 287 }
287 } 288 }
288 289
289 scoped_ptr<VideoPacket> packet = encoder->Encode(*frame); 290 encoder_tester->DataAvailable(encoder->Encode(*frame));
290 encoder_tester->DataAvailable(packet.Pass());
291 decoder_tester->VerifyResults(); 291 decoder_tester->VerifyResults();
292 decoder_tester->Reset(); 292 decoder_tester->Reset();
293 } 293 }
294 294
295 void TestVideoEncoderDecoder(VideoEncoder* encoder, 295 void TestVideoEncoderDecoder(VideoEncoder* encoder,
296 VideoDecoder* decoder, 296 VideoDecoder* decoder,
297 bool strict) { 297 bool strict) {
298 DesktopSize kSize = DesktopSize(160, 120); 298 DesktopSize kSize = DesktopSize(160, 120);
299 299
300 VideoEncoderTester encoder_tester; 300 VideoEncoderTester encoder_tester;
(...skipping 30 matching lines...) Expand all
331 double max_error_limit, 331 double max_error_limit,
332 double mean_error_limit) { 332 double mean_error_limit) {
333 scoped_ptr<BasicDesktopFrame> frame( 333 scoped_ptr<BasicDesktopFrame> frame(
334 new BasicDesktopFrame(screen_size)); 334 new BasicDesktopFrame(screen_size));
335 FillWithGradient(frame.get()); 335 FillWithGradient(frame.get());
336 frame->mutable_updated_region()->SetRect(DesktopRect::MakeSize(screen_size)); 336 frame->mutable_updated_region()->SetRect(DesktopRect::MakeSize(screen_size));
337 337
338 VideoDecoderTester decoder_tester(decoder, screen_size); 338 VideoDecoderTester decoder_tester(decoder, screen_size);
339 decoder_tester.set_expected_frame(frame.get()); 339 decoder_tester.set_expected_frame(frame.get());
340 decoder_tester.AddRegion(frame->updated_region()); 340 decoder_tester.AddRegion(frame->updated_region());
341 341 decoder_tester.ReceivedPacket(encoder->Encode(*frame));
342 scoped_ptr<VideoPacket> packet = encoder->Encode(*frame);
343 decoder_tester.ReceivedPacket(packet.Pass());
344 342
345 decoder_tester.VerifyResultsApprox(max_error_limit, mean_error_limit); 343 decoder_tester.VerifyResultsApprox(max_error_limit, mean_error_limit);
346 } 344 }
347 345
348 float MeasureVideoEncoderFpsWithSize(VideoEncoder* encoder, 346 float MeasureVideoEncoderFpsWithSize(VideoEncoder* encoder,
349 const DesktopSize& size) { 347 const DesktopSize& size) {
350 scoped_ptr<DesktopFrame> frame(PrepareFrame(size)); 348 scoped_ptr<DesktopFrame> frame(PrepareFrame(size));
351 frame->mutable_updated_region()->SetRect(DesktopRect::MakeSize(size)); 349 frame->mutable_updated_region()->SetRect(DesktopRect::MakeSize(size));
352 std::list<DesktopFrame*> frames; 350 std::list<DesktopFrame*> frames;
353 frames.push_back(frame.get()); 351 frames.push_back(frame.get());
(...skipping 29 matching lines...) Expand all
383 381
384 if (frame_count >= kWarmUpFrameCount) { 382 if (frame_count >= kWarmUpFrameCount) {
385 elapsed = base::TimeTicks::Now() - start_time; 383 elapsed = base::TimeTicks::Now() - start_time;
386 } 384 }
387 } 385 }
388 386
389 return (frame_count * base::TimeDelta::FromSeconds(1)) / elapsed; 387 return (frame_count * base::TimeDelta::FromSeconds(1)) / elapsed;
390 } 388 }
391 389
392 } // namespace remoting 390 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/codec/audio_encoder_verbatim.cc ('k') | remoting/codec/video_encoder_helper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698