use crate::huffman::optimize::{HuffmanTableSet, OptimizedTable};
pub(crate) const QUALITY_TIERS: &[u8] = &[
0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 89, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100,
];
pub(crate) fn nearest_quality_tier(quality: f32) -> usize {
let q = quality.round() as i32;
match QUALITY_TIERS.binary_search(&(q.clamp(0, 100) as u8)) {
Ok(idx) => idx,
Err(idx) => idx.saturating_sub(1),
}
}
#[allow(clippy::too_many_lines)]
pub(crate) fn ycbcr_444_tables(tier_idx: usize) -> HuffmanTableSet {
match tier_idx {
0 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 4, 3, 4, 7, 6, 4, 4, 3, 3, 13],
&[
0, 1, 2, 3, 17, 18, 33, 49, 4, 19, 34, 65, 50, 81, 97, 20, 66, 82, 113, 5, 35,
51, 98, 129, 145, 161, 21, 83, 114, 177, 193, 240, 67, 130, 209, 225, 52, 99,
146, 162, 36, 210, 241, 178, 194, 226, 37, 68, 84, 100, 115, 131, 132, 147,
163, 179, 211, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 0, 2, 2, 3, 0, 1, 4, 2, 2, 2, 2, 3],
&[
0, 1, 2, 17, 18, 49, 65, 33, 81, 3, 19, 97, 129, 50, 66, 82, 113, 34, 209, 145,
193, 177, 225, 161, 240, 98, 130, 241,
],
),
},
1 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 5, 10, 5, 1, 6, 1, 5, 17],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 19, 34, 50, 65, 81, 20, 66, 82, 97, 5, 113, 129,
145, 161, 21, 35, 51, 83, 98, 114, 177, 193, 209, 240, 67, 130, 146, 162, 225,
52, 36, 99, 178, 194, 210, 241, 84, 6, 22, 68, 115, 226, 37, 53, 69, 85, 100,
101, 116, 131, 132, 147, 148, 163, 179, 195, 211, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 0, 1, 5, 1, 0, 1, 5, 0, 1, 2, 4, 7],
&[
0, 1, 2, 17, 18, 49, 3, 19, 33, 65, 81, 97, 50, 34, 66, 82, 113, 129, 209, 98,
145, 130, 161, 177, 193, 4, 20, 67, 114, 225, 240, 241,
],
),
},
2 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 2, 1, 3, 2, 3, 4, 6, 5, 9, 5, 7, 2, 2, 5, 13],
&[
0, 2, 1, 3, 17, 18, 4, 33, 19, 34, 49, 5, 50, 65, 81, 20, 66, 82, 97, 113, 129,
35, 51, 145, 161, 177, 21, 83, 98, 114, 130, 146, 193, 209, 240, 6, 52, 67,
162, 225, 22, 36, 84, 178, 194, 210, 241, 99, 226, 53, 115, 68, 100, 131, 147,
242, 37, 69, 85, 101, 116, 132, 148, 163, 164, 179, 195, 211, 227,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 0, 1, 5, 0, 2, 2, 2, 2, 0, 4, 4, 7],
&[
0, 1, 2, 17, 18, 49, 3, 19, 33, 65, 81, 50, 97, 34, 66, 98, 113, 82, 129, 4,
20, 145, 209, 161, 177, 193, 240, 35, 51, 67, 114, 130, 225, 241,
],
),
},
3 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 6, 10, 6, 8, 4, 5, 1, 3, 13],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 20, 66, 82, 113, 129,
145, 21, 35, 51, 98, 114, 161, 177, 193, 209, 240, 6, 83, 130, 146, 162, 225,
22, 36, 52, 67, 84, 178, 194, 210, 99, 115, 226, 241, 53, 68, 100, 147, 211,
131, 37, 163, 242, 38, 54, 69, 85, 101, 116, 132, 148, 164, 179, 195, 227, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 4, 1, 3, 3, 4, 0, 7, 0, 2, 2, 3],
&[
0, 1, 2, 17, 18, 49, 3, 19, 33, 65, 81, 34, 50, 97, 66, 113, 129, 4, 20, 82,
98, 145, 161, 177, 193, 209, 225, 240, 51, 241, 35, 114, 67, 83, 130,
],
),
},
4 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 9, 8, 6, 7, 5, 5, 4, 2, 19],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 161, 21, 51, 98, 114, 177, 193, 209, 240, 83, 130, 146, 162,
178, 225, 22, 36, 52, 67, 84, 194, 210, 99, 115, 147, 226, 241, 53, 68, 100,
131, 163, 7, 23, 37, 211, 179, 242, 38, 54, 69, 70, 85, 101, 102, 116, 117,
132, 148, 149, 164, 195, 196, 212, 227, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 2, 1, 3, 2, 5, 3, 3, 4, 1, 2, 3, 9],
&[
0, 1, 2, 17, 18, 3, 49, 33, 19, 65, 81, 50, 97, 4, 20, 34, 66, 113, 82, 98,
129, 145, 161, 209, 177, 193, 225, 240, 51, 114, 241, 35, 67, 130, 5, 21, 36,
83, 146, 162, 178, 194, 210,
],
),
},
5 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 10, 6, 6, 6, 6, 5, 4, 19],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 21, 51, 98, 114, 146, 161, 177, 193, 209, 240, 83, 130, 162,
178, 210, 225, 22, 36, 52, 67, 84, 194, 7, 99, 115, 147, 226, 241, 23, 53, 68,
131, 163, 211, 37, 100, 179, 227, 242, 85, 116, 148, 195, 38, 54, 69, 70, 86,
101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 212, 228, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 2, 4, 5, 2, 6, 1, 3, 2, 3, 9],
&[
0, 1, 2, 17, 18, 3, 19, 33, 49, 65, 81, 4, 34, 50, 97, 20, 66, 82, 113, 129,
145, 161, 98, 177, 193, 209, 225, 240, 51, 35, 114, 241, 5, 67, 21, 36, 130,
83, 99, 115, 146, 162, 178, 194, 210, 226,
],
),
},
6 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 7, 8, 6, 5, 4, 16, 7],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 51, 98, 114, 146, 161, 177, 193, 209, 240, 21, 83, 130, 162,
178, 210, 225, 7, 22, 36, 52, 67, 84, 115, 194, 53, 99, 147, 163, 226, 241, 23,
68, 131, 179, 211, 37, 85, 100, 227, 38, 54, 69, 70, 86, 101, 102, 116, 117,
132, 133, 148, 149, 164, 195, 242, 165, 180, 196, 212, 228, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 2, 4, 5, 2, 5, 2, 5, 2, 2, 11],
&[
0, 1, 2, 17, 18, 3, 19, 33, 49, 65, 81, 4, 34, 50, 97, 20, 66, 82, 113, 129,
145, 161, 98, 177, 193, 209, 240, 21, 225, 5, 35, 51, 114, 241, 67, 130, 36,
210, 52, 68, 83, 99, 115, 146, 162, 178, 194, 226, 242,
],
),
},
7 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 5, 6, 8, 9, 8, 7, 4, 5, 5, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 97, 20, 66, 82, 113,
129, 145, 35, 51, 98, 114, 161, 177, 209, 240, 21, 83, 130, 146, 162, 178, 193,
210, 225, 7, 22, 36, 52, 67, 84, 115, 194, 23, 53, 99, 147, 163, 226, 241, 68,
131, 179, 211, 37, 85, 100, 195, 227, 54, 116, 148, 212, 242, 38, 69, 70, 86,
101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 228, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 2, 4, 5, 2, 5, 2, 5, 2, 3, 9],
&[
0, 1, 2, 17, 18, 3, 19, 33, 49, 65, 81, 4, 34, 50, 97, 20, 66, 82, 113, 129,
145, 161, 98, 177, 193, 209, 240, 21, 225, 5, 35, 51, 114, 241, 67, 130, 36,
52, 210, 68, 83, 99, 146, 162, 178, 194, 226, 242,
],
),
},
8 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 5, 6, 9, 7, 8, 6, 6, 6, 3, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 97, 20, 66, 82, 113,
129, 145, 35, 51, 98, 114, 161, 177, 193, 209, 240, 21, 83, 130, 146, 162, 178,
225, 7, 22, 36, 52, 67, 84, 194, 210, 99, 115, 147, 163, 226, 241, 23, 53, 68,
131, 179, 211, 37, 85, 100, 116, 195, 227, 148, 212, 242, 38, 54, 69, 70, 86,
101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 2, 4, 5, 2, 5, 2, 5, 2, 3, 9],
&[
0, 1, 2, 17, 18, 3, 19, 33, 49, 65, 81, 4, 34, 50, 97, 20, 66, 82, 113, 129,
145, 161, 98, 177, 193, 209, 240, 51, 225, 5, 21, 35, 114, 241, 67, 130, 36,
52, 210, 68, 83, 99, 146, 162, 178, 194, 226, 242,
],
),
},
9 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 7, 8, 7, 4, 5, 6, 15],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 51, 98, 114, 146, 161, 177, 193, 209, 240, 7, 21, 83, 130, 162,
178, 225, 22, 36, 52, 67, 84, 115, 194, 210, 23, 53, 99, 147, 163, 226, 241,
85, 131, 179, 211, 37, 68, 116, 195, 227, 54, 100, 101, 148, 212, 242, 38, 69,
70, 86, 102, 117, 132, 133, 149, 164, 165, 180, 196, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 2, 4, 5, 2, 5, 2, 5, 2, 2, 11],
&[
0, 1, 2, 17, 18, 3, 19, 33, 49, 65, 81, 4, 34, 50, 97, 20, 66, 82, 113, 129,
145, 161, 98, 177, 193, 209, 240, 51, 225, 5, 21, 35, 114, 241, 67, 130, 83,
210, 6, 36, 52, 68, 99, 146, 162, 178, 194, 226, 242,
],
),
},
10 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 9, 7, 9, 4, 4, 6, 19],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 7, 21, 83, 130, 146, 162,
178, 210, 225, 22, 36, 52, 67, 84, 115, 194, 23, 53, 99, 147, 163, 179, 211,
226, 241, 68, 85, 116, 131, 37, 100, 195, 227, 54, 69, 101, 148, 212, 242, 38,
39, 70, 86, 102, 117, 132, 133, 149, 150, 164, 165, 180, 196, 197, 213, 228,
229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 3, 5, 6, 5, 2, 6, 1, 2, 3, 9],
&[
0, 1, 2, 17, 18, 3, 33, 49, 19, 65, 81, 4, 34, 50, 97, 113, 20, 66, 82, 129,
145, 161, 98, 177, 193, 209, 240, 51, 225, 5, 21, 35, 99, 114, 241, 130, 67,
210, 83, 178, 194, 6, 36, 52, 68, 131, 146, 162, 226, 242,
],
),
},
11 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 9, 7, 9, 3, 6, 6, 19],
&[
2, 0, 1, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 7, 21, 83, 130, 146, 162,
178, 210, 225, 22, 36, 52, 67, 84, 115, 194, 23, 53, 99, 147, 163, 179, 211,
226, 241, 85, 116, 131, 37, 68, 100, 148, 195, 227, 54, 69, 101, 164, 212, 242,
38, 39, 70, 86, 102, 117, 132, 133, 149, 150, 165, 180, 181, 196, 197, 213,
228, 229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 3, 5, 6, 5, 2, 5, 3, 2, 2, 11],
&[
0, 1, 2, 17, 18, 3, 33, 49, 19, 65, 81, 4, 34, 50, 97, 113, 20, 66, 82, 129,
145, 161, 98, 177, 193, 209, 240, 51, 225, 5, 21, 35, 114, 241, 99, 130, 162,
67, 210, 83, 178, 6, 22, 36, 52, 68, 115, 131, 146, 194, 226, 242,
],
),
},
12 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 4, 7, 11, 6, 9, 8, 5, 5, 6, 23],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 50, 81, 97, 20, 35, 66, 82,
113, 129, 145, 7, 21, 51, 98, 114, 146, 161, 177, 193, 209, 240, 83, 130, 162,
178, 210, 225, 22, 36, 52, 67, 84, 115, 147, 194, 241, 23, 53, 85, 99, 163,
179, 211, 226, 37, 68, 116, 131, 148, 54, 100, 195, 212, 227, 69, 101, 132,
164, 180, 242, 8, 24, 38, 39, 55, 70, 71, 86, 102, 117, 118, 133, 134, 149,
150, 165, 166, 196, 197, 213, 228, 229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 3, 5, 6, 4, 4, 4, 3, 4, 11, 1],
&[
0, 1, 2, 17, 18, 3, 33, 49, 19, 65, 81, 4, 34, 50, 97, 113, 20, 66, 82, 129,
145, 161, 177, 193, 209, 240, 5, 51, 98, 225, 21, 35, 114, 241, 99, 130, 162,
67, 83, 146, 210, 6, 22, 36, 52, 68, 115, 131, 178, 194, 211, 226, 242,
],
),
},
13 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 4, 8, 8, 8, 8, 11, 3, 5, 5, 25],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 50, 81, 97, 20, 35, 66, 82,
113, 129, 145, 161, 21, 51, 98, 114, 177, 193, 209, 240, 7, 83, 130, 146, 162,
178, 210, 225, 22, 36, 52, 67, 115, 147, 194, 241, 23, 53, 84, 85, 99, 116,
131, 163, 179, 211, 226, 37, 68, 148, 54, 100, 164, 195, 212, 69, 132, 180,
227, 242, 8, 24, 38, 39, 55, 70, 71, 86, 101, 102, 103, 117, 118, 133, 134,
149, 150, 165, 166, 181, 196, 197, 213, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 3, 5, 6, 4, 3, 5, 6, 3, 6, 7],
&[
0, 1, 2, 17, 18, 3, 33, 49, 19, 65, 81, 4, 34, 50, 97, 113, 20, 66, 82, 129,
145, 161, 98, 177, 193, 209, 5, 51, 240, 21, 35, 114, 225, 241, 83, 99, 130,
146, 162, 210, 67, 178, 226, 6, 22, 36, 37, 52, 194, 68, 84, 115, 131, 195,
211, 242,
],
),
},
14 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 6, 8, 8, 8, 6, 8, 23],
&[
2, 0, 1, 3, 4, 17, 18, 5, 19, 33, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 7, 51, 98, 114, 161, 177, 193, 209, 240, 21, 83, 130, 146, 178,
225, 22, 36, 67, 115, 147, 162, 210, 241, 23, 52, 84, 85, 99, 179, 194, 211,
37, 53, 68, 116, 131, 148, 163, 226, 8, 54, 100, 164, 195, 212, 24, 69, 101,
117, 132, 180, 227, 228, 38, 39, 55, 70, 71, 86, 87, 102, 103, 118, 133, 134,
149, 150, 165, 166, 181, 196, 197, 213, 229, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 6, 4, 3, 5, 5, 5, 6, 1, 13, 1],
&[
0, 1, 2, 17, 3, 18, 19, 33, 49, 4, 34, 50, 65, 81, 97, 66, 82, 113, 129, 20,
145, 161, 98, 177, 193, 209, 240, 5, 21, 51, 114, 225, 35, 130, 146, 162, 241,
67, 83, 99, 178, 210, 226, 194, 6, 22, 36, 37, 52, 68, 84, 115, 131, 179, 195,
211, 227, 242,
],
),
},
15 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 6, 8, 7, 10, 7, 6, 23],
&[
2, 0, 1, 3, 4, 17, 18, 5, 19, 33, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 7, 21, 51, 98, 114, 161, 177, 209, 240, 83, 130, 146, 178, 193,
225, 22, 36, 67, 115, 147, 162, 210, 241, 52, 84, 85, 99, 179, 194, 211, 23,
37, 53, 68, 116, 131, 148, 163, 164, 226, 8, 54, 100, 132, 180, 195, 212, 69,
86, 101, 117, 227, 228, 24, 38, 39, 55, 70, 71, 87, 102, 103, 118, 133, 134,
149, 150, 165, 166, 181, 196, 197, 213, 229, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 6, 3, 4, 7, 5, 7, 3, 0, 6, 11],
&[
0, 1, 2, 17, 3, 18, 19, 33, 49, 4, 34, 50, 65, 81, 97, 66, 113, 129, 20, 82,
145, 161, 5, 98, 114, 177, 193, 209, 240, 21, 35, 51, 130, 225, 67, 83, 146,
162, 178, 210, 241, 99, 194, 226, 6, 22, 36, 37, 52, 115, 68, 84, 100, 131,
147, 163, 179, 195, 211, 227, 242,
],
),
},
16 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 4, 1, 2, 3, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 7, 9, 8, 12, 7, 7, 21],
&[
2, 0, 1, 3, 4, 17, 18, 5, 19, 33, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 7, 21, 51, 98, 114, 161, 177, 240, 130, 146, 162, 178, 193, 209,
225, 22, 36, 52, 67, 83, 115, 147, 210, 241, 8, 23, 84, 85, 99, 179, 194, 211,
37, 53, 54, 68, 116, 131, 148, 163, 164, 180, 212, 226, 24, 86, 100, 117, 132,
149, 195, 69, 101, 165, 196, 227, 228, 242, 38, 39, 55, 70, 71, 87, 102, 103,
118, 133, 134, 135, 150, 151, 166, 181, 197, 198, 213, 229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 2, 7, 4, 7, 5, 6, 5, 2, 3, 4, 11],
&[
0, 1, 2, 17, 3, 18, 33, 49, 4, 19, 34, 50, 65, 81, 97, 66, 82, 113, 129, 5, 20,
98, 145, 161, 177, 240, 35, 51, 114, 193, 209, 21, 83, 130, 146, 162, 225, 67,
99, 178, 210, 241, 194, 226, 22, 52, 115, 6, 36, 131, 211, 37, 53, 68, 84, 100,
147, 163, 179, 195, 227, 242,
],
),
},
17 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 5, 6, 8, 6, 11, 7, 14, 5, 7, 29],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 20, 50, 65, 81, 97, 7, 35, 66, 82,
113, 129, 21, 51, 98, 114, 145, 161, 177, 240, 36, 83, 130, 146, 193, 209, 8,
22, 52, 67, 115, 147, 162, 178, 210, 225, 241, 23, 84, 99, 148, 179, 194, 211,
24, 37, 53, 54, 68, 85, 86, 116, 117, 131, 163, 180, 212, 226, 100, 149, 164,
165, 195, 38, 69, 101, 132, 213, 227, 242, 39, 40, 55, 56, 70, 71, 87, 102,
103, 118, 119, 133, 134, 135, 150, 151, 166, 167, 181, 182, 196, 197, 198, 214,
228, 229, 230, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 2, 7, 4, 6, 7, 6, 3, 5, 5, 4, 11],
&[
0, 1, 2, 17, 3, 18, 33, 49, 4, 19, 34, 50, 65, 81, 97, 66, 82, 113, 129, 5, 20,
98, 145, 161, 177, 35, 51, 114, 130, 193, 209, 240, 21, 83, 146, 162, 178, 225,
67, 210, 241, 52, 99, 115, 194, 226, 6, 22, 100, 131, 163, 36, 147, 179, 211,
37, 53, 68, 84, 116, 132, 180, 195, 196, 227, 242,
],
),
},
18 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 6, 7, 9, 6, 13, 12, 8, 8, 31],
&[
2, 1, 3, 0, 4, 5, 17, 18, 33, 6, 19, 34, 49, 7, 20, 50, 65, 81, 35, 66, 82, 97,
113, 129, 21, 51, 98, 114, 145, 161, 240, 8, 22, 36, 67, 130, 146, 177, 193,
209, 52, 83, 162, 178, 210, 225, 23, 37, 84, 99, 115, 116, 147, 148, 179, 194,
211, 212, 241, 24, 53, 54, 68, 85, 86, 117, 131, 149, 163, 180, 226, 38, 100,
118, 164, 165, 181, 195, 213, 9, 55, 69, 101, 102, 132, 133, 227, 25, 39, 40,
56, 70, 71, 72, 87, 88, 103, 104, 119, 134, 135, 150, 151, 152, 166, 167, 182,
196, 197, 198, 199, 214, 228, 229, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 5, 9, 5, 4, 5, 8, 1, 21],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 50, 65, 81, 66, 82, 97, 113, 5, 20, 98,
129, 145, 35, 51, 114, 130, 161, 177, 193, 209, 240, 21, 83, 146, 162, 225, 67,
178, 210, 241, 6, 52, 99, 115, 194, 22, 36, 84, 100, 131, 147, 163, 226, 227,
7, 23, 37, 38, 53, 68, 69, 85, 116, 132, 148, 164, 179, 180, 195, 196, 211,
212, 228, 242, 243,
],
),
},
19 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 6, 7, 9, 6, 13, 11, 10, 9, 29],
&[
2, 1, 3, 0, 4, 5, 17, 18, 33, 6, 19, 34, 49, 7, 20, 50, 65, 81, 35, 66, 82, 97,
113, 129, 21, 51, 98, 114, 145, 161, 240, 8, 22, 36, 67, 130, 146, 177, 193,
209, 52, 83, 162, 178, 210, 225, 23, 37, 84, 99, 115, 116, 147, 148, 179, 194,
211, 212, 241, 24, 53, 54, 68, 85, 86, 117, 131, 149, 163, 180, 38, 55, 100,
118, 132, 164, 165, 181, 213, 226, 9, 69, 101, 102, 133, 150, 195, 227, 229,
25, 39, 40, 56, 70, 71, 72, 87, 88, 103, 104, 119, 134, 135, 151, 152, 166,
167, 182, 196, 197, 198, 199, 214, 228, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 5, 8, 6, 6, 6, 5, 4, 19],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 50, 65, 81, 66, 82, 97, 113, 5, 20, 98,
129, 145, 35, 51, 114, 161, 177, 193, 209, 240, 21, 83, 130, 146, 162, 225, 6,
67, 178, 194, 210, 241, 22, 52, 99, 115, 163, 226, 36, 84, 100, 131, 147, 68,
179, 211, 227, 7, 23, 37, 38, 53, 69, 85, 101, 116, 132, 148, 164, 180, 195,
196, 212, 228, 242, 243,
],
),
},
20 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 7, 4, 11, 6, 13, 10, 12, 7, 33],
&[
2, 1, 3, 0, 4, 5, 17, 18, 33, 6, 19, 34, 49, 7, 20, 50, 65, 81, 21, 35, 66, 82,
97, 113, 129, 51, 98, 145, 161, 8, 22, 36, 67, 114, 130, 146, 177, 193, 209,
240, 52, 83, 162, 178, 210, 225, 23, 37, 84, 99, 115, 116, 147, 148, 179, 194,
211, 212, 241, 24, 53, 68, 85, 86, 131, 149, 163, 180, 213, 38, 54, 55, 87,
100, 117, 118, 150, 164, 165, 181, 226, 9, 69, 101, 132, 133, 195, 214, 25, 39,
40, 56, 70, 71, 72, 88, 102, 103, 104, 119, 120, 134, 135, 136, 151, 152, 166,
167, 168, 182, 183, 196, 197, 198, 199, 227, 228, 229, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 5, 8, 6, 6, 6, 5, 4, 19],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 50, 65, 81, 66, 82, 97, 113, 5, 20, 98,
129, 145, 35, 51, 114, 161, 177, 193, 209, 240, 21, 83, 130, 146, 162, 225, 6,
22, 67, 178, 210, 241, 52, 84, 99, 115, 194, 226, 36, 100, 131, 147, 163, 68,
179, 211, 227, 7, 23, 37, 38, 53, 54, 69, 85, 101, 116, 132, 148, 164, 180,
195, 196, 212, 228, 242,
],
),
},
21 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 6, 7, 8, 8, 12, 12, 12, 9, 29],
&[
2, 1, 3, 0, 4, 5, 17, 18, 6, 19, 33, 34, 49, 7, 20, 50, 65, 81, 8, 35, 66, 82,
97, 113, 21, 51, 98, 129, 145, 161, 240, 22, 36, 114, 130, 146, 177, 193, 209,
9, 52, 67, 83, 162, 178, 210, 225, 23, 37, 84, 99, 115, 116, 147, 148, 179,
211, 212, 241, 24, 53, 68, 85, 86, 131, 149, 163, 180, 181, 194, 213, 25, 38,
54, 55, 87, 100, 117, 118, 150, 164, 165, 226, 69, 101, 132, 133, 166, 195,
214, 227, 229, 39, 40, 56, 70, 71, 72, 88, 102, 103, 104, 119, 120, 134, 135,
136, 151, 152, 167, 168, 182, 183, 196, 197, 198, 199, 228, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 2, 6, 5, 8, 5, 8, 5, 6, 5, 21, 0],
&[
0, 1, 2, 3, 17, 18, 4, 33, 19, 34, 49, 50, 65, 81, 5, 66, 82, 97, 113, 20, 35,
98, 114, 129, 145, 161, 240, 51, 130, 177, 193, 209, 6, 21, 67, 83, 146, 162,
178, 225, 22, 52, 194, 210, 241, 36, 84, 99, 115, 163, 226, 100, 131, 147, 179,
211, 7, 23, 37, 38, 53, 54, 68, 69, 85, 101, 116, 117, 132, 148, 164, 180, 195,
196, 212, 227, 242,
],
),
},
22 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 7, 5, 8, 7, 14, 12, 12, 7, 33],
&[
2, 1, 3, 0, 4, 5, 17, 18, 6, 19, 33, 34, 49, 7, 20, 50, 65, 81, 8, 21, 35, 66,
97, 113, 129, 51, 82, 98, 145, 161, 22, 36, 114, 130, 177, 193, 209, 240, 9,
52, 67, 83, 146, 162, 225, 23, 37, 84, 99, 115, 116, 147, 148, 178, 179, 210,
211, 212, 241, 24, 53, 68, 85, 86, 131, 149, 163, 180, 181, 194, 213, 25, 38,
54, 55, 87, 100, 117, 118, 150, 164, 165, 226, 69, 101, 132, 166, 195, 214,
227, 39, 40, 56, 70, 71, 72, 88, 102, 103, 104, 119, 120, 133, 134, 135, 136,
151, 152, 167, 168, 182, 183, 196, 197, 198, 199, 215, 228, 229, 230, 242, 243,
244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 2, 6, 5, 8, 5, 8, 6, 6, 4, 7, 17],
&[
0, 1, 2, 3, 17, 18, 4, 33, 19, 34, 49, 50, 65, 81, 5, 66, 82, 97, 113, 20, 35,
98, 114, 129, 145, 161, 240, 51, 130, 177, 193, 209, 6, 21, 67, 83, 146, 162,
178, 225, 22, 52, 115, 194, 210, 241, 36, 84, 99, 147, 163, 226, 100, 131, 179,
211, 23, 53, 68, 101, 116, 227, 242, 7, 37, 38, 54, 69, 70, 85, 117, 132, 133,
148, 164, 180, 195, 196, 212, 243,
],
),
},
23 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 2, 3, 4, 8, 9, 1, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 4, 10, 5, 15, 13, 11, 45, 0],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 20, 50, 65, 81, 8, 35, 66, 97,
113, 21, 82, 129, 145, 22, 36, 51, 98, 114, 161, 177, 193, 209, 240, 67, 83,
130, 146, 225, 9, 23, 37, 52, 53, 84, 115, 147, 162, 178, 179, 210, 211, 212,
241, 24, 68, 85, 99, 116, 131, 148, 149, 163, 180, 181, 194, 213, 25, 38, 54,
55, 86, 87, 100, 117, 118, 150, 226, 39, 40, 41, 56, 57, 69, 70, 71, 72, 88,
89, 101, 102, 103, 104, 105, 119, 120, 132, 133, 134, 135, 151, 152, 164, 165,
166, 167, 168, 182, 183, 195, 196, 197, 198, 199, 214, 215, 227, 228, 229, 230,
242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 2, 6, 5, 7, 7, 7, 7, 5, 5, 25, 1],
&[
0, 1, 2, 3, 17, 18, 4, 33, 19, 34, 49, 50, 65, 81, 5, 66, 82, 97, 113, 20, 35,
98, 129, 145, 161, 240, 6, 51, 114, 130, 177, 193, 209, 21, 67, 83, 146, 162,
178, 225, 22, 36, 52, 115, 194, 210, 241, 84, 99, 147, 163, 226, 7, 68, 131,
179, 211, 8, 23, 37, 38, 53, 54, 69, 70, 85, 100, 101, 116, 117, 132, 133, 148,
164, 165, 180, 195, 196, 212, 227, 228, 242, 243,
],
),
},
24 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 2, 3, 4, 8, 9, 1, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 6, 3, 9, 6, 9, 16, 13, 11, 37],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 20, 50, 65, 81, 8, 21, 35, 66,
97, 113, 82, 129, 145, 22, 36, 51, 98, 114, 161, 177, 193, 240, 67, 83, 130,
146, 209, 225, 9, 23, 37, 52, 84, 162, 178, 210, 241, 24, 53, 68, 85, 99, 115,
116, 117, 131, 147, 148, 149, 179, 211, 212, 213, 25, 38, 54, 55, 86, 87, 118,
150, 163, 164, 180, 181, 194, 69, 100, 101, 119, 132, 165, 166, 182, 195, 214,
226, 39, 40, 41, 56, 57, 70, 71, 72, 88, 89, 102, 103, 104, 105, 120, 133, 134,
135, 136, 151, 152, 153, 167, 168, 183, 196, 197, 198, 199, 215, 227, 228, 229,
230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 2, 7, 4, 5, 8, 5, 7, 7, 4, 8, 23],
&[
0, 1, 2, 3, 17, 18, 4, 33, 5, 19, 34, 49, 50, 65, 81, 66, 82, 97, 113, 20, 35,
98, 129, 145, 6, 51, 114, 161, 177, 193, 209, 240, 21, 83, 130, 146, 225, 22,
67, 162, 178, 194, 210, 241, 7, 36, 52, 84, 99, 115, 226, 131, 147, 163, 211,
23, 53, 68, 85, 100, 116, 164, 179, 8, 24, 37, 38, 54, 69, 70, 86, 101, 117,
132, 133, 148, 149, 180, 195, 196, 197, 212, 227, 228, 242, 243,
],
),
},
25 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 2, 3, 4, 8, 9, 1, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 5, 8, 8, 8, 17, 15, 10, 39],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 8, 20, 50, 65, 21, 35, 66, 81,
97, 9, 82, 113, 129, 145, 22, 36, 51, 98, 161, 177, 193, 240, 23, 67, 83, 114,
130, 146, 209, 225, 10, 37, 52, 84, 162, 178, 210, 241, 24, 25, 53, 85, 86, 99,
115, 116, 117, 147, 148, 149, 179, 180, 211, 212, 213, 26, 38, 54, 56, 68, 87,
118, 131, 150, 163, 164, 181, 182, 194, 214, 55, 69, 88, 100, 101, 119, 132,
165, 166, 226, 39, 40, 41, 57, 70, 71, 72, 89, 102, 103, 104, 105, 120, 133,
134, 135, 136, 151, 152, 153, 167, 168, 183, 184, 195, 196, 197, 198, 199, 200,
215, 227, 228, 229, 230, 242, 243, 244, 245,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 2, 7, 3, 6, 9, 7, 7, 5, 9, 6, 23],
&[
0, 1, 2, 3, 17, 18, 4, 33, 5, 19, 34, 49, 50, 65, 81, 66, 97, 113, 20, 35, 82,
98, 129, 145, 6, 51, 114, 130, 161, 177, 193, 209, 240, 21, 67, 83, 146, 162,
178, 225, 22, 36, 52, 115, 194, 210, 241, 7, 84, 99, 147, 226, 23, 53, 68, 85,
131, 163, 164, 179, 211, 100, 101, 116, 148, 227, 242, 8, 24, 37, 38, 39, 54,
55, 69, 70, 86, 102, 117, 132, 133, 149, 180, 181, 195, 196, 197, 212, 228,
243,
],
),
},
26 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 2, 3, 4, 8, 9, 1, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 6, 7, 5, 8, 19, 19, 10, 39],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 8, 20, 50, 65, 21, 35, 81, 97,
113, 9, 66, 82, 129, 145, 240, 22, 36, 51, 98, 161, 177, 193, 23, 67, 114, 209,
225, 10, 37, 52, 83, 84, 130, 146, 241, 24, 25, 53, 85, 99, 115, 117, 147, 148,
149, 150, 162, 178, 180, 210, 211, 212, 213, 214, 26, 38, 54, 55, 56, 68, 86,
87, 116, 118, 119, 131, 151, 163, 164, 179, 181, 182, 194, 69, 88, 100, 101,
132, 165, 166, 167, 183, 215, 39, 40, 41, 57, 70, 71, 72, 89, 102, 103, 104,
105, 120, 121, 133, 134, 135, 136, 152, 153, 168, 169, 184, 195, 196, 197, 198,
199, 200, 216, 226, 227, 228, 229, 230, 231, 242, 243, 245,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 2, 6, 5, 7, 7, 7, 8, 4, 9, 5, 9, 17],
&[
0, 1, 2, 3, 17, 18, 4, 33, 5, 19, 34, 49, 50, 65, 66, 81, 82, 97, 113, 6, 20,
35, 98, 114, 129, 145, 51, 130, 161, 177, 193, 209, 240, 21, 67, 83, 146, 162,
178, 225, 7, 22, 36, 52, 115, 194, 210, 241, 84, 99, 147, 226, 23, 53, 68, 85,
116, 131, 163, 179, 211, 37, 100, 164, 212, 242, 54, 101, 102, 117, 148, 180,
195, 227, 228, 8, 24, 38, 39, 55, 69, 70, 86, 118, 132, 133, 149, 165, 181,
196, 197, 243,
],
),
},
27 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 2, 3, 4, 8, 9, 1, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 4, 3, 4, 6, 3, 8, 7, 8, 20, 14, 13, 45],
&[
2, 1, 3, 4, 5, 6, 0, 7, 17, 18, 19, 33, 34, 8, 20, 49, 65, 9, 21, 35, 50, 81,
97, 66, 113, 129, 22, 36, 51, 82, 145, 161, 177, 240, 23, 67, 98, 114, 193,
209, 225, 10, 24, 37, 52, 83, 130, 146, 241, 25, 53, 54, 84, 85, 86, 99, 115,
117, 147, 148, 149, 162, 178, 180, 210, 211, 212, 213, 214, 26, 38, 55, 68, 87,
88, 116, 131, 150, 163, 179, 181, 182, 194, 56, 57, 69, 89, 100, 118, 119, 132,
151, 164, 165, 167, 215, 39, 40, 41, 42, 58, 70, 71, 72, 73, 90, 101, 102, 103,
104, 105, 106, 120, 121, 133, 134, 135, 136, 152, 153, 166, 168, 169, 183, 184,
195, 196, 197, 198, 199, 200, 216, 226, 227, 228, 229, 230, 231, 242, 243, 245,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 7, 7, 6, 7, 9, 7, 9, 25],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 35, 66, 82,
113, 129, 51, 98, 114, 145, 161, 177, 240, 7, 21, 83, 130, 146, 193, 209, 36,
67, 162, 178, 210, 225, 22, 52, 84, 99, 115, 194, 241, 8, 23, 85, 131, 147,
163, 179, 211, 226, 37, 53, 68, 116, 148, 164, 242, 24, 100, 101, 117, 149,
180, 195, 212, 227, 9, 25, 38, 39, 54, 55, 69, 70, 71, 86, 87, 102, 118, 132,
133, 134, 150, 165, 181, 196, 197, 213, 228, 229, 243,
],
),
},
28 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 2, 3, 4, 8, 9, 1, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 4, 3, 4, 6, 4, 7, 5, 9, 13, 20, 19, 49],
&[
2, 1, 3, 4, 5, 6, 0, 7, 17, 18, 8, 19, 33, 20, 34, 49, 65, 9, 21, 35, 50, 81,
97, 22, 66, 113, 129, 36, 51, 82, 145, 161, 177, 240, 23, 98, 193, 209, 225,
10, 24, 37, 52, 67, 83, 114, 130, 241, 25, 53, 84, 85, 86, 118, 146, 147, 150,
162, 212, 213, 214, 38, 54, 55, 68, 87, 88, 99, 115, 148, 149, 151, 178, 179,
180, 181, 182, 183, 210, 211, 215, 26, 39, 56, 57, 89, 100, 116, 117, 119, 120,
131, 132, 133, 152, 163, 164, 165, 194, 216, 40, 41, 42, 58, 69, 70, 71, 72,
73, 90, 101, 102, 103, 104, 105, 106, 121, 122, 134, 135, 136, 137, 153, 154,
166, 167, 168, 169, 170, 184, 185, 195, 196, 197, 198, 199, 200, 201, 217, 226,
227, 228, 229, 230, 231, 232, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 5, 6, 9, 7, 7, 4, 10, 8, 9, 29],
&[
0, 1, 2, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 50, 66, 81, 97, 7, 20, 35, 82,
113, 129, 21, 51, 98, 114, 145, 161, 177, 193, 240, 8, 67, 83, 130, 146, 209,
225, 22, 36, 162, 178, 194, 210, 241, 52, 84, 99, 115, 23, 37, 53, 68, 85, 131,
147, 179, 211, 226, 9, 24, 116, 148, 163, 164, 212, 242, 25, 54, 86, 100, 117,
149, 180, 195, 227, 10, 26, 38, 39, 40, 55, 56, 69, 70, 71, 87, 101, 102, 103,
118, 132, 133, 134, 150, 165, 166, 181, 182, 196, 197, 213, 228, 229, 243,
],
),
},
29 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 2, 3, 4, 8, 9, 1, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 4, 3, 4, 6, 5, 6, 5, 7, 7, 22, 21, 53],
&[
2, 1, 3, 4, 5, 6, 0, 7, 17, 18, 8, 19, 33, 20, 34, 49, 65, 9, 21, 35, 50, 81,
97, 22, 66, 113, 129, 240, 36, 51, 82, 145, 161, 177, 23, 98, 193, 209, 225,
10, 24, 37, 52, 67, 114, 241, 83, 84, 85, 86, 130, 146, 214, 25, 38, 53, 54,
68, 87, 88, 118, 147, 148, 149, 150, 151, 162, 178, 181, 183, 210, 211, 212,
213, 215, 26, 39, 55, 56, 57, 89, 99, 100, 115, 116, 117, 119, 120, 131, 152,
164, 165, 179, 180, 182, 216, 40, 41, 42, 58, 69, 70, 71, 72, 73, 90, 101, 102,
103, 104, 105, 106, 121, 122, 132, 133, 134, 135, 136, 137, 153, 154, 163, 166,
167, 168, 169, 170, 184, 185, 194, 195, 196, 197, 198, 199, 200, 201, 217, 226,
227, 228, 229, 230, 231, 232, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 4, 2, 6, 5, 8, 6, 5, 6, 5, 7, 13, 12, 43],
&[
2, 1, 3, 0, 4, 17, 18, 5, 33, 6, 19, 34, 49, 65, 81, 50, 97, 113, 129, 240, 7,
20, 35, 66, 82, 145, 161, 177, 21, 51, 98, 193, 209, 225, 36, 114, 130, 146,
241, 8, 22, 67, 83, 162, 178, 52, 99, 115, 194, 210, 23, 37, 68, 84, 131, 147,
226, 9, 24, 53, 85, 86, 100, 116, 148, 163, 179, 211, 213, 242, 25, 38, 54, 87,
117, 149, 164, 180, 181, 195, 212, 214, 10, 26, 39, 40, 55, 56, 57, 69, 70, 71,
72, 88, 101, 102, 103, 104, 118, 119, 120, 132, 133, 134, 135, 136, 150, 151,
165, 166, 167, 182, 183, 196, 197, 198, 199, 215, 227, 228, 229, 230, 231, 243,
244,
],
),
},
_ => ycbcr_444_tables(QUALITY_TIERS.len() - 1),
}
}
#[allow(clippy::too_many_lines)]
pub(crate) fn ycbcr_420_tables(tier_idx: usize) -> HuffmanTableSet {
match tier_idx {
0 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 4, 3, 5, 6, 3, 6, 4, 3, 3, 13],
&[
0, 1, 2, 3, 17, 18, 33, 49, 4, 19, 34, 65, 50, 81, 97, 20, 51, 66, 82, 113, 35,
98, 129, 145, 161, 177, 5, 83, 114, 21, 67, 130, 193, 209, 240, 99, 146, 162,
225, 52, 210, 241, 36, 178, 194, 68, 84, 100, 115, 131, 147, 163, 179, 195,
211, 226, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 3, 2, 6, 2, 1, 3, 4, 1, 3, 5],
&[
0, 1, 2, 17, 18, 49, 3, 19, 33, 65, 81, 97, 34, 50, 4, 20, 66, 82, 113, 129,
98, 145, 161, 130, 177, 193, 51, 209, 225, 240, 241, 35, 67, 114, 5, 83, 131,
146, 194,
],
),
},
1 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 4, 2, 6, 8, 4, 4, 4, 2, 4, 15],
&[
0, 1, 2, 3, 17, 18, 4, 33, 19, 34, 49, 65, 50, 81, 20, 66, 82, 97, 113, 129, 5,
35, 51, 98, 114, 145, 161, 177, 21, 83, 193, 240, 67, 130, 209, 225, 52, 99,
146, 162, 36, 210, 178, 194, 226, 241, 37, 53, 68, 84, 100, 101, 115, 131, 132,
147, 163, 179, 211, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 2, 4, 5, 3, 3, 3, 3, 4, 0, 7],
&[
0, 1, 2, 17, 18, 49, 3, 19, 33, 65, 81, 4, 34, 50, 97, 20, 66, 82, 113, 129,
98, 145, 161, 177, 193, 240, 35, 130, 209, 51, 114, 225, 5, 67, 83, 241, 21,
36, 99, 131, 146, 162, 194,
],
),
},
2 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 6, 7, 6, 3, 6, 2, 3, 17],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 19, 34, 50, 65, 81, 5, 66, 82, 97, 20, 51, 113,
129, 145, 177, 21, 35, 83, 98, 114, 161, 240, 52, 130, 146, 162, 193, 209, 67,
178, 225, 6, 36, 99, 194, 210, 241, 22, 226, 53, 84, 115, 37, 68, 69, 85, 100,
101, 116, 131, 132, 147, 148, 163, 179, 195, 211, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 3, 2, 4, 5, 2, 4, 5, 3, 3, 2, 7],
&[
0, 1, 2, 17, 18, 3, 19, 33, 49, 65, 81, 4, 34, 50, 97, 20, 66, 82, 113, 129,
145, 161, 98, 177, 193, 240, 5, 35, 51, 209, 225, 114, 130, 241, 21, 67, 83,
36, 146, 52, 99, 115, 131, 162, 194, 210,
],
),
},
3 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 2, 1, 3, 2, 3, 4, 5, 7, 9, 6, 5, 2, 3, 2, 15],
&[
0, 2, 1, 3, 17, 18, 4, 33, 19, 34, 49, 5, 50, 65, 81, 20, 66, 82, 97, 113, 35,
51, 114, 129, 145, 161, 177, 21, 52, 83, 98, 130, 146, 193, 209, 240, 6, 67,
162, 178, 210, 225, 22, 36, 84, 194, 241, 99, 226, 68, 115, 147, 53, 100, 37,
69, 85, 101, 116, 131, 132, 148, 163, 164, 179, 195, 211, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 2, 1, 2, 4, 3, 7, 1, 7, 3, 3, 3, 0, 11],
&[
0, 1, 2, 17, 18, 3, 33, 49, 4, 19, 65, 81, 34, 50, 97, 20, 66, 82, 113, 129,
145, 161, 98, 5, 21, 51, 177, 193, 209, 240, 35, 83, 225, 114, 130, 241, 67,
99, 146, 6, 36, 52, 68, 115, 131, 162, 178, 194, 210, 226,
],
),
},
4 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 6, 9, 9, 7, 3, 1, 5, 3, 13],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 20, 66, 82, 113, 129,
145, 6, 35, 51, 98, 114, 161, 177, 209, 240, 21, 52, 83, 130, 146, 162, 178,
193, 225, 22, 36, 67, 84, 115, 194, 210, 99, 226, 241, 68, 53, 100, 131, 147,
211, 37, 163, 242, 38, 69, 85, 101, 116, 132, 148, 164, 179, 195, 196, 227,
243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 3, 1, 6, 3, 6, 4, 5, 3, 3, 2, 2, 11],
&[
0, 1, 2, 17, 3, 18, 33, 49, 4, 19, 34, 65, 81, 97, 20, 50, 113, 5, 66, 82, 129,
145, 161, 98, 177, 209, 240, 21, 51, 83, 193, 225, 35, 114, 241, 99, 130, 146,
67, 162, 6, 36, 22, 52, 68, 84, 115, 131, 178, 194, 210, 226, 242,
],
),
},
5 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 10, 7, 6, 3, 4, 6, 2, 19],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 66, 82, 113,
129, 145, 161, 21, 35, 51, 98, 114, 130, 177, 193, 209, 240, 52, 83, 115, 146,
162, 178, 225, 22, 36, 67, 84, 194, 210, 99, 226, 241, 7, 53, 68, 147, 23, 100,
131, 163, 179, 211, 37, 242, 38, 54, 69, 70, 85, 101, 102, 116, 117, 132, 148,
149, 164, 195, 196, 212, 227, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 4, 3, 5, 5, 6, 4, 5, 3, 3, 2, 7],
&[
0, 1, 2, 17, 3, 18, 4, 19, 33, 49, 65, 81, 97, 20, 34, 50, 113, 129, 5, 66, 82,
145, 161, 21, 98, 177, 193, 209, 240, 35, 51, 83, 225, 114, 130, 146, 162, 241,
6, 67, 99, 36, 52, 178, 22, 194, 68, 84, 115, 131, 210, 226, 242,
],
),
},
6 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 9, 5, 5, 4, 4, 5, 21],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 66, 82, 113,
129, 145, 161, 21, 35, 51, 98, 114, 177, 193, 209, 240, 52, 83, 115, 130, 146,
162, 178, 210, 225, 22, 36, 67, 84, 194, 7, 99, 147, 226, 241, 53, 68, 131,
163, 23, 100, 179, 211, 37, 148, 195, 227, 242, 38, 54, 69, 70, 85, 86, 101,
102, 116, 117, 132, 133, 149, 164, 165, 180, 196, 212, 228, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 4, 4, 2, 7, 6, 4, 5, 3, 2, 3, 9],
&[
0, 1, 2, 17, 3, 18, 4, 19, 33, 49, 34, 65, 81, 97, 50, 113, 5, 20, 66, 82, 129,
145, 161, 21, 98, 177, 193, 209, 240, 35, 51, 83, 225, 6, 114, 146, 162, 241,
67, 99, 130, 22, 178, 36, 52, 194, 7, 68, 84, 115, 131, 147, 210, 226, 242,
],
),
},
7 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 10, 6, 5, 6, 4, 23, 0],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 21, 52, 83, 115, 130, 146,
162, 178, 210, 225, 7, 22, 36, 67, 84, 194, 53, 99, 147, 226, 241, 23, 68, 131,
163, 179, 211, 37, 100, 227, 242, 38, 54, 69, 70, 85, 86, 101, 102, 116, 117,
132, 133, 148, 149, 164, 165, 180, 195, 196, 212, 228, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 5, 5, 5, 6, 5, 2, 4, 3, 9],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 20, 50, 113, 129, 66, 82,
145, 161, 240, 21, 98, 177, 193, 209, 6, 35, 51, 83, 114, 225, 22, 130, 146,
162, 241, 67, 99, 36, 52, 178, 226, 84, 194, 210, 7, 53, 68, 100, 115, 131,
147, 179, 242,
],
),
},
8 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 8, 6, 6, 6, 4, 8, 15],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 51, 98, 114, 146, 161, 177, 193, 209, 240, 21, 83, 115, 130,
162, 178, 210, 225, 22, 36, 52, 67, 84, 194, 7, 53, 99, 147, 226, 241, 23, 68,
131, 163, 179, 211, 37, 85, 100, 227, 38, 54, 69, 70, 116, 148, 195, 242, 86,
101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 212, 228, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 5, 5, 5, 5, 6, 4, 3, 7, 5],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 20, 50, 113, 129, 66, 82,
145, 161, 177, 21, 98, 193, 209, 240, 35, 51, 83, 114, 225, 6, 22, 130, 146,
162, 241, 67, 99, 178, 210, 36, 52, 226, 7, 53, 68, 84, 100, 115, 194, 131,
147, 163, 179, 242,
],
),
},
9 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 7, 8, 7, 4, 5, 5, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 51, 98, 114, 146, 161, 177, 193, 209, 240, 21, 83, 130, 162,
178, 210, 225, 7, 22, 36, 52, 67, 84, 115, 194, 53, 99, 147, 163, 179, 226,
241, 23, 68, 116, 131, 37, 100, 195, 211, 227, 38, 85, 148, 212, 242, 54, 69,
70, 86, 101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 228, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 5, 5, 5, 5, 5, 7, 2, 3, 9],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 50, 113, 129, 145, 20,
66, 82, 161, 177, 21, 98, 193, 209, 240, 35, 51, 83, 114, 225, 6, 130, 146,
162, 241, 22, 52, 67, 84, 99, 178, 210, 36, 226, 7, 115, 194, 37, 53, 68, 100,
131, 147, 163, 179, 242,
],
),
},
10 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 9, 7, 8, 7, 4, 6, 3, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 51, 98, 114, 146, 161, 177, 193, 209, 240, 21, 83, 130, 162,
178, 210, 225, 7, 22, 36, 52, 67, 84, 115, 194, 53, 99, 147, 163, 179, 226,
241, 23, 116, 131, 211, 37, 68, 85, 100, 195, 227, 148, 212, 242, 38, 54, 69,
70, 86, 101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 5, 5, 5, 5, 5, 4, 5, 13, 0],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 50, 113, 129, 145, 20,
66, 82, 161, 177, 21, 98, 193, 209, 240, 35, 51, 83, 114, 225, 6, 130, 146,
162, 241, 22, 67, 99, 210, 36, 52, 84, 178, 226, 7, 37, 53, 68, 100, 115, 131,
132, 147, 163, 179, 194, 242,
],
),
},
11 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 8, 10, 8, 2, 6, 4, 15],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 21, 83, 130, 146, 162,
178, 210, 225, 7, 22, 36, 52, 53, 67, 84, 115, 179, 194, 23, 99, 116, 131, 147,
163, 226, 241, 68, 211, 37, 85, 100, 148, 195, 227, 54, 69, 212, 242, 38, 70,
86, 101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 5, 5, 5, 5, 5, 5, 6, 0, 15],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 50, 113, 129, 145, 20,
66, 82, 161, 177, 21, 98, 193, 209, 240, 35, 51, 83, 114, 225, 6, 130, 146,
162, 241, 22, 67, 99, 178, 210, 36, 52, 84, 147, 194, 226, 7, 37, 53, 68, 100,
115, 116, 131, 132, 163, 179, 195, 211, 227, 242,
],
),
},
12 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 3, 2, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 8, 10, 7, 4, 5, 4, 19],
&[
2, 0, 1, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 21, 83, 130, 146, 162,
178, 210, 225, 7, 22, 36, 52, 53, 67, 84, 115, 179, 194, 99, 116, 147, 163,
211, 226, 241, 23, 68, 85, 131, 37, 100, 148, 195, 227, 69, 101, 212, 242, 38,
54, 70, 86, 102, 117, 132, 133, 149, 150, 164, 165, 180, 196, 197, 213, 228,
229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 7, 5, 5, 4, 5, 5, 17, 1],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 50, 113, 129, 20, 66, 82,
145, 161, 177, 240, 21, 98, 193, 209, 225, 6, 35, 51, 83, 114, 130, 146, 162,
241, 22, 67, 99, 178, 210, 52, 84, 147, 194, 226, 7, 23, 36, 37, 53, 68, 69,
100, 115, 116, 131, 132, 163, 179, 195, 211, 227, 242,
],
),
},
13 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 4, 2, 3, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 9, 7, 9, 3, 6, 7, 17],
&[
2, 0, 1, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 7, 21, 83, 130, 146, 162,
178, 210, 225, 22, 36, 53, 67, 115, 179, 194, 23, 52, 84, 99, 116, 147, 163,
211, 241, 85, 131, 226, 37, 68, 100, 148, 195, 227, 54, 69, 101, 132, 164, 212,
242, 38, 70, 86, 102, 117, 133, 149, 150, 165, 180, 181, 196, 197, 213, 228,
229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 7, 5, 5, 4, 7, 5, 2, 15],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 50, 113, 129, 20, 66, 82,
145, 161, 177, 240, 21, 98, 193, 209, 225, 6, 35, 51, 83, 114, 130, 146, 162,
241, 22, 52, 67, 84, 99, 178, 210, 115, 147, 163, 194, 226, 36, 100, 7, 23, 37,
53, 68, 69, 85, 116, 131, 132, 148, 179, 195, 211, 242,
],
),
},
14 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 4, 1, 2, 3, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 8, 10, 5, 7, 5, 7, 21],
&[
2, 0, 1, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 7, 21, 83, 130, 146, 162,
178, 225, 22, 36, 53, 67, 115, 116, 179, 194, 210, 241, 52, 84, 99, 147, 211,
23, 37, 68, 85, 131, 163, 226, 100, 148, 164, 195, 212, 54, 69, 101, 132, 180,
227, 242, 38, 39, 55, 70, 71, 86, 102, 117, 118, 133, 134, 149, 150, 165, 166,
181, 196, 197, 213, 228, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 6, 6, 7, 5, 5, 5, 2, 15],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 50, 113, 129, 20, 66, 82,
145, 161, 177, 21, 35, 98, 193, 209, 240, 6, 51, 83, 114, 130, 146, 225, 22,
67, 162, 210, 241, 52, 84, 99, 178, 194, 36, 115, 147, 163, 226, 7, 100, 23,
37, 53, 68, 69, 85, 116, 131, 132, 148, 179, 195, 211, 227, 242,
],
),
},
15 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 4, 1, 2, 3, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 7, 10, 8, 9, 5, 6, 23],
&[
2, 0, 1, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 51, 98, 114, 161, 177, 193, 209, 240, 7, 21, 83, 130, 146, 178,
225, 22, 36, 53, 67, 115, 147, 162, 179, 210, 241, 23, 52, 84, 85, 99, 116,
194, 211, 37, 68, 117, 131, 148, 163, 164, 180, 226, 54, 100, 132, 195, 212,
69, 101, 196, 227, 228, 242, 8, 24, 38, 39, 55, 70, 71, 86, 87, 102, 103, 118,
133, 134, 149, 150, 165, 166, 181, 197, 213, 229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 7, 4, 7, 4, 6, 6, 4, 15],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 97, 5, 50, 113, 129, 20, 66, 82,
145, 161, 177, 240, 35, 98, 193, 209, 6, 21, 51, 114, 130, 146, 225, 22, 83,
162, 241, 67, 84, 99, 178, 194, 210, 36, 52, 115, 147, 163, 226, 7, 100, 131,
211, 23, 37, 53, 68, 69, 85, 116, 132, 148, 164, 179, 180, 195, 227, 242,
],
),
},
16 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 1, 2, 3, 4, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 7, 8, 10, 10, 5, 29, 0],
&[
2, 0, 1, 3, 4, 17, 18, 5, 19, 33, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 7, 51, 98, 114, 161, 177, 209, 240, 21, 83, 130, 146, 178, 193,
225, 22, 36, 67, 115, 147, 162, 210, 241, 52, 53, 84, 85, 99, 117, 179, 180,
194, 211, 23, 37, 68, 116, 131, 148, 163, 164, 212, 226, 8, 54, 100, 132, 195,
24, 38, 39, 55, 69, 70, 71, 86, 87, 101, 102, 103, 118, 133, 134, 149, 150,
151, 165, 166, 181, 196, 197, 213, 227, 228, 229, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 4, 6, 6, 6, 6, 6, 6, 5, 6, 15],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 65, 81, 5, 50, 97, 113, 129, 145, 20,
66, 82, 161, 177, 240, 6, 35, 98, 114, 193, 209, 21, 51, 83, 130, 146, 225, 22,
67, 162, 178, 210, 241, 52, 84, 99, 115, 163, 194, 7, 36, 147, 211, 226, 68,
85, 100, 131, 148, 227, 8, 23, 37, 53, 54, 69, 101, 116, 117, 132, 164, 179,
180, 195, 242,
],
),
},
17 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 8, 8, 6, 10, 11, 10, 6, 9, 21],
&[
2, 0, 1, 3, 4, 17, 18, 5, 19, 33, 34, 49, 6, 50, 65, 81, 20, 35, 66, 82, 97,
113, 129, 145, 7, 21, 51, 98, 114, 161, 177, 240, 36, 130, 146, 178, 193, 209,
22, 52, 67, 83, 115, 147, 162, 210, 225, 241, 8, 23, 54, 84, 85, 99, 117, 179,
180, 194, 211, 37, 53, 68, 116, 131, 148, 163, 164, 212, 226, 24, 86, 100, 132,
149, 195, 38, 69, 101, 165, 196, 213, 227, 228, 242, 39, 55, 70, 71, 87, 102,
103, 118, 119, 133, 134, 135, 150, 151, 166, 181, 182, 197, 198, 229, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 2, 1, 2, 3, 4, 5, 8, 6, 6, 6, 7, 3, 7, 7, 13],
&[
0, 1, 2, 3, 17, 4, 18, 33, 19, 34, 49, 65, 5, 50, 81, 97, 113, 20, 66, 82, 129,
145, 161, 177, 240, 6, 35, 98, 114, 193, 209, 21, 51, 83, 130, 146, 225, 22,
67, 162, 178, 210, 241, 7, 52, 84, 99, 115, 194, 226, 36, 147, 163, 23, 85,
100, 131, 164, 179, 211, 37, 53, 68, 116, 148, 227, 242, 8, 38, 54, 69, 101,
117, 132, 149, 180, 195, 196, 212, 243,
],
),
},
18 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 4, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 4, 5, 6, 7, 1, 2, 3, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 5, 6, 8, 6, 9, 12, 11, 8, 6, 27],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 20, 50, 65, 81, 97, 7, 35, 66, 82,
113, 129, 21, 51, 98, 114, 145, 161, 177, 240, 36, 67, 130, 146, 193, 209, 8,
22, 52, 83, 115, 162, 178, 210, 225, 23, 54, 84, 99, 117, 147, 148, 179, 180,
194, 211, 241, 24, 37, 53, 68, 85, 116, 131, 163, 181, 212, 226, 86, 100, 118,
132, 149, 164, 165, 195, 38, 69, 133, 213, 227, 242, 39, 40, 55, 56, 70, 71,
87, 101, 102, 103, 119, 134, 135, 150, 151, 166, 167, 182, 196, 197, 198, 214,
228, 229, 230, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 2, 1, 2, 3, 4, 5, 7, 7, 7, 8, 6, 4, 9, 5, 17],
&[
0, 2, 1, 3, 17, 4, 18, 33, 19, 34, 49, 65, 5, 50, 81, 97, 113, 20, 66, 82, 129,
145, 161, 240, 6, 35, 98, 114, 177, 193, 209, 21, 51, 83, 130, 146, 162, 225,
7, 22, 36, 67, 178, 194, 210, 241, 52, 84, 99, 115, 147, 226, 23, 85, 131, 163,
53, 68, 100, 116, 148, 164, 179, 211, 242, 37, 101, 195, 212, 227, 8, 24, 38,
54, 69, 70, 86, 117, 118, 132, 133, 149, 180, 181, 196, 228, 243,
],
),
},
19 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 4, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 4, 5, 6, 7, 1, 2, 3, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 6, 8, 5, 10, 14, 12, 5, 7, 29],
&[
2, 1, 3, 0, 4, 5, 17, 18, 33, 6, 19, 34, 49, 20, 50, 65, 81, 97, 7, 35, 66, 82,
113, 129, 21, 51, 98, 114, 145, 161, 177, 240, 36, 130, 146, 193, 209, 8, 22,
52, 67, 83, 115, 162, 178, 210, 225, 23, 37, 54, 84, 99, 116, 147, 148, 179,
180, 194, 211, 212, 241, 24, 53, 68, 85, 86, 117, 118, 131, 149, 163, 181, 226,
100, 164, 165, 195, 213, 38, 55, 69, 101, 132, 133, 227, 39, 40, 56, 70, 71,
72, 87, 88, 102, 103, 104, 119, 134, 135, 150, 151, 166, 167, 182, 196, 197,
198, 214, 228, 229, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 2, 6, 4, 10, 6, 5, 7, 8, 5, 6, 7, 17],
&[
0, 1, 2, 3, 17, 18, 4, 33, 5, 19, 34, 49, 65, 81, 50, 66, 97, 113, 6, 20, 35,
82, 98, 129, 145, 161, 177, 240, 51, 114, 130, 146, 193, 209, 21, 83, 162, 178,
225, 7, 22, 36, 67, 194, 210, 241, 23, 52, 84, 99, 115, 147, 163, 226, 85, 100,
131, 179, 211, 53, 68, 116, 148, 164, 242, 8, 37, 101, 149, 195, 212, 227, 24,
38, 54, 55, 69, 70, 86, 117, 118, 132, 133, 165, 180, 181, 196, 228, 243,
],
),
},
20 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 1, 2, 3, 4, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 6, 7, 8, 7, 16, 10, 9, 6, 31],
&[
2, 1, 3, 0, 4, 5, 17, 18, 33, 6, 19, 34, 49, 7, 20, 50, 65, 81, 35, 66, 82, 97,
113, 129, 21, 51, 98, 145, 161, 177, 240, 8, 22, 36, 114, 130, 146, 193, 209,
52, 67, 83, 162, 178, 210, 225, 23, 37, 54, 84, 99, 115, 116, 118, 147, 148,
179, 181, 194, 211, 212, 241, 24, 53, 68, 85, 86, 117, 131, 149, 163, 180, 9,
38, 100, 132, 164, 165, 195, 213, 226, 55, 69, 101, 102, 133, 227, 25, 39, 40,
56, 70, 71, 72, 87, 88, 103, 104, 119, 134, 135, 150, 151, 152, 166, 167, 182,
196, 197, 198, 199, 214, 228, 229, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 2, 6, 4, 10, 6, 5, 7, 7, 6, 8, 7, 17],
&[
0, 1, 2, 3, 17, 18, 4, 33, 5, 19, 34, 49, 65, 81, 50, 66, 97, 113, 6, 20, 35,
82, 98, 129, 145, 161, 177, 240, 51, 114, 130, 146, 193, 209, 21, 83, 162, 178,
225, 7, 22, 36, 67, 194, 210, 241, 23, 52, 84, 99, 115, 147, 226, 85, 100, 131,
163, 179, 211, 53, 68, 116, 148, 164, 195, 212, 242, 8, 37, 86, 101, 149, 227,
228, 24, 38, 54, 55, 69, 70, 102, 117, 118, 132, 133, 165, 180, 181, 196, 197,
243,
],
),
},
21 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 1, 2, 3, 4, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 6, 7, 9, 5, 15, 12, 8, 9, 29],
&[
2, 1, 3, 0, 4, 5, 17, 18, 33, 6, 19, 34, 49, 7, 20, 50, 65, 81, 35, 66, 82, 97,
113, 129, 21, 51, 98, 114, 145, 161, 240, 8, 22, 36, 67, 130, 146, 177, 193,
209, 52, 83, 162, 178, 225, 23, 37, 84, 99, 115, 116, 118, 147, 148, 179, 181,
194, 210, 211, 241, 24, 53, 54, 55, 68, 85, 86, 131, 149, 163, 180, 212, 9, 38,
100, 117, 164, 165, 213, 226, 69, 101, 102, 132, 133, 150, 195, 227, 229, 25,
39, 40, 56, 70, 71, 72, 87, 88, 103, 104, 119, 134, 135, 151, 152, 166, 167,
182, 196, 197, 198, 199, 214, 228, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 2, 6, 4, 9, 7, 6, 10, 4, 9, 5, 11, 13],
&[
0, 1, 2, 3, 17, 18, 4, 33, 5, 19, 34, 49, 65, 81, 50, 66, 97, 113, 6, 20, 35,
82, 98, 129, 145, 161, 240, 51, 114, 130, 146, 177, 193, 209, 21, 67, 83, 162,
178, 225, 7, 22, 36, 52, 99, 115, 147, 194, 210, 241, 23, 84, 131, 226, 68, 85,
100, 116, 163, 164, 179, 211, 242, 37, 53, 148, 195, 212, 8, 54, 69, 86, 101,
132, 149, 165, 180, 227, 228, 24, 38, 55, 70, 102, 117, 118, 133, 150, 181,
196, 197, 243,
],
),
},
22 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 1, 2, 3, 4, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 7, 4, 10, 7, 15, 12, 8, 7, 33],
&[
2, 1, 3, 0, 4, 5, 17, 18, 33, 6, 19, 34, 49, 7, 20, 50, 65, 81, 21, 35, 66, 82,
97, 113, 129, 51, 98, 145, 161, 8, 22, 36, 114, 130, 146, 177, 193, 209, 240,
52, 67, 83, 162, 178, 210, 225, 23, 37, 84, 99, 115, 116, 118, 147, 148, 179,
181, 194, 211, 212, 241, 24, 53, 54, 55, 68, 85, 86, 131, 149, 163, 180, 213,
9, 38, 87, 100, 117, 164, 165, 226, 69, 101, 132, 133, 150, 195, 214, 25, 39,
40, 56, 70, 71, 72, 88, 102, 103, 104, 119, 120, 134, 135, 136, 151, 152, 166,
167, 168, 182, 183, 196, 197, 198, 199, 227, 228, 229, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 2, 6, 4, 9, 7, 7, 7, 5, 8, 12, 8, 15],
&[
0, 1, 2, 3, 17, 18, 4, 33, 5, 19, 34, 49, 65, 81, 50, 66, 97, 113, 6, 20, 35,
82, 98, 129, 145, 161, 240, 51, 114, 130, 146, 177, 193, 209, 7, 21, 67, 83,
162, 178, 225, 22, 36, 99, 115, 194, 210, 241, 23, 52, 84, 147, 226, 8, 68, 85,
131, 163, 179, 211, 242, 24, 37, 53, 86, 100, 101, 116, 148, 164, 195, 212,
227, 54, 69, 117, 132, 149, 165, 180, 228, 9, 38, 39, 55, 70, 87, 102, 118,
133, 150, 181, 196, 197, 213, 243,
],
),
},
23 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 5, 6, 7, 1, 2, 3, 4, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 5, 1, 4, 5, 6, 7, 7, 8, 17, 11, 10, 8, 31],
&[
2, 1, 3, 0, 4, 5, 17, 18, 6, 19, 33, 34, 49, 7, 20, 50, 65, 81, 8, 21, 35, 66,
97, 113, 51, 82, 98, 129, 145, 161, 240, 22, 36, 114, 130, 177, 193, 209, 9,
52, 67, 83, 146, 162, 178, 225, 23, 37, 55, 84, 99, 115, 116, 118, 147, 148,
179, 181, 194, 210, 211, 212, 241, 24, 53, 68, 85, 86, 117, 131, 149, 163, 180,
213, 25, 38, 54, 87, 100, 132, 150, 164, 165, 226, 39, 69, 101, 133, 182, 195,
214, 227, 40, 56, 70, 71, 72, 88, 102, 103, 104, 119, 120, 134, 135, 136, 151,
152, 166, 167, 168, 183, 196, 197, 198, 199, 215, 228, 229, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 9, 7, 7, 6, 8, 6, 10, 9, 21],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 240, 51, 98, 114, 161, 177, 193, 209, 7, 21, 83, 130, 146, 162,
225, 36, 67, 178, 194, 210, 241, 22, 23, 52, 84, 99, 115, 147, 226, 8, 85, 131,
163, 179, 211, 37, 53, 68, 100, 116, 148, 164, 195, 212, 242, 24, 54, 86, 101,
132, 149, 165, 227, 228, 9, 38, 39, 55, 69, 70, 87, 102, 117, 118, 133, 134,
150, 180, 181, 182, 196, 197, 213, 229, 243,
],
),
},
24 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 6, 7, 8, 2, 3, 4, 5, 9, 10, 1, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 4, 10, 6, 15, 14, 10, 11, 33],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 20, 50, 65, 81, 8, 35, 66, 97,
113, 21, 82, 129, 145, 22, 36, 51, 98, 114, 161, 177, 193, 209, 240, 52, 67,
83, 130, 146, 225, 9, 23, 37, 53, 84, 115, 116, 147, 162, 178, 179, 210, 211,
212, 241, 24, 55, 68, 85, 99, 118, 131, 148, 149, 163, 180, 181, 182, 194, 25,
38, 54, 86, 87, 100, 117, 119, 150, 213, 56, 69, 101, 132, 134, 164, 165, 166,
195, 214, 226, 39, 40, 41, 57, 70, 71, 72, 88, 89, 102, 103, 104, 105, 120,
133, 135, 151, 152, 167, 168, 183, 196, 197, 198, 199, 215, 227, 228, 229, 230,
242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 4, 9, 7, 7, 6, 7, 8, 9, 10, 23],
&[
2, 0, 1, 3, 4, 17, 18, 33, 5, 19, 34, 49, 50, 65, 81, 97, 6, 20, 35, 66, 82,
113, 129, 145, 240, 51, 98, 114, 161, 177, 193, 209, 7, 21, 83, 130, 146, 162,
225, 36, 67, 178, 194, 210, 241, 22, 52, 84, 99, 115, 147, 226, 8, 23, 68, 85,
131, 163, 179, 211, 24, 37, 53, 100, 101, 116, 148, 164, 242, 86, 117, 132,
149, 165, 180, 195, 212, 227, 228, 9, 25, 38, 39, 54, 55, 69, 70, 71, 87, 102,
118, 119, 133, 134, 150, 181, 182, 196, 197, 213, 229, 243,
],
),
},
25 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 6, 7, 8, 2, 3, 4, 5, 9, 10, 1, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 6, 3, 8, 7, 9, 22, 10, 10, 35],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 20, 50, 65, 81, 8, 21, 35, 66,
97, 113, 82, 129, 145, 22, 36, 51, 98, 161, 177, 193, 240, 67, 83, 114, 130,
146, 209, 225, 9, 23, 37, 52, 84, 162, 178, 210, 241, 24, 53, 55, 68, 85, 99,
115, 116, 117, 119, 131, 147, 148, 149, 179, 180, 181, 182, 194, 211, 212, 213,
25, 38, 54, 86, 87, 100, 118, 150, 163, 164, 56, 69, 101, 132, 165, 166, 195,
214, 226, 227, 39, 40, 41, 57, 70, 71, 72, 88, 89, 102, 103, 104, 105, 120,
133, 134, 135, 136, 151, 152, 153, 167, 168, 183, 196, 197, 198, 199, 215, 228,
229, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 4, 9, 7, 6, 8, 5, 13, 5, 11, 29],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 50, 81, 97, 7, 20, 35, 66, 82,
113, 129, 145, 240, 51, 98, 114, 161, 177, 193, 209, 8, 21, 83, 130, 146, 225,
22, 36, 67, 162, 178, 194, 210, 241, 52, 84, 99, 115, 147, 9, 23, 24, 37, 53,
68, 85, 131, 148, 163, 179, 211, 226, 86, 100, 116, 164, 242, 25, 54, 69, 101,
117, 149, 165, 180, 195, 212, 227, 10, 38, 39, 40, 55, 56, 70, 71, 87, 102,
103, 118, 119, 132, 133, 134, 150, 151, 166, 181, 182, 196, 197, 198, 213, 228,
229, 243, 244,
],
),
},
26 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 6, 7, 8, 2, 3, 4, 5, 9, 10, 1, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 5, 8, 8, 6, 22, 14, 9, 37],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 8, 20, 50, 65, 21, 35, 66, 81,
97, 9, 82, 113, 129, 145, 22, 36, 51, 98, 161, 177, 193, 240, 23, 67, 83, 114,
130, 146, 209, 225, 10, 37, 52, 84, 162, 241, 24, 53, 56, 68, 85, 86, 99, 115,
116, 117, 119, 147, 148, 149, 178, 179, 180, 182, 210, 211, 212, 213, 25, 26,
38, 54, 55, 87, 100, 118, 131, 150, 163, 181, 194, 214, 69, 88, 101, 132, 164,
165, 166, 195, 226, 39, 40, 41, 57, 70, 71, 72, 89, 102, 103, 104, 105, 120,
133, 134, 135, 136, 151, 152, 153, 167, 168, 183, 184, 196, 197, 198, 199, 200,
215, 227, 228, 229, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 4, 5, 7, 7, 6, 8, 6, 8, 10, 11, 33],
&[
2, 0, 1, 3, 4, 17, 18, 33, 5, 19, 34, 49, 6, 50, 65, 81, 97, 20, 35, 66, 82,
113, 129, 240, 7, 98, 114, 145, 161, 177, 193, 21, 51, 130, 146, 209, 225, 8,
36, 67, 83, 162, 178, 210, 241, 22, 52, 99, 115, 147, 194, 23, 37, 84, 131,
148, 179, 211, 226, 9, 24, 53, 68, 85, 86, 100, 116, 163, 242, 25, 101, 117,
149, 164, 165, 180, 195, 212, 213, 227, 10, 38, 39, 40, 54, 55, 56, 69, 70, 71,
87, 102, 103, 118, 119, 132, 133, 134, 150, 151, 166, 181, 182, 183, 196, 197,
198, 214, 228, 229, 230, 243, 244,
],
),
},
27 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 6, 7, 8, 2, 3, 4, 5, 9, 10, 1, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 6, 7, 5, 7, 22, 17, 10, 39],
&[
2, 1, 3, 4, 0, 5, 6, 17, 18, 7, 19, 33, 34, 49, 8, 20, 65, 81, 21, 35, 50, 97,
113, 9, 22, 66, 129, 145, 240, 36, 51, 82, 98, 161, 177, 193, 23, 67, 114, 209,
225, 10, 37, 52, 83, 130, 146, 241, 24, 53, 56, 84, 85, 99, 115, 117, 119, 147,
148, 149, 150, 162, 178, 180, 182, 210, 211, 212, 213, 214, 25, 26, 38, 54, 55,
68, 86, 87, 116, 131, 151, 163, 164, 179, 181, 183, 194, 69, 88, 100, 118, 120,
132, 165, 166, 167, 215, 39, 40, 41, 57, 70, 71, 72, 89, 101, 102, 103, 104,
105, 121, 133, 134, 135, 136, 152, 153, 168, 169, 184, 195, 196, 197, 198, 199,
200, 216, 226, 227, 228, 229, 230, 231, 242, 243, 245,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 4, 9, 8, 5, 6, 6, 7, 11, 8, 43],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 50, 65, 81, 97, 7, 20, 35, 66, 82,
113, 129, 145, 240, 21, 51, 98, 114, 161, 177, 193, 209, 8, 36, 130, 146, 225,
22, 67, 83, 162, 178, 241, 52, 84, 99, 115, 194, 210, 9, 23, 37, 68, 131, 147,
226, 24, 53, 85, 86, 116, 148, 149, 163, 179, 211, 242, 25, 38, 87, 100, 164,
165, 195, 212, 10, 26, 39, 40, 54, 55, 56, 69, 70, 71, 72, 88, 101, 102, 103,
104, 117, 118, 119, 120, 132, 133, 134, 135, 150, 151, 152, 166, 167, 180, 181,
182, 196, 197, 198, 213, 214, 227, 228, 229, 230, 243, 244,
],
),
},
28 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 6, 7, 8, 2, 3, 4, 5, 9, 10, 1, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 4, 3, 4, 6, 4, 7, 4, 10, 16, 20, 17, 45],
&[
2, 1, 3, 4, 5, 6, 0, 7, 17, 18, 8, 19, 33, 20, 34, 49, 65, 9, 21, 35, 50, 81,
97, 22, 66, 113, 129, 36, 51, 82, 145, 161, 177, 240, 23, 98, 193, 209, 10, 24,
37, 52, 67, 83, 114, 130, 225, 241, 25, 53, 54, 57, 84, 85, 86, 118, 146, 147,
150, 180, 210, 211, 212, 213, 26, 38, 55, 68, 87, 88, 99, 115, 117, 120, 148,
149, 151, 162, 178, 179, 181, 182, 183, 214, 39, 56, 69, 89, 100, 116, 119,
121, 131, 132, 133, 152, 163, 164, 165, 194, 215, 40, 41, 42, 58, 70, 71, 72,
73, 90, 101, 102, 103, 104, 105, 106, 122, 134, 135, 136, 137, 153, 154, 166,
167, 168, 169, 170, 184, 195, 196, 197, 198, 199, 200, 216, 226, 227, 228, 229,
230, 231, 242, 243, 244, 245,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 4, 3, 4, 5, 7, 8, 5, 6, 5, 8, 11, 11, 45],
&[
2, 1, 3, 0, 4, 17, 18, 5, 33, 49, 6, 19, 34, 65, 20, 50, 81, 97, 113, 7, 35,
66, 82, 129, 145, 240, 21, 51, 98, 114, 161, 177, 193, 209, 8, 36, 130, 146,
225, 22, 67, 83, 162, 178, 241, 52, 99, 115, 194, 210, 23, 37, 68, 84, 85, 147,
179, 226, 9, 24, 53, 116, 131, 148, 149, 163, 211, 212, 242, 25, 38, 54, 86,
87, 100, 117, 164, 165, 180, 195, 10, 26, 39, 40, 41, 55, 56, 57, 69, 70, 71,
72, 88, 101, 102, 103, 104, 118, 119, 120, 132, 133, 134, 135, 150, 151, 152,
166, 167, 181, 182, 183, 196, 197, 198, 199, 213, 214, 215, 227, 228, 229, 230,
231, 243,
],
),
},
29 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 6, 7, 8, 2, 3, 4, 5, 9, 10, 1, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 4, 3, 4, 6, 5, 5, 6, 7, 10, 26, 20, 47],
&[
2, 1, 3, 4, 5, 6, 0, 7, 17, 18, 8, 19, 33, 20, 34, 49, 65, 9, 21, 35, 50, 81,
97, 22, 66, 113, 129, 240, 36, 82, 145, 161, 177, 23, 51, 98, 193, 209, 225,
10, 24, 37, 52, 67, 114, 241, 53, 57, 83, 84, 85, 86, 130, 146, 213, 214, 25,
38, 54, 55, 68, 87, 88, 99, 118, 120, 147, 148, 149, 150, 151, 162, 178, 180,
181, 182, 183, 184, 210, 211, 212, 215, 26, 39, 56, 69, 89, 100, 115, 116, 117,
119, 121, 131, 132, 152, 163, 164, 165, 179, 194, 216, 40, 41, 42, 58, 70, 71,
72, 73, 90, 101, 102, 103, 104, 105, 106, 122, 133, 134, 135, 136, 137, 153,
154, 166, 167, 168, 169, 170, 185, 195, 196, 197, 198, 199, 200, 201, 217, 226,
227, 228, 229, 230, 231, 232, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
&[0, 3, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 2, 4, 2, 6, 5, 8, 6, 5, 6, 5, 7, 11, 15, 45],
&[
2, 1, 3, 0, 4, 17, 18, 5, 33, 6, 19, 34, 49, 65, 81, 20, 50, 97, 113, 240, 7,
35, 66, 82, 129, 145, 161, 177, 21, 51, 98, 193, 209, 225, 8, 36, 114, 130,
241, 22, 67, 83, 146, 162, 178, 37, 52, 99, 194, 210, 23, 68, 84, 115, 147,
211, 226, 9, 24, 53, 85, 116, 131, 148, 149, 163, 179, 212, 25, 38, 54, 86, 87,
100, 117, 150, 164, 166, 180, 195, 213, 214, 242, 10, 26, 39, 40, 41, 55, 56,
57, 69, 70, 71, 72, 88, 101, 102, 103, 104, 118, 119, 120, 132, 133, 134, 135,
136, 151, 152, 165, 167, 168, 181, 182, 183, 196, 197, 198, 199, 215, 227, 228,
229, 230, 231, 243, 244,
],
),
},
_ => ycbcr_420_tables(QUALITY_TIERS.len() - 1),
}
}
#[allow(clippy::too_many_lines)]
pub(crate) fn xyb_tables(tier_idx: usize) -> HuffmanTableSet {
match tier_idx {
0 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 3, 2, 4, 4, 4, 4, 4, 4, 5, 1, 4, 11],
&[
0, 1, 2, 17, 3, 18, 33, 49, 65, 19, 34, 50, 81, 4, 82, 97, 113, 20, 66, 129,
145, 35, 51, 161, 177, 98, 193, 209, 240, 67, 83, 114, 225, 52, 99, 130, 146,
162, 241, 5, 36, 68, 194, 21, 84, 100, 115, 131, 147, 163, 178, 210, 226, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 3, 2, 4, 4, 4, 4, 4, 4, 5, 1, 4, 11],
&[
0, 1, 2, 17, 3, 18, 33, 49, 65, 19, 34, 50, 81, 4, 82, 97, 113, 20, 66, 129,
145, 35, 51, 161, 177, 98, 193, 209, 240, 67, 83, 114, 225, 52, 99, 130, 146,
162, 241, 5, 36, 68, 194, 21, 84, 100, 115, 131, 147, 163, 178, 210, 226, 242,
],
),
},
1 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 3, 1, 6, 3, 5, 6, 4, 4, 5, 1, 3, 13],
&[
0, 1, 2, 17, 3, 18, 33, 49, 4, 19, 34, 50, 65, 81, 97, 113, 129, 20, 66, 82,
145, 161, 35, 51, 177, 193, 209, 240, 83, 98, 114, 225, 5, 52, 67, 130, 21, 99,
146, 162, 241, 210, 36, 178, 194, 37, 53, 68, 69, 84, 100, 115, 131, 147, 163,
226, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 3, 1, 6, 3, 5, 6, 4, 4, 5, 1, 3, 13],
&[
0, 1, 2, 17, 3, 18, 33, 49, 4, 19, 34, 50, 65, 81, 97, 113, 129, 20, 66, 82,
145, 161, 35, 51, 177, 193, 209, 240, 83, 98, 114, 225, 5, 52, 67, 130, 21, 99,
146, 162, 241, 210, 36, 178, 194, 37, 53, 68, 69, 84, 100, 115, 131, 147, 163,
226, 227, 242,
],
),
},
2 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 6, 8, 4, 4, 4, 3, 2, 15],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 50, 65, 81, 82, 97, 113, 129, 20, 51,
66, 145, 161, 177, 5, 35, 83, 98, 193, 209, 225, 240, 21, 52, 114, 130, 67,
146, 162, 241, 36, 99, 178, 210, 53, 84, 194, 68, 115, 37, 69, 85, 100, 101,
131, 132, 147, 148, 163, 195, 211, 226, 227, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 4, 6, 8, 4, 4, 4, 3, 2, 15],
&[
0, 1, 2, 17, 3, 18, 4, 33, 49, 19, 34, 50, 65, 81, 82, 97, 113, 129, 20, 51,
66, 145, 161, 177, 5, 35, 83, 98, 193, 209, 225, 240, 21, 52, 114, 130, 67,
146, 162, 241, 36, 99, 178, 210, 53, 84, 194, 68, 115, 37, 69, 85, 100, 101,
131, 132, 147, 148, 163, 195, 211, 226, 227, 242,
],
),
},
3 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 10, 3, 4, 5, 3, 21, 0],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 19, 34, 50, 65, 81, 97, 113, 129, 5, 20, 66, 82,
145, 161, 177, 21, 35, 51, 83, 98, 114, 193, 209, 225, 240, 52, 130, 146, 67,
162, 178, 241, 36, 84, 99, 194, 210, 53, 115, 226, 6, 22, 37, 68, 69, 85, 100,
101, 116, 131, 132, 147, 148, 163, 164, 179, 195, 211, 227, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 10, 3, 4, 5, 3, 21, 0],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 19, 34, 50, 65, 81, 97, 113, 129, 5, 20, 66, 82,
145, 161, 177, 21, 35, 51, 83, 98, 114, 193, 209, 225, 240, 52, 130, 146, 67,
162, 178, 241, 36, 84, 99, 194, 210, 53, 115, 226, 6, 22, 37, 68, 69, 85, 100,
101, 116, 131, 132, 147, 148, 163, 164, 179, 195, 211, 227, 242, 243,
],
),
},
4 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 0, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 4, 6, 5, 9, 5, 5, 5, 4, 2, 19],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 19, 34, 65, 81, 5, 50, 97, 113, 129, 145, 20,
66, 82, 161, 177, 21, 35, 51, 98, 114, 193, 209, 225, 240, 52, 83, 130, 146,
162, 6, 67, 178, 210, 241, 22, 36, 53, 84, 194, 68, 99, 115, 226, 100, 147, 37,
38, 54, 69, 70, 85, 101, 116, 131, 132, 148, 163, 164, 179, 195, 211, 227, 242,
243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 0, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 4, 6, 5, 9, 5, 5, 5, 4, 2, 19],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 19, 34, 65, 81, 5, 50, 97, 113, 129, 145, 20,
66, 82, 161, 177, 21, 35, 51, 98, 114, 193, 209, 225, 240, 52, 83, 130, 146,
162, 6, 67, 178, 210, 241, 22, 36, 53, 84, 194, 68, 99, 115, 226, 100, 147, 37,
38, 54, 69, 70, 85, 101, 116, 131, 132, 148, 163, 164, 179, 195, 211, 227, 242,
243,
],
),
},
5 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 0, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 8, 6, 8, 3, 3, 4, 19],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 177, 21, 35, 51, 98, 114, 193, 209, 240, 6, 83, 130, 146, 162, 225,
22, 36, 52, 67, 84, 178, 210, 241, 53, 115, 194, 99, 147, 226, 68, 100, 163,
211, 37, 38, 54, 69, 70, 85, 101, 116, 131, 132, 148, 149, 164, 179, 195, 212,
227, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 0, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 8, 6, 8, 3, 3, 4, 19],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 177, 21, 35, 51, 98, 114, 193, 209, 240, 6, 83, 130, 146, 162, 225,
22, 36, 52, 67, 84, 178, 210, 241, 53, 115, 194, 99, 147, 226, 68, 100, 163,
211, 37, 38, 54, 69, 70, 85, 101, 116, 131, 132, 148, 149, 164, 179, 195, 212,
227, 242, 243,
],
),
},
6 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 1, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 8, 5, 9, 5, 2, 5, 21],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 177, 6, 35, 51, 98, 114, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 84, 162, 178, 210, 241, 53, 115, 147, 194, 226, 68, 99, 100, 131,
163, 179, 211, 37, 38, 54, 69, 70, 85, 101, 102, 116, 132, 133, 148, 149, 164,
180, 195, 196, 212, 227, 228, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 1, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 8, 5, 9, 5, 2, 5, 21],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 177, 6, 35, 51, 98, 114, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 84, 162, 178, 210, 241, 53, 115, 147, 194, 226, 68, 99, 100, 131,
163, 179, 211, 37, 38, 54, 69, 70, 85, 101, 102, 116, 132, 133, 148, 149, 164,
180, 195, 196, 212, 227, 228, 242,
],
),
},
7 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 8, 5, 9, 4, 3, 5, 25],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 177, 6, 35, 51, 98, 114, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 84, 162, 178, 210, 241, 53, 115, 147, 194, 99, 163, 226, 68, 100,
131, 179, 211, 7, 23, 37, 38, 54, 69, 70, 85, 86, 101, 102, 116, 117, 132, 133,
148, 149, 164, 165, 180, 195, 196, 227, 228, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 7, 8, 5, 9, 4, 3, 5, 25],
&[
0, 1, 2, 3, 17, 18, 4, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 177, 6, 35, 51, 98, 114, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 84, 162, 178, 210, 241, 53, 115, 147, 194, 99, 163, 226, 68, 100,
131, 179, 211, 7, 23, 37, 38, 54, 69, 70, 85, 86, 101, 102, 116, 117, 132, 133,
148, 149, 164, 165, 180, 195, 196, 227, 228, 242,
],
),
},
8 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 6, 10, 5, 8, 6, 5, 1, 25],
&[
0, 1, 2, 3, 4, 17, 18, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 6, 21, 35, 51, 98, 114, 177, 193, 209, 240, 83, 130, 146, 178, 225,
22, 36, 52, 67, 84, 162, 210, 241, 53, 99, 115, 147, 194, 226, 68, 131, 163,
179, 211, 100, 7, 23, 37, 38, 54, 69, 70, 85, 86, 101, 102, 116, 117, 132, 133,
148, 149, 164, 165, 180, 195, 196, 227, 228, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 1, 2, 3, 5, 3, 6, 10, 5, 8, 6, 5, 1, 25],
&[
0, 1, 2, 3, 4, 17, 18, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 20, 66, 82, 129,
145, 161, 6, 21, 35, 51, 98, 114, 177, 193, 209, 240, 83, 130, 146, 178, 225,
22, 36, 52, 67, 84, 162, 210, 241, 53, 99, 115, 147, 194, 226, 68, 131, 163,
179, 211, 100, 7, 23, 37, 38, 54, 69, 70, 85, 86, 101, 102, 116, 117, 132, 133,
148, 149, 164, 165, 180, 195, 196, 227, 228, 242,
],
),
},
9 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 2, 1, 2, 3, 5, 4, 5, 7, 7, 9, 5, 4, 4, 4, 23],
&[
0, 1, 2, 3, 17, 4, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 113, 20, 66, 82, 129,
145, 6, 35, 161, 177, 193, 209, 240, 21, 51, 98, 114, 130, 146, 225, 22, 52,
67, 83, 84, 162, 178, 210, 241, 36, 53, 115, 147, 194, 99, 131, 163, 226, 68,
100, 179, 211, 37, 54, 85, 148, 7, 23, 38, 69, 70, 86, 101, 102, 116, 117, 132,
133, 149, 164, 165, 180, 195, 196, 212, 227, 228, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 2, 1, 2, 3, 5, 4, 5, 7, 7, 9, 5, 4, 4, 4, 23],
&[
0, 1, 2, 3, 17, 4, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 113, 20, 66, 82, 129,
145, 6, 35, 161, 177, 193, 209, 240, 21, 51, 98, 114, 130, 146, 225, 22, 52,
67, 83, 84, 162, 178, 210, 241, 36, 53, 115, 147, 194, 99, 131, 163, 226, 68,
100, 179, 211, 37, 54, 85, 148, 7, 23, 38, 69, 70, 86, 101, 102, 116, 117, 132,
133, 149, 164, 165, 180, 195, 196, 212, 227, 228, 242, 243,
],
),
},
10 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 3, 7, 8, 5, 9, 4, 6, 4, 7, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 6, 20, 66, 82,
129, 145, 161, 35, 51, 98, 114, 177, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 84, 162, 178, 210, 241, 53, 115, 147, 194, 99, 131, 163, 179, 211,
226, 7, 68, 85, 100, 23, 37, 54, 116, 148, 195, 227, 38, 69, 70, 86, 101, 102,
117, 132, 133, 149, 164, 165, 180, 196, 212, 228, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 3, 7, 8, 5, 9, 4, 6, 4, 7, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 6, 20, 66, 82,
129, 145, 161, 35, 51, 98, 114, 177, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 84, 162, 178, 210, 241, 53, 115, 147, 194, 99, 131, 163, 179, 211,
226, 7, 68, 85, 100, 23, 37, 54, 116, 148, 195, 227, 38, 69, 70, 86, 101, 102,
117, 132, 133, 149, 164, 165, 180, 196, 212, 228, 242,
],
),
},
11 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 3, 7, 8, 5, 8, 6, 6, 5, 5, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 6, 20, 66, 82,
129, 145, 161, 35, 51, 98, 114, 177, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 162, 178, 210, 241, 53, 84, 115, 147, 163, 194, 85, 99, 131, 179,
211, 226, 7, 37, 68, 100, 116, 23, 54, 148, 195, 227, 38, 69, 70, 86, 101, 102,
117, 132, 133, 149, 164, 165, 180, 196, 212, 228, 242,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 3, 7, 8, 5, 8, 6, 6, 5, 5, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 49, 5, 19, 34, 65, 81, 50, 97, 113, 6, 20, 66, 82,
129, 145, 161, 35, 51, 98, 114, 177, 193, 209, 240, 21, 83, 130, 146, 225, 22,
36, 52, 67, 162, 178, 210, 241, 53, 84, 115, 147, 163, 194, 85, 99, 131, 179,
211, 226, 7, 37, 68, 100, 116, 23, 54, 148, 195, 227, 38, 69, 70, 86, 101, 102,
117, 132, 133, 149, 164, 165, 180, 196, 212, 228, 242,
],
),
},
12 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 8, 5, 7, 7, 8, 5, 5, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 98, 114, 161, 177, 193, 209, 240, 21, 51, 130, 146, 225, 22, 36,
67, 83, 162, 178, 210, 52, 53, 84, 115, 147, 194, 241, 7, 85, 99, 131, 163,
179, 211, 226, 23, 37, 68, 116, 148, 54, 100, 195, 212, 227, 38, 39, 69, 70,
86, 101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 8, 5, 7, 7, 8, 5, 5, 17],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 98, 114, 161, 177, 193, 209, 240, 21, 51, 130, 146, 225, 22, 36,
67, 83, 162, 178, 210, 52, 53, 84, 115, 147, 194, 241, 7, 85, 99, 131, 163,
179, 211, 226, 23, 37, 68, 116, 148, 54, 100, 195, 212, 227, 38, 39, 69, 70,
86, 101, 102, 117, 132, 133, 149, 164, 165, 180, 196, 242, 243,
],
),
},
13 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 7, 6, 8, 10, 5, 6, 5, 21],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 114, 161, 177, 193, 209, 240, 21, 51, 98, 130, 146, 225, 22, 36,
67, 83, 162, 178, 210, 241, 7, 52, 53, 84, 115, 147, 163, 179, 194, 211, 85,
99, 116, 131, 226, 23, 37, 54, 68, 100, 148, 101, 164, 195, 212, 227, 38, 39,
55, 69, 70, 71, 86, 102, 117, 132, 133, 149, 150, 165, 180, 181, 196, 197, 228,
242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 7, 6, 8, 10, 5, 6, 5, 21],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 114, 161, 177, 193, 209, 240, 21, 51, 98, 130, 146, 225, 22, 36,
67, 83, 162, 178, 210, 241, 7, 52, 53, 84, 115, 147, 163, 179, 194, 211, 85,
99, 116, 131, 226, 23, 37, 54, 68, 100, 148, 101, 164, 195, 212, 227, 38, 39,
55, 69, 70, 71, 86, 102, 117, 132, 133, 149, 150, 165, 180, 181, 196, 197, 228,
242, 243,
],
),
},
14 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 7, 6, 8, 9, 6, 8, 3, 25],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 98, 161, 177, 193, 209, 240, 21, 51, 114, 130, 146, 225, 22, 36,
67, 83, 162, 178, 210, 241, 7, 52, 53, 84, 115, 147, 179, 194, 211, 85, 99,
116, 131, 148, 163, 23, 37, 54, 68, 100, 164, 226, 227, 180, 195, 212, 38, 39,
55, 69, 70, 71, 86, 101, 102, 103, 117, 118, 132, 133, 134, 149, 150, 165, 166,
181, 196, 197, 228, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 7, 6, 8, 9, 6, 8, 3, 25],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 98, 161, 177, 193, 209, 240, 21, 51, 114, 130, 146, 225, 22, 36,
67, 83, 162, 178, 210, 241, 7, 52, 53, 84, 115, 147, 179, 194, 211, 85, 99,
116, 131, 148, 163, 23, 37, 54, 68, 100, 164, 226, 227, 180, 195, 212, 38, 39,
55, 69, 70, 71, 86, 101, 102, 103, 117, 118, 132, 133, 134, 149, 150, 165, 166,
181, 196, 197, 228, 242, 243,
],
),
},
15 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 7, 5, 10, 9, 6, 7, 5, 25],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 98, 161, 177, 193, 209, 240, 21, 51, 114, 146, 225, 7, 22, 36,
67, 83, 130, 162, 178, 210, 241, 52, 84, 85, 99, 115, 147, 179, 194, 211, 23,
53, 116, 131, 148, 163, 37, 54, 68, 100, 164, 212, 226, 101, 132, 180, 195,
227, 38, 39, 55, 69, 70, 71, 86, 87, 102, 103, 117, 118, 133, 134, 149, 150,
165, 166, 181, 196, 197, 213, 228, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 2, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 1, 5, 3, 7, 7, 5, 10, 9, 6, 7, 5, 25],
&[
0, 1, 2, 3, 4, 17, 18, 33, 5, 19, 34, 49, 65, 50, 81, 97, 6, 20, 66, 82, 113,
129, 145, 35, 98, 161, 177, 193, 209, 240, 21, 51, 114, 146, 225, 7, 22, 36,
67, 83, 130, 162, 178, 210, 241, 52, 84, 85, 99, 115, 147, 179, 194, 211, 23,
53, 116, 131, 148, 163, 37, 54, 68, 100, 164, 212, 226, 101, 132, 180, 195,
227, 38, 39, 55, 69, 70, 71, 86, 87, 102, 103, 117, 118, 133, 134, 149, 150,
165, 166, 181, 196, 197, 213, 228, 242, 243,
],
),
},
16 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 5, 7, 7, 4, 11, 9, 8, 6, 27, 0],
&[
0, 1, 2, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 50, 81, 97, 113, 20, 35, 66,
82, 129, 145, 161, 21, 51, 98, 177, 193, 209, 240, 114, 130, 146, 225, 7, 22,
36, 67, 83, 115, 147, 162, 178, 210, 241, 52, 53, 84, 85, 99, 148, 179, 194,
211, 23, 37, 54, 116, 131, 163, 164, 226, 68, 100, 117, 132, 180, 212, 38, 39,
55, 69, 70, 71, 86, 87, 101, 102, 103, 118, 133, 134, 149, 150, 165, 166, 181,
195, 196, 197, 213, 227, 228, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 5, 7, 7, 4, 11, 9, 8, 6, 27, 0],
&[
0, 1, 2, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 50, 81, 97, 113, 20, 35, 66,
82, 129, 145, 161, 21, 51, 98, 177, 193, 209, 240, 114, 130, 146, 225, 7, 22,
36, 67, 83, 115, 147, 162, 178, 210, 241, 52, 53, 84, 85, 99, 148, 179, 194,
211, 23, 37, 54, 116, 131, 163, 164, 226, 68, 100, 117, 132, 180, 212, 38, 39,
55, 69, 70, 71, 86, 87, 101, 102, 103, 118, 133, 134, 149, 150, 165, 166, 181,
195, 196, 197, 213, 227, 228, 242, 243,
],
),
},
17 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 6, 4, 8, 6, 11, 8, 13, 3, 10, 23],
&[
0, 1, 2, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 20, 50, 81, 97, 113, 35, 66,
129, 145, 21, 82, 98, 161, 177, 193, 209, 240, 7, 51, 114, 130, 146, 225, 22,
36, 52, 67, 83, 115, 147, 162, 178, 210, 241, 23, 84, 85, 99, 148, 179, 194,
211, 37, 53, 54, 68, 86, 116, 117, 131, 163, 164, 180, 212, 226, 100, 132, 149,
38, 55, 69, 101, 165, 195, 196, 213, 227, 228, 8, 24, 39, 40, 70, 71, 87, 102,
118, 119, 133, 134, 150, 151, 166, 167, 181, 182, 197, 198, 229, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 4, 6, 4, 8, 6, 11, 8, 13, 3, 10, 23],
&[
0, 1, 2, 3, 4, 17, 5, 18, 33, 19, 34, 49, 65, 6, 20, 50, 81, 97, 113, 35, 66,
129, 145, 21, 82, 98, 161, 177, 193, 209, 240, 7, 51, 114, 130, 146, 225, 22,
36, 52, 67, 83, 115, 147, 162, 178, 210, 241, 23, 84, 85, 99, 148, 179, 194,
211, 37, 53, 54, 68, 86, 116, 117, 131, 163, 164, 180, 212, 226, 100, 132, 149,
38, 55, 69, 101, 165, 195, 196, 213, 227, 228, 8, 24, 39, 40, 70, 71, 87, 102,
118, 119, 133, 134, 150, 151, 166, 167, 181, 182, 197, 198, 229, 242, 243,
],
),
},
18 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 6, 5, 5, 7, 10, 13, 11, 7, 29],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 145, 21, 82, 161, 177, 240, 51, 98, 114, 193, 209, 22, 36, 67, 83,
130, 146, 225, 23, 52, 84, 115, 147, 162, 178, 210, 211, 241, 8, 37, 53, 54,
85, 86, 99, 116, 148, 179, 180, 194, 212, 24, 55, 68, 100, 117, 131, 149, 163,
164, 165, 226, 38, 101, 132, 181, 195, 213, 228, 39, 40, 56, 69, 70, 71, 72,
87, 88, 102, 103, 118, 119, 133, 134, 150, 151, 166, 167, 182, 196, 197, 198,
214, 227, 229, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 6, 5, 5, 7, 10, 13, 11, 7, 29],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 145, 21, 82, 161, 177, 240, 51, 98, 114, 193, 209, 22, 36, 67, 83,
130, 146, 225, 23, 52, 84, 115, 147, 162, 178, 210, 211, 241, 8, 37, 53, 54,
85, 86, 99, 116, 148, 179, 180, 194, 212, 24, 55, 68, 100, 117, 131, 149, 163,
164, 165, 226, 38, 101, 132, 181, 195, 213, 228, 39, 40, 56, 69, 70, 71, 72,
87, 88, 102, 103, 118, 119, 133, 134, 150, 151, 166, 167, 182, 196, 197, 198,
214, 227, 229, 242, 243, 244,
],
),
},
19 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 4, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 6, 5, 5, 7, 10, 14, 9, 6, 31],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 145, 21, 82, 161, 177, 240, 51, 98, 114, 193, 209, 22, 36, 67, 83,
130, 146, 225, 23, 52, 84, 115, 147, 162, 178, 210, 211, 241, 8, 37, 53, 54,
85, 86, 99, 116, 148, 149, 179, 180, 194, 212, 55, 68, 100, 117, 131, 163, 164,
165, 226, 24, 38, 101, 132, 181, 213, 39, 40, 56, 69, 70, 71, 72, 87, 88, 102,
103, 118, 119, 133, 134, 135, 150, 151, 166, 167, 182, 195, 196, 197, 198, 214,
227, 228, 229, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 4, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 6, 5, 5, 7, 10, 14, 9, 6, 31],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 145, 21, 82, 161, 177, 240, 51, 98, 114, 193, 209, 22, 36, 67, 83,
130, 146, 225, 23, 52, 84, 115, 147, 162, 178, 210, 211, 241, 8, 37, 53, 54,
85, 86, 99, 116, 148, 149, 179, 180, 194, 212, 55, 68, 100, 117, 131, 163, 164,
165, 226, 24, 38, 101, 132, 181, 213, 39, 40, 56, 69, 70, 71, 72, 87, 88, 102,
103, 118, 119, 133, 134, 135, 150, 151, 166, 167, 182, 195, 196, 197, 198, 214,
227, 228, 229, 242, 243,
],
),
},
20 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 4, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 6, 6, 9, 10, 14, 9, 8, 27],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 21, 82, 145, 161, 177, 240, 36, 51, 98, 114, 193, 209, 8, 22, 52, 67,
83, 130, 146, 225, 241, 23, 84, 115, 147, 148, 162, 178, 179, 210, 211, 24, 37,
53, 54, 85, 86, 99, 116, 131, 149, 163, 180, 194, 212, 55, 68, 100, 117, 118,
165, 181, 213, 226, 38, 69, 101, 132, 133, 150, 164, 195, 39, 40, 56, 70, 71,
72, 87, 88, 102, 103, 119, 134, 135, 151, 152, 166, 167, 182, 196, 197, 198,
214, 227, 228, 229, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 4, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 6, 6, 9, 10, 14, 9, 8, 27],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 21, 82, 145, 161, 177, 240, 36, 51, 98, 114, 193, 209, 8, 22, 52, 67,
83, 130, 146, 225, 241, 23, 84, 115, 147, 148, 162, 178, 179, 210, 211, 24, 37,
53, 54, 85, 86, 99, 116, 131, 149, 163, 180, 194, 212, 55, 68, 100, 117, 118,
165, 181, 213, 226, 38, 69, 101, 132, 133, 150, 164, 195, 39, 40, 56, 70, 71,
72, 87, 88, 102, 103, 119, 134, 135, 151, 152, 166, 167, 182, 196, 197, 198,
214, 227, 228, 229, 242, 243,
],
),
},
21 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 6, 6, 9, 10, 13, 10, 10, 27],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 21, 82, 145, 161, 177, 240, 36, 51, 98, 114, 193, 209, 8, 22, 52, 67,
83, 130, 146, 225, 241, 23, 84, 115, 147, 148, 162, 178, 179, 210, 211, 24, 37,
53, 85, 86, 99, 116, 131, 149, 163, 180, 194, 212, 54, 55, 68, 100, 117, 118,
165, 181, 213, 226, 38, 69, 101, 102, 132, 133, 150, 164, 195, 227, 39, 40, 56,
70, 71, 72, 87, 88, 103, 119, 134, 135, 151, 152, 166, 167, 182, 183, 196, 197,
198, 199, 214, 228, 229, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 4, 5, 6, 6, 9, 10, 13, 10, 10, 27],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 20, 50, 81, 97, 7, 35, 66,
113, 129, 21, 82, 145, 161, 177, 240, 36, 51, 98, 114, 193, 209, 8, 22, 52, 67,
83, 130, 146, 225, 241, 23, 84, 115, 147, 148, 162, 178, 179, 210, 211, 24, 37,
53, 85, 86, 99, 116, 131, 149, 163, 180, 194, 212, 54, 55, 68, 100, 117, 118,
165, 181, 213, 226, 38, 69, 101, 102, 132, 133, 150, 164, 195, 227, 39, 40, 56,
70, 71, 72, 87, 88, 103, 119, 134, 135, 151, 152, 166, 167, 182, 183, 196, 197,
198, 199, 214, 228, 229, 242, 243,
],
),
},
22 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 5, 3, 6, 7, 7, 10, 11, 13, 8, 35],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 7, 20, 50, 81, 97, 35, 113,
129, 21, 66, 82, 145, 161, 240, 8, 51, 98, 114, 177, 193, 209, 22, 36, 67, 83,
130, 146, 225, 23, 52, 84, 147, 162, 178, 179, 210, 211, 241, 24, 37, 53, 85,
86, 99, 115, 116, 148, 180, 212, 54, 55, 68, 87, 100, 117, 131, 149, 163, 165,
181, 194, 213, 9, 38, 118, 132, 150, 164, 226, 227, 25, 39, 40, 56, 69, 70, 71,
72, 88, 101, 102, 103, 119, 120, 133, 134, 135, 151, 152, 166, 167, 168, 182,
183, 195, 196, 197, 198, 199, 214, 228, 229, 230, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 3, 5, 5, 3, 6, 7, 7, 10, 11, 13, 8, 35],
&[
2, 0, 1, 3, 4, 17, 5, 18, 33, 6, 19, 34, 49, 65, 7, 20, 50, 81, 97, 35, 113,
129, 21, 66, 82, 145, 161, 240, 8, 51, 98, 114, 177, 193, 209, 22, 36, 67, 83,
130, 146, 225, 23, 52, 84, 147, 162, 178, 179, 210, 211, 241, 24, 37, 53, 85,
86, 99, 115, 116, 148, 180, 212, 54, 55, 68, 87, 100, 117, 131, 149, 163, 165,
181, 194, 213, 9, 38, 118, 132, 150, 164, 226, 227, 25, 39, 40, 56, 69, 70, 71,
72, 88, 101, 102, 103, 119, 120, 133, 134, 135, 151, 152, 166, 167, 168, 182,
183, 195, 196, 197, 198, 199, 214, 228, 229, 230, 242, 243,
],
),
},
23 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 4, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 3, 6, 8, 4, 7, 16, 12, 45, 5],
&[
2, 0, 1, 3, 4, 5, 17, 18, 33, 6, 19, 49, 7, 20, 34, 65, 81, 50, 97, 113, 21,
35, 66, 82, 129, 145, 8, 51, 98, 161, 177, 193, 209, 240, 22, 36, 114, 225, 23,
52, 67, 83, 130, 146, 241, 24, 37, 53, 84, 85, 99, 115, 116, 147, 148, 162,
178, 179, 210, 211, 212, 55, 68, 86, 117, 118, 131, 149, 163, 180, 181, 194,
213, 9, 25, 38, 39, 40, 41, 54, 56, 57, 69, 70, 71, 72, 73, 87, 88, 100, 101,
102, 103, 119, 120, 132, 133, 134, 135, 150, 151, 152, 164, 165, 166, 167, 168,
182, 183, 195, 196, 197, 198, 199, 214, 226, 227, 228, 229, 230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 1, 4, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 3, 6, 8, 4, 7, 16, 12, 45, 5],
&[
2, 0, 1, 3, 4, 5, 17, 18, 33, 6, 19, 49, 7, 20, 34, 65, 81, 50, 97, 113, 21,
35, 66, 82, 129, 145, 8, 51, 98, 161, 177, 193, 209, 240, 22, 36, 114, 225, 23,
52, 67, 83, 130, 146, 241, 24, 37, 53, 84, 85, 99, 115, 116, 147, 148, 162,
178, 179, 210, 211, 212, 55, 68, 86, 117, 118, 131, 149, 163, 180, 181, 194,
213, 9, 25, 38, 39, 40, 41, 54, 56, 57, 69, 70, 71, 72, 73, 87, 88, 100, 101,
102, 103, 119, 120, 132, 133, 134, 135, 150, 151, 152, 164, 165, 166, 167, 168,
182, 183, 195, 196, 197, 198, 199, 214, 226, 227, 228, 229, 230, 242, 243, 244,
],
),
},
24 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 6, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 3, 7, 6, 5, 7, 15, 14, 11, 41],
&[
2, 0, 1, 3, 4, 5, 17, 18, 33, 6, 19, 49, 7, 20, 34, 65, 81, 50, 97, 113, 21,
35, 66, 82, 129, 145, 161, 8, 51, 177, 193, 209, 240, 22, 36, 98, 114, 225, 23,
52, 67, 83, 130, 146, 241, 24, 37, 53, 84, 85, 115, 116, 147, 148, 162, 178,
179, 210, 211, 212, 55, 68, 86, 87, 99, 118, 131, 149, 150, 163, 180, 181, 194,
213, 9, 25, 38, 54, 100, 117, 164, 165, 166, 182, 226, 39, 40, 41, 56, 57, 69,
70, 71, 72, 73, 88, 89, 101, 102, 103, 104, 119, 120, 132, 133, 134, 135, 151,
152, 167, 168, 183, 195, 196, 197, 198, 199, 214, 215, 227, 228, 229, 230, 242,
243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 6, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 3, 7, 6, 5, 7, 15, 14, 11, 41],
&[
2, 0, 1, 3, 4, 5, 17, 18, 33, 6, 19, 49, 7, 20, 34, 65, 81, 50, 97, 113, 21,
35, 66, 82, 129, 145, 161, 8, 51, 177, 193, 209, 240, 22, 36, 98, 114, 225, 23,
52, 67, 83, 130, 146, 241, 24, 37, 53, 84, 85, 115, 116, 147, 148, 162, 178,
179, 210, 211, 212, 55, 68, 86, 87, 99, 118, 131, 149, 150, 163, 180, 181, 194,
213, 9, 25, 38, 54, 100, 117, 164, 165, 166, 182, 226, 39, 40, 41, 56, 57, 69,
70, 71, 72, 73, 88, 89, 101, 102, 103, 104, 119, 120, 132, 133, 134, 135, 151,
152, 167, 168, 183, 195, 196, 197, 198, 199, 214, 215, 227, 228, 229, 230, 242,
243, 244,
],
),
},
25 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 6, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 4, 5, 5, 7, 7, 15, 13, 12, 43],
&[
2, 0, 1, 3, 4, 5, 17, 6, 18, 19, 33, 49, 7, 20, 34, 65, 81, 8, 50, 97, 113, 21,
35, 66, 129, 145, 51, 82, 161, 177, 240, 22, 36, 98, 114, 193, 209, 225, 9, 23,
67, 83, 130, 146, 241, 24, 37, 52, 53, 84, 85, 115, 147, 148, 162, 178, 179,
210, 211, 212, 25, 54, 86, 87, 99, 116, 117, 149, 150, 163, 180, 181, 213, 38,
55, 56, 68, 100, 118, 131, 164, 166, 194, 214, 226, 39, 40, 41, 57, 69, 70, 71,
72, 73, 88, 89, 101, 102, 103, 104, 119, 120, 132, 133, 134, 135, 136, 151,
152, 153, 165, 167, 168, 182, 183, 195, 196, 197, 198, 199, 215, 227, 228, 229,
230, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 6, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 4, 5, 5, 7, 7, 15, 13, 12, 43],
&[
2, 0, 1, 3, 4, 5, 17, 6, 18, 19, 33, 49, 7, 20, 34, 65, 81, 8, 50, 97, 113, 21,
35, 66, 129, 145, 51, 82, 161, 177, 240, 22, 36, 98, 114, 193, 209, 225, 9, 23,
67, 83, 130, 146, 241, 24, 37, 52, 53, 84, 85, 115, 147, 148, 162, 178, 179,
210, 211, 212, 25, 54, 86, 87, 99, 116, 117, 149, 150, 163, 180, 181, 213, 38,
55, 56, 68, 100, 118, 131, 164, 166, 194, 214, 226, 39, 40, 41, 57, 69, 70, 71,
72, 73, 88, 89, 101, 102, 103, 104, 119, 120, 132, 133, 134, 135, 136, 151,
152, 153, 165, 167, 168, 182, 183, 195, 196, 197, 198, 199, 215, 227, 228, 229,
230, 242, 243, 244,
],
),
},
26 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 4, 5, 5, 7, 7, 14, 14, 13, 45],
&[
2, 0, 1, 3, 4, 5, 17, 6, 18, 19, 33, 49, 7, 20, 34, 65, 81, 8, 50, 97, 113, 21,
35, 66, 129, 145, 22, 82, 161, 177, 240, 36, 51, 98, 114, 193, 209, 225, 9, 23,
67, 83, 130, 146, 241, 24, 37, 52, 53, 84, 85, 147, 148, 162, 178, 180, 210,
211, 212, 86, 87, 99, 115, 116, 117, 149, 150, 163, 179, 181, 194, 213, 214,
25, 38, 54, 55, 56, 68, 88, 118, 131, 164, 166, 182, 226, 39, 40, 41, 57, 69,
70, 71, 72, 73, 89, 100, 101, 102, 103, 104, 119, 120, 132, 133, 134, 135, 136,
151, 152, 153, 165, 167, 168, 183, 184, 195, 196, 197, 198, 199, 200, 215, 227,
228, 229, 230, 231, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 3, 5, 4, 5, 5, 7, 7, 14, 14, 13, 45],
&[
2, 0, 1, 3, 4, 5, 17, 6, 18, 19, 33, 49, 7, 20, 34, 65, 81, 8, 50, 97, 113, 21,
35, 66, 129, 145, 22, 82, 161, 177, 240, 36, 51, 98, 114, 193, 209, 225, 9, 23,
67, 83, 130, 146, 241, 24, 37, 52, 53, 84, 85, 147, 148, 162, 178, 180, 210,
211, 212, 86, 87, 99, 115, 116, 117, 149, 150, 163, 179, 181, 194, 213, 214,
25, 38, 54, 55, 56, 68, 88, 118, 131, 164, 166, 182, 226, 39, 40, 41, 57, 69,
70, 71, 72, 73, 89, 100, 101, 102, 103, 104, 119, 120, 132, 133, 134, 135, 136,
151, 152, 153, 165, 167, 168, 183, 184, 195, 196, 197, 198, 199, 200, 215, 227,
228, 229, 230, 231, 242, 243, 244,
],
),
},
27 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 4, 3, 3, 7, 6, 5, 8, 8, 19, 16, 51],
&[
2, 1, 3, 4, 0, 5, 17, 6, 18, 7, 19, 33, 49, 8, 34, 65, 20, 81, 97, 9, 21, 35,
50, 113, 129, 145, 22, 66, 82, 161, 177, 240, 36, 51, 98, 193, 209, 10, 23, 67,
83, 114, 146, 225, 241, 24, 37, 52, 84, 130, 162, 178, 210, 25, 53, 54, 85, 86,
87, 99, 115, 117, 147, 148, 149, 150, 179, 180, 211, 212, 213, 214, 26, 38, 55,
56, 57, 68, 88, 116, 119, 131, 151, 163, 164, 181, 182, 194, 39, 40, 41, 42,
58, 69, 70, 71, 72, 73, 74, 89, 100, 101, 102, 103, 104, 118, 120, 121, 132,
133, 134, 135, 136, 152, 153, 165, 166, 167, 168, 169, 183, 184, 195, 196, 197,
198, 199, 200, 215, 216, 226, 227, 228, 229, 230, 231, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 4, 3, 3, 7, 6, 5, 8, 8, 19, 16, 51],
&[
2, 1, 3, 4, 0, 5, 17, 6, 18, 7, 19, 33, 49, 8, 34, 65, 20, 81, 97, 9, 21, 35,
50, 113, 129, 145, 22, 66, 82, 161, 177, 240, 36, 51, 98, 193, 209, 10, 23, 67,
83, 114, 146, 225, 241, 24, 37, 52, 84, 130, 162, 178, 210, 25, 53, 54, 85, 86,
87, 99, 115, 117, 147, 148, 149, 150, 179, 180, 211, 212, 213, 214, 26, 38, 55,
56, 57, 68, 88, 116, 119, 131, 151, 163, 164, 181, 182, 194, 39, 40, 41, 42,
58, 69, 70, 71, 72, 73, 74, 89, 100, 101, 102, 103, 104, 118, 120, 121, 132,
133, 134, 135, 136, 152, 153, 165, 166, 167, 168, 169, 183, 184, 195, 196, 197,
198, 199, 200, 215, 216, 226, 227, 228, 229, 230, 231, 242, 243, 244,
],
),
},
28 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 4, 3, 4, 5, 6, 7, 3, 9, 17, 20, 59],
&[
2, 1, 3, 4, 0, 5, 17, 6, 18, 7, 19, 33, 49, 8, 34, 65, 20, 50, 81, 97, 9, 21,
35, 113, 129, 22, 66, 82, 145, 161, 177, 23, 36, 51, 98, 193, 209, 240, 10,
114, 225, 24, 37, 52, 67, 83, 84, 130, 146, 241, 25, 53, 54, 85, 86, 115, 118,
147, 148, 150, 162, 178, 181, 210, 211, 212, 213, 26, 38, 68, 87, 88, 99, 116,
117, 131, 149, 151, 152, 163, 164, 179, 180, 182, 183, 194, 214, 39, 40, 41,
42, 55, 56, 57, 58, 69, 70, 71, 72, 73, 74, 89, 90, 100, 101, 102, 103, 104,
105, 119, 120, 121, 122, 132, 133, 134, 135, 136, 137, 153, 154, 165, 166, 167,
168, 169, 170, 184, 185, 195, 196, 197, 198, 199, 200, 201, 215, 216, 226, 227,
228, 229, 230, 231, 242, 243,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 3, 2, 4, 3, 4, 5, 6, 7, 3, 9, 17, 20, 59],
&[
2, 1, 3, 4, 0, 5, 17, 6, 18, 7, 19, 33, 49, 8, 34, 65, 20, 50, 81, 97, 9, 21,
35, 113, 129, 22, 66, 82, 145, 161, 177, 23, 36, 51, 98, 193, 209, 240, 10,
114, 225, 24, 37, 52, 67, 83, 84, 130, 146, 241, 25, 53, 54, 85, 86, 115, 118,
147, 148, 150, 162, 178, 181, 210, 211, 212, 213, 26, 38, 68, 87, 88, 99, 116,
117, 131, 149, 151, 152, 163, 164, 179, 180, 182, 183, 194, 214, 39, 40, 41,
42, 55, 56, 57, 58, 69, 70, 71, 72, 73, 74, 89, 90, 100, 101, 102, 103, 104,
105, 119, 120, 121, 122, 132, 133, 134, 135, 136, 137, 153, 154, 165, 166, 167,
168, 169, 170, 184, 185, 195, 196, 197, 198, 199, 200, 201, 215, 216, 226, 227,
228, 229, 230, 231, 242, 243,
],
),
},
29 => HuffmanTableSet {
dc_luma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_luma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 4, 3, 5, 3, 8, 5, 6, 1, 8, 19, 18, 63],
&[
1, 2, 3, 4, 5, 17, 0, 6, 18, 33, 7, 19, 49, 8, 20, 34, 65, 81, 50, 97, 113, 9,
21, 35, 66, 129, 145, 161, 240, 22, 82, 177, 193, 209, 23, 36, 51, 98, 225,
241, 114, 10, 24, 37, 52, 67, 83, 130, 146, 25, 53, 54, 84, 85, 86, 115, 118,
147, 148, 150, 162, 178, 181, 210, 211, 212, 213, 214, 38, 55, 68, 87, 88, 99,
116, 117, 149, 151, 163, 164, 179, 180, 182, 183, 194, 215, 26, 39, 40, 41, 42,
56, 57, 58, 69, 70, 71, 72, 73, 74, 89, 90, 100, 101, 102, 103, 104, 105, 119,
120, 121, 122, 131, 132, 133, 134, 135, 136, 137, 152, 153, 154, 165, 166, 167,
168, 169, 170, 184, 185, 195, 196, 197, 198, 199, 200, 201, 216, 217, 226, 227,
228, 229, 230, 231, 232, 242, 243, 244,
],
),
dc_chroma: OptimizedTable::from_bits_values_static(
[1, 0, 0, 7, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0],
&[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
),
ac_chroma: OptimizedTable::from_bits_values_static(
[0, 1, 3, 2, 4, 3, 5, 3, 8, 5, 6, 1, 8, 19, 18, 63],
&[
1, 2, 3, 4, 5, 17, 0, 6, 18, 33, 7, 19, 49, 8, 20, 34, 65, 81, 50, 97, 113, 9,
21, 35, 66, 129, 145, 161, 240, 22, 82, 177, 193, 209, 23, 36, 51, 98, 225,
241, 114, 10, 24, 37, 52, 67, 83, 130, 146, 25, 53, 54, 84, 85, 86, 115, 118,
147, 148, 150, 162, 178, 181, 210, 211, 212, 213, 214, 38, 55, 68, 87, 88, 99,
116, 117, 149, 151, 163, 164, 179, 180, 182, 183, 194, 215, 26, 39, 40, 41, 42,
56, 57, 58, 69, 70, 71, 72, 73, 74, 89, 90, 100, 101, 102, 103, 104, 105, 119,
120, 121, 122, 131, 132, 133, 134, 135, 136, 137, 152, 153, 154, 165, 166, 167,
168, 169, 170, 184, 185, 195, 196, 197, 198, 199, 200, 201, 216, 217, 226, 227,
228, 229, 230, 231, 232, 242, 243, 244,
],
),
},
_ => xyb_tables(QUALITY_TIERS.len() - 1),
}
}
pub(crate) fn select_tables(
quality: &crate::encode::encoder_types::Quality,
use_xyb: bool,
subsampling: crate::types::Subsampling,
) -> HuffmanTableSet {
let tier_idx = nearest_quality_tier(quality.to_internal());
if use_xyb {
xyb_tables(tier_idx)
} else {
match subsampling {
crate::types::Subsampling::S444 => ycbcr_444_tables(tier_idx),
_ => ycbcr_420_tables(tier_idx),
}
}
}