/* * Copyright (c) 2018, Alliance for Open Media. All rights reserved. * * This source code is subject to the terms of the BSD 2 Clause License and * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License * was not distributed with this source code in the LICENSE file, you can * obtain it at www.aomedia.org/license/software. If the Alliance for Open * Media Patent License 1.0 was not distributed with this source code in the * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
*/
private: int n_tile_cols_; int n_tile_rows_; int n_tile_groups_; int set_cpu_used_; int row_mt_;
};
// run an encode and do the decode both in single thread // and multi thread. Ensure that the MD5 of the output in both cases // is identical. If so, the test passes.
TEST_P(AV1DecodeMultiThreadedTest, MD5Match) {
cfg_.large_scale_tile = 0;
single_thread_dec_->Control(AV1_SET_TILE_MODE, 0); for (int i = 0; i < kNumMultiThreadDecoders; ++i)
multi_thread_dec_[i]->Control(AV1_SET_TILE_MODE, 0);
DoTest();
}
class AV1DecodeMultiThreadedTestLarge : public AV1DecodeMultiThreadedTest {};
TEST_P(AV1DecodeMultiThreadedTestLarge, MD5Match) {
cfg_.large_scale_tile = 0;
single_thread_dec_->Control(AV1_SET_TILE_MODE, 0); for (int i = 0; i < kNumMultiThreadDecoders; ++i)
multi_thread_dec_[i]->Control(AV1_SET_TILE_MODE, 0);
DoTest();
}
// TODO(ranjit): More tests have to be added using pre-generated MD5.
AV1_INSTANTIATE_TEST_SUITE(AV1DecodeMultiThreadedTest, ::testing::Values(1, 2),
::testing::Values(1, 2), ::testing::Values(1),
::testing::Values(3), ::testing::Values(0, 1));
AV1_INSTANTIATE_TEST_SUITE(AV1DecodeMultiThreadedTestLarge,
::testing::Values(0, 1, 2, 6),
::testing::Values(0, 1, 2, 6),
::testing::Values(1, 4), ::testing::Values(0),
::testing::Values(0, 1));
class AV1DecodeMultiThreadedLSTestLarge
: public AV1DecodeMultiThreadedTestLarge {};
TEST_P(AV1DecodeMultiThreadedLSTestLarge, MD5Match) {
cfg_.large_scale_tile = 1;
single_thread_dec_->Control(AV1_SET_TILE_MODE, 1); for (int i = 0; i < kNumMultiThreadDecoders; ++i)
multi_thread_dec_[i]->Control(AV1_SET_TILE_MODE, 1);
DoTest();
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.