OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 <deque> | 5 #include <deque> |
6 #include <stdlib.h> | 6 #include <stdlib.h> |
7 | 7 |
8 #include "gfx/rect.h" | 8 #include "gfx/rect.h" |
9 #include "media/base/video_frame.h" | 9 #include "media/base/video_frame.h" |
10 #include "remoting/base/codec_test.h" | 10 #include "remoting/base/codec_test.h" |
(...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
310 EncoderStateTester* state_tester_; | 310 EncoderStateTester* state_tester_; |
311 DecoderTester* decoder_tester_; | 311 DecoderTester* decoder_tester_; |
312 int data_available_; | 312 int data_available_; |
313 | 313 |
314 DISALLOW_COPY_AND_ASSIGN(EncoderTester); | 314 DISALLOW_COPY_AND_ASSIGN(EncoderTester); |
315 }; | 315 }; |
316 | 316 |
317 scoped_refptr<CaptureData> PrepareEncodeData(PixelFormat format, | 317 scoped_refptr<CaptureData> PrepareEncodeData(PixelFormat format, |
318 uint8** memory) { | 318 uint8** memory) { |
319 // TODO(hclam): Support also YUV format. | 319 // TODO(hclam): Support also YUV format. |
320 CHECK(format == PIXEL_FORMAT_RGB32); | 320 CHECK(format == PixelFormatRgb32); |
321 int size = kWidth * kHeight * kBytesPerPixel; | 321 int size = kWidth * kHeight * kBytesPerPixel; |
322 | 322 |
323 *memory = new uint8[size]; | 323 *memory = new uint8[size]; |
324 srand(0); | 324 srand(0); |
325 for (int i = 0; i < size; ++i) { | 325 for (int i = 0; i < size; ++i) { |
326 (*memory)[i] = rand() % 256; | 326 (*memory)[i] = rand() % 256; |
327 } | 327 } |
328 | 328 |
329 DataPlanes planes; | 329 DataPlanes planes; |
330 memset(planes.data, 0, sizeof(planes.data)); | 330 memset(planes.data, 0, sizeof(planes.data)); |
(...skipping 22 matching lines...) Expand all Loading... |
353 | 353 |
354 void TestEncoder(Encoder* encoder, bool strict) { | 354 void TestEncoder(Encoder* encoder, bool strict) { |
355 EncoderMessageTester message_tester; | 355 EncoderMessageTester message_tester; |
356 message_tester.set_strict(strict); | 356 message_tester.set_strict(strict); |
357 | 357 |
358 EncoderStateTester state_tester; | 358 EncoderStateTester state_tester; |
359 EncoderTester tester(&message_tester, &state_tester); | 359 EncoderTester tester(&message_tester, &state_tester); |
360 | 360 |
361 uint8* memory; | 361 uint8* memory; |
362 scoped_refptr<CaptureData> data = | 362 scoped_refptr<CaptureData> data = |
363 PrepareEncodeData(PIXEL_FORMAT_RGB32, &memory); | 363 PrepareEncodeData(PixelFormatRgb32, &memory); |
364 | 364 |
365 TestEncodingRects(encoder, &tester, data, kTestRects, 1); | 365 TestEncodingRects(encoder, &tester, data, kTestRects, 1); |
366 TestEncodingRects(encoder, &tester, data, kTestRects + 1, 1); | 366 TestEncodingRects(encoder, &tester, data, kTestRects + 1, 1); |
367 TestEncodingRects(encoder, &tester, data, kTestRects + 2, 1); | 367 TestEncodingRects(encoder, &tester, data, kTestRects + 2, 1); |
368 TestEncodingRects(encoder, &tester, data, kTestRects + 3, 2); | 368 TestEncodingRects(encoder, &tester, data, kTestRects + 3, 2); |
369 delete [] memory; | 369 delete [] memory; |
370 } | 370 } |
371 | 371 |
372 static void TestEncodingRects(Encoder* encoder, | 372 static void TestEncodingRects(Encoder* encoder, |
373 EncoderTester* encoder_tester, | 373 EncoderTester* encoder_tester, |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
405 | 405 |
406 void TestEncoderDecoder(Encoder* encoder, Decoder* decoder, bool strict) { | 406 void TestEncoderDecoder(Encoder* encoder, Decoder* decoder, bool strict) { |
407 EncoderMessageTester message_tester; | 407 EncoderMessageTester message_tester; |
408 message_tester.set_strict(strict); | 408 message_tester.set_strict(strict); |
409 | 409 |
410 EncoderStateTester state_tester; | 410 EncoderStateTester state_tester; |
411 EncoderTester encoder_tester(&message_tester, &state_tester); | 411 EncoderTester encoder_tester(&message_tester, &state_tester); |
412 | 412 |
413 uint8* memory; | 413 uint8* memory; |
414 scoped_refptr<CaptureData> data = | 414 scoped_refptr<CaptureData> data = |
415 PrepareEncodeData(PIXEL_FORMAT_RGB32, &memory); | 415 PrepareEncodeData(PixelFormatRgb32, &memory); |
416 DecoderTester decoder_tester(decoder); | 416 DecoderTester decoder_tester(decoder); |
417 decoder_tester.set_strict(strict); | 417 decoder_tester.set_strict(strict); |
418 decoder_tester.set_capture_data(data); | 418 decoder_tester.set_capture_data(data); |
419 encoder_tester.set_decoder_tester(&decoder_tester); | 419 encoder_tester.set_decoder_tester(&decoder_tester); |
420 | 420 |
421 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, | 421 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, |
422 kTestRects, 1); | 422 kTestRects, 1); |
423 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, | 423 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, |
424 kTestRects + 1, 1); | 424 kTestRects + 1, 1); |
425 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, | 425 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, |
426 kTestRects + 2, 1); | 426 kTestRects + 2, 1); |
427 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, | 427 TestEncodingRects(encoder, &encoder_tester, &decoder_tester, data, |
428 kTestRects + 3, 2); | 428 kTestRects + 3, 2); |
429 delete [] memory; | 429 delete [] memory; |
430 } | 430 } |
431 | 431 |
432 } // namespace remoting | 432 } // namespace remoting |
433 | 433 |
434 DISABLE_RUNNABLE_METHOD_REFCOUNT(remoting::DecoderTester); | 434 DISABLE_RUNNABLE_METHOD_REFCOUNT(remoting::DecoderTester); |
OLD | NEW |