| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/logging.h" | 6 #include "base/logging.h" |
| 7 #include "base/thread_task_runner_handle.h" | 7 #include "base/thread_task_runner_handle.h" |
| 8 #include "base/timer/timer.h" | 8 #include "base/timer/timer.h" |
| 9 #include "media/base/android/media_codec_audio_decoder.h" | 9 #include "media/base/android/media_codec_audio_decoder.h" |
| 10 #include "media/base/android/media_codec_util.h" | 10 #include "media/base/android/media_codec_bridge.h" |
| 11 #include "media/base/android/media_codec_video_decoder.h" | 11 #include "media/base/android/media_codec_video_decoder.h" |
| 12 #include "media/base/android/media_statistics.h" | 12 #include "media/base/android/media_statistics.h" |
| 13 #include "media/base/android/sdk_media_codec_bridge.h" | |
| 14 #include "media/base/android/test_data_factory.h" | 13 #include "media/base/android/test_data_factory.h" |
| 15 #include "media/base/android/test_statistics.h" | 14 #include "media/base/android/test_statistics.h" |
| 16 #include "media/base/timestamp_constants.h" | 15 #include "media/base/timestamp_constants.h" |
| 17 #include "testing/gtest/include/gtest/gtest.h" | 16 #include "testing/gtest/include/gtest/gtest.h" |
| 18 #include "ui/gl/android/surface_texture.h" | 17 #include "ui/gl/android/surface_texture.h" |
| 19 | 18 |
| 20 namespace media { | 19 namespace media { |
| 21 | 20 |
| 21 // Helper macro to skip the test if MediaCodecBridge isn't available. |
| 22 #define SKIP_TEST_IF_MEDIA_CODEC_BRIDGE_IS_NOT_AVAILABLE() \ |
| 23 do { \ |
| 24 if (!MediaCodecBridge::IsAvailable()) { \ |
| 25 VLOG(0) << "Could not run test - not supported on device."; \ |
| 26 return; \ |
| 27 } \ |
| 28 } while (0) |
| 29 |
| 22 namespace { | 30 namespace { |
| 23 | 31 |
| 24 const base::TimeDelta kDefaultTimeout = base::TimeDelta::FromMilliseconds(200); | 32 const base::TimeDelta kDefaultTimeout = base::TimeDelta::FromMilliseconds(200); |
| 25 const base::TimeDelta kAudioFramePeriod = | 33 const base::TimeDelta kAudioFramePeriod = |
| 26 base::TimeDelta::FromSecondsD(1024.0 / 44100); // 1024 samples @ 44100 Hz | 34 base::TimeDelta::FromSecondsD(1024.0 / 44100); // 1024 samples @ 44100 Hz |
| 27 const base::TimeDelta kVideoFramePeriod = base::TimeDelta::FromMilliseconds(20); | 35 const base::TimeDelta kVideoFramePeriod = base::TimeDelta::FromMilliseconds(20); |
| 28 | 36 |
| 29 // A helper function to calculate the expected number of frames. | 37 // A helper function to calculate the expected number of frames. |
| 30 int GetFrameCount(base::TimeDelta duration, base::TimeDelta frame_period) { | 38 int GetFrameCount(base::TimeDelta duration, base::TimeDelta frame_period) { |
| 31 // A chunk has 4 access units. The last unit timestamp must exceed the | 39 // A chunk has 4 access units. The last unit timestamp must exceed the |
| (...skipping 717 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 749 | 757 |
| 750 EXPECT_TRUE(decoder_->IsStopped()); | 758 EXPECT_TRUE(decoder_->IsStopped()); |
| 751 EXPECT_TRUE(decoder_->IsCompleted()); | 759 EXPECT_TRUE(decoder_->IsCompleted()); |
| 752 EXPECT_EQ(data_factory_->last_pts(), pts_stat_.max()); | 760 EXPECT_EQ(data_factory_->last_pts(), pts_stat_.max()); |
| 753 | 761 |
| 754 // Check that the reported video size is the one from the in-stream configs. | 762 // Check that the reported video size is the one from the in-stream configs. |
| 755 EXPECT_EQ(data_factory_->GetConfigs().video_size, video_size_); | 763 EXPECT_EQ(data_factory_->GetConfigs().video_size, video_size_); |
| 756 } | 764 } |
| 757 | 765 |
| 758 } // namespace media | 766 } // namespace media |
| OLD | NEW |