maroontree 0.1.8

AV1 image & AV2 video and image encoder
Documentation
// Per-qc chroma coeff CDFs + adaptation paras (AVM entropy_inits_coeffs.h).
pub(crate) static BASE_LF_UV_QCX: [[[u16; 5]; 12]; 4] = [
    [
        [18692, 6304, 2830, 1460, 940],
        [25248, 11541, 5002, 2456, 1291],
        [28391, 19478, 12957, 8548, 5704],
        [31086, 27629, 24167, 20795, 17722],
        [17533, 4163, 1401, 617, 317],
        [22512, 8182, 2993, 1303, 631],
        [26850, 17139, 10451, 6166, 3667],
        [30753, 27064, 22933, 19063, 15469],
        [6348, 813, 456, 338, 242],
        [16394, 3208, 1237, 745, 477],
        [25571, 16814, 11782, 7834, 5031],
        [27948, 23280, 21067, 18703, 16520],
    ],
    [
        [17406, 5118, 1841, 754, 371],
        [23212, 9769, 4035, 1764, 826],
        [27530, 18142, 11201, 6753, 4041],
        [30572, 26256, 21988, 17921, 14474],
        [17199, 4041, 1062, 345, 118],
        [21262, 6944, 2251, 820, 325],
        [26557, 15996, 9067, 5036, 2807],
        [30307, 25529, 21013, 16899, 13558],
        [5817, 632, 212, 114, 72],
        [15077, 2553, 824, 369, 218],
        [23419, 13461, 7383, 3741, 1947],
        [24240, 17657, 14311, 11092, 9001],
    ],
    [
        [17915, 4576, 1368, 493, 211],
        [22269, 7793, 2632, 965, 369],
        [27225, 17041, 10009, 5688, 3155],
        [30554, 26134, 21589, 17234, 13479],
        [17736, 4166, 1347, 534, 220],
        [21911, 7885, 2883, 1165, 513],
        [27700, 18493, 11789, 7284, 4430],
        [30943, 27194, 23331, 19484, 15955],
        [4100, 318, 72, 32, 28],
        [15382, 1857, 383, 116, 36],
        [23297, 11774, 5478, 2256, 984],
        [25557, 19068, 13620, 9133, 6089],
    ],
    [
        [24782, 8284, 2298, 645, 290],
        [26383, 10500, 2987, 884, 289],
        [28205, 18431, 10391, 5241, 2137],
        [31000, 26865, 22038, 16135, 11328],
        [25214, 10341, 3510, 1293, 382],
        [26559, 12074, 3982, 1324, 438],
        [28583, 20407, 12881, 7029, 3277],
        [31185, 27312, 23066, 17398, 12294],
        [2585, 452, 194, 129, 65],
        [17621, 1039, 247, 99, 49],
        [27307, 21845, 16384, 10923, 5461],
        [27307, 21845, 16384, 10923, 5461],
    ],
];
pub(crate) static PARA_BASE_LF_UV_QCX: [[(u8, u8, u8); 12]; 4] = [
    [
        (3, 3, 4),
        (4, 4, 5),
        (4, 5, 5),
        (4, 5, 5),
        (3, 3, 4),
        (4, 5, 6),
        (4, 5, 5),
        (4, 4, 4),
        (4, 4, 5),
        (2, 3, 5),
        (3, 3, 4),
        (3, 2, 4),
    ],
    [
        (3, 3, 4),
        (4, 4, 5),
        (4, 4, 6),
        (4, 5, 6),
        (3, 4, 5),
        (4, 4, 5),
        (4, 5, 5),
        (4, 5, 5),
        (4, 4, 5),
        (4, 4, 5),
        (3, 3, 4),
        (2, 2, 3),
    ],
    [
        (3, 4, 4),
        (4, 4, 5),
        (4, 4, 5),
        (4, 5, 5),
        (3, 4, 5),
        (3, 4, 5),
        (3, 4, 5),
        (4, 5, 6),
        (3, 5, 5),
        (4, 5, 5),
        (3, 5, 5),
        (3, 4, 5),
    ],
    [
        (3, 2, 3),
        (3, 3, 4),
        (4, 4, 5),
        (4, 5, 5),
        (3, 3, 5),
        (4, 5, 5),
        (4, 5, 6),
        (4, 5, 5),
        (4, 5, 5),
        (2, 2, 5),
        (3, 4, 5),
        (3, 4, 5),
    ],
];
pub(crate) static BASE_UV_QCX: [[[u16; 3]; 12]; 4] = [
    [
        [5864, 666, 170],
        [17019, 3870, 1158],
        [23662, 11439, 5806],
        [27940, 19845, 13785],
        [4989, 362, 79],
        [15354, 2691, 743],
        [23540, 10472, 5001],
        [28204, 20034, 13624],
        [3530, 279, 75],
        [12949, 1915, 546],
        [23454, 13450, 7422],
        [29708, 22503, 16680],
    ],
    [
        [6504, 486, 101],
        [16300, 3236, 856],
        [23853, 11121, 5237],
        [28427, 20353, 13986],
        [5597, 295, 54],
        [14221, 2089, 471],
        [23045, 9731, 4207],
        [28458, 20369, 14023],
        [3021, 161, 35],
        [11421, 1193, 259],
        [22220, 10470, 4433],
        [30644, 23059, 15170],
    ],
    [
        [5840, 311, 48],
        [16296, 2753, 573],
        [23169, 9863, 4143],
        [27902, 19152, 12333],
        [5057, 278, 42],
        [16389, 2601, 571],
        [23683, 10622, 4734],
        [28875, 21409, 15203],
        [2110, 84, 20],
        [10597, 892, 132],
        [22042, 9233, 3575],
        [24576, 16384, 8192],
    ],
    [
        [6638, 376, 42],
        [19038, 3142, 515],
        [23326, 9231, 3516],
        [28513, 18782, 11580],
        [8483, 735, 109],
        [20814, 4668, 1005],
        [25369, 13329, 6333],
        [28672, 20687, 13429],
        [2185, 874, 437],
        [13863, 1260, 630],
        [24576, 16384, 8192],
        [24576, 16384, 8192],
    ],
];
pub(crate) static PARA_BASE_UV_QCX: [[(u8, u8, u8); 12]; 4] = [
    [
        (3, 4, 5),
        (4, 5, 5),
        (4, 5, 5),
        (4, 4, 5),
        (4, 5, 5),
        (4, 5, 5),
        (4, 3, 4),
        (4, 5, 5),
        (4, 3, 5),
        (2, 4, 5),
        (3, 3, 4),
        (3, 3, 5),
    ],
    [
        (4, 4, 5),
        (4, 4, 6),
        (3, 4, 5),
        (4, 4, 5),
        (4, 5, 5),
        (4, 4, 5),
        (3, 4, 5),
        (4, 4, 5),
        (4, 4, 5),
        (4, 5, 5),
        (4, 3, 5),
        (4, 5, 5),
    ],
    [
        (4, 4, 5),
        (4, 4, 5),
        (4, 4, 5),
        (4, 4, 5),
        (4, 4, 5),
        (4, 4, 5),
        (3, 4, 4),
        (4, 4, 5),
        (4, 5, 5),
        (4, 5, 5),
        (3, 5, 3),
        (3, 4, 5),
    ],
    [
        (4, 4, 5),
        (4, 4, 5),
        (3, 3, 4),
        (2, 2, 5),
        (3, 4, 5),
        (4, 4, 5),
        (3, 3, 5),
        (4, 4, 3),
        (4, 5, 5),
        (2, 4, 5),
        (3, 4, 5),
        (3, 4, 5),
    ],
];
pub(crate) static BR_UV_QCX: [[[u16; 3]; 4]; 4] = [
    [
        [12754, 6227, 3216],
        [12094, 5088, 2439],
        [16540, 8475, 4454],
        [23188, 16485, 11809],
    ],
    [
        [8326, 2941, 1233],
        [10278, 3814, 1512],
        [14886, 7098, 3391],
        [22104, 15033, 10331],
    ],
    [
        [6123, 1615, 517],
        [9448, 3141, 1116],
        [14503, 6728, 3105],
        [21628, 14264, 9555],
    ],
    [
        [5791, 1170, 404],
        [8047, 2193, 644],
        [13965, 6109, 2158],
        [21011, 12383, 7484],
    ],
];
pub(crate) static PARA_BR_UV_QCX: [[(u8, u8, u8); 4]; 4] = [
    [(3, 3, 3), (4, 4, 6), (4, 4, 5), (4, 4, 5)],
    [(4, 4, 5), (4, 5, 6), (4, 5, 6), (4, 4, 5)],
    [(4, 4, 6), (4, 5, 5), (4, 4, 5), (3, 4, 4)],
    [(1, 4, 5), (4, 5, 6), (4, 5, 5), (3, 3, 5)],
];
pub(crate) static BASE_LF_EOB_UV_QCX: [[[u16; 4]; 4]; 4] = [
    [
        [3818, 1325, 759, 511],
        [2852, 849, 544, 327],
        [3866, 1963, 1189, 952],
        [26214, 19661, 13107, 6554],
    ],
    [
        [2925, 585, 206, 93],
        [2793, 1037, 668, 504],
        [2672, 819, 308, 157],
        [26214, 19661, 13107, 6554],
    ],
    [
        [1804, 305, 95, 35],
        [1037, 145, 38, 28],
        [1889, 315, 52, 28],
        [26214, 19661, 13107, 6554],
    ],
    [
        [1423, 257, 92, 43],
        [828, 355, 237, 118],
        [26214, 19661, 13107, 6554],
        [26214, 19661, 13107, 6554],
    ],
];
pub(crate) static PARA_BASE_LF_EOB_UV_QCX: [[(u8, u8, u8); 4]; 4] = [
    [(4, 4, 5), (3, 3, 4), (3, 4, 3), (3, 4, 5)],
    [(4, 4, 5), (3, 2, 3), (2, 4, 3), (3, 4, 5)],
    [(4, 4, 5), (3, 4, 4), (3, 5, 4), (3, 4, 5)],
    [(4, 4, 4), (1, 4, 5), (3, 4, 5), (3, 4, 5)],
];
pub(crate) static BASE_EOB_UV_QCX: [[[u16; 2]; 4]; 4] = [
    [[21845, 10923], [1554, 331], [880, 321], [2156, 695]],
    [[21845, 10923], [1173, 181], [502, 58], [481, 70]],
    [[21845, 10923], [682, 77], [230, 25], [256, 38]],
    [[21845, 10923], [781, 71], [106, 12], [281, 70]],
];
pub(crate) static PARA_BASE_EOB_UV_QCX: [[(u8, u8, u8); 4]; 4] = [
    [(2, 3, 4), (3, 4, 5), (3, 3, 5), (3, 4, 5)],
    [(2, 3, 4), (3, 4, 5), (3, 4, 5), (3, 4, 5)],
    [(2, 3, 4), (3, 4, 5), (3, 4, 5), (3, 4, 5)],
    [(2, 3, 4), (3, 4, 5), (3, 4, 4), (0, 1, 4)],
];