1// Copyright (c) 2018-2022, The rav1e contributors. All rights reserved
2//
3// This source code is subject to the terms of the BSD 2 Clause License and
4// the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
5// was not distributed with this source code in the LICENSE file, you can
6// obtain it at www.aomedia.org/license/software. If the Alliance for Open
7// Media Patent License 1.0 was not distributed with this source code in the
8// PATENTS file, you can obtain it at www.aomedia.org/license/patent.
9
10pub static AV1_LEVEL_DEFINED: [bool; 32] = [
11 true, // 2.0
12 true, // 2.1
13 false, false, true, // 3.0
14 true, // 3.1
15 false, false, true, // 4.0
16 true, // 4.1
17 false, false, true, // 5.0
18 true, // 5.1
19 true, // 5.2
20 true, // 5.3
21 true, // 6.0
22 true, // 6.1
23 true, // 6.2
24 true, // 6.3
25 false, false, false, false, false, false, false, false, false, false, false,
26 false,
27];
28
29pub static AV1_LEVEL_MAX_PIC_SIZE: [usize; 32] = [
30 147456, // 2.0
31 278784, // 2.1
32 0, 0, 665856, // 3.0
33 1065024, // 3.1
34 0, 0, 2359296, // 4.0
35 23592960, // 4.1
36 0, 0, 8912896, // 5.0
37 8912896, // 5.1
38 8912896, // 5.2
39 8912896, // 5.3
40 35651584, // 6.0
41 35651584, // 6.1
42 35651584, // 6.2
43 35651584, // 6.3
44 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
45];
46
47pub static AV1_LEVEL_MAX_H_SIZE: [usize; 32] = [
48 2048, // 2.0
49 2816, // 2.1
50 0, 0, 4352, // 3.0
51 5504, // 3.1
52 0, 0, 6144, // 4.0
53 6144, // 4.1
54 0, 0, 8192, // 5.0
55 8192, // 5.1
56 8192, // 5.2
57 8192, // 5.3
58 16384, // 6.0
59 16384, // 6.1
60 16384, // 6.2
61 16384, // 6.3
62 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
63];
64
65pub static AV1_LEVEL_MAX_V_SIZE: [usize; 32] = [
66 1152, // 2.0
67 1584, // 2.1
68 0, 0, 2448, // 3.0
69 3096, // 3.1
70 0, 0, 3456, // 4.0
71 3456, // 4.1
72 0, 0, 4352, // 5.0
73 4352, // 5.1
74 4352, // 5.2
75 4352, // 5.3
76 8704, // 6.0
77 8704, // 6.1
78 8704, // 6.2
79 8704, // 6.3
80 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
81];
82
83pub static AV1_LEVEL_MAX_DISPLAY_RATE: [usize; 32] = [
84 4_423_680, // 2.0
85 8_363_520, // 2.1
86 0,
87 0,
88 19_975_680, // 3.0
89 31_950_720, // 3.1
90 0,
91 0,
92 70_778_880, // 4.0
93 141_557_760, // 4.1
94 0,
95 0,
96 267_386_880, // 5.0
97 534_773_760, // 5.1
98 1_069_547_520, // 5.2
99 1_069_547_520, // 5.3
100 1_069_547_520, // 6.0
101 2_139_095_040, // 6.1
102 4_278_190_080, // 6.2
103 4_278_190_080, // 6.3
104 0,
105 0,
106 0,
107 0,
108 0,
109 0,
110 0,
111 0,
112 0,
113 0,
114 0,
115 0,
116];
117