![]() Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : fdshops ( 1003) PHP Version : 8.2.21 Disable Function : NONE Directory : /usr/local/src/libavif-0.11.1/tests/gtest/ |
// Copyright 2022 Google LLC. All rights reserved. // SPDX-License-Identifier: BSD-2-Clause #include <ostream> #include "avif/avif.h" #include "avif/internal.h" #include "gtest/gtest.h" namespace { struct SetTileConfigurationTestParams { int threads; uint32_t width; uint32_t height; int expected_tile_rows_log2; int expected_tile_cols_log2; }; std::ostream& operator<<(std::ostream& os, const SetTileConfigurationTestParams& test) { return os << "SetTileConfigurationTestParams { threads:" << test.threads << " width:" << test.width << " height:" << test.height << " }"; } TEST(TilingTest, SetTileConfiguration) { constexpr int kThreads = 8; int tile_rows_log2; int tile_cols_log2; constexpr SetTileConfigurationTestParams kTests[]{ // 144p {kThreads, 256, 144, 0, 0}, // 240p {kThreads, 426, 240, 0, 0}, // 360p {kThreads, 640, 360, 0, 0}, // 480p {kThreads, 854, 480, 0, 1}, // 720p {kThreads, 1280, 720, 1, 1}, // 1080p {kThreads, 1920, 1080, 1, 2}, // 2K {kThreads, 2560, 1440, 1, 2}, // 4K {32, 3840, 2160, 2, 3}, // 8K {32, 7680, 4320, 2, 3}, // Kodak image set: 768x512 {kThreads, 768, 512, 0, 1}, {kThreads, 16384, 64, 0, 2}, }; for (const auto& test : kTests) { avifSetTileConfiguration(test.threads, test.width, test.height, &tile_rows_log2, &tile_cols_log2); EXPECT_EQ(tile_rows_log2, test.expected_tile_rows_log2) << test; EXPECT_EQ(tile_cols_log2, test.expected_tile_cols_log2) << test; // Swap width and height. avifSetTileConfiguration(test.threads, test.height, test.width, &tile_rows_log2, &tile_cols_log2); EXPECT_EQ(tile_rows_log2, test.expected_tile_cols_log2) << test; EXPECT_EQ(tile_cols_log2, test.expected_tile_rows_log2) << test; } } } // namespace