/* * Copyright (c) 2016, 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. */ #include "av1/common/timing.h" /* Tables for AV1 max bitrates for different levels of main and high tier. * The tables are in Kbps instead of Mbps in the specification. * Note that depending on the profile, a multiplier is needed. */ #define UNDEFINED_RATE … #define INVALID_RATE … /* Max Bitrates for levels of Main Tier in kbps. Bitrate in main_kbps [31] */ /* is a dummy value. The decoder model is not applicable for level 31. */ static int32_t main_kbps[1 << LEVEL_BITS] = …; /* Max Bitrates for levels of High Tier in kbps. Bitrate in high_kbps [31] */ /* is a dummy value. The decoder model is not applicable for level 31. */ static int32_t high_kbps[1 << LEVEL_BITS] = …; /* BitrateProfileFactor */ static int bitrate_profile_factor[1 << PROFILE_BITS] = …; int64_t av1_max_level_bitrate(BITSTREAM_PROFILE seq_profile, int seq_level_idx, int seq_tier) { … } void av1_set_aom_dec_model_info(aom_dec_model_info_t *decoder_model) { … } void av1_set_dec_model_op_parameters(aom_dec_model_op_parameters_t *op_params) { … } void av1_set_resource_availability_parameters( aom_dec_model_op_parameters_t *op_params) { … }