1cabdff1aSopenharmony_ci/* 2cabdff1aSopenharmony_ci * This file is part of FFmpeg. 3cabdff1aSopenharmony_ci * 4cabdff1aSopenharmony_ci * FFmpeg is free software; you can redistribute it and/or 5cabdff1aSopenharmony_ci * modify it under the terms of the GNU Lesser General Public 6cabdff1aSopenharmony_ci * License as published by the Free Software Foundation; either 7cabdff1aSopenharmony_ci * version 2.1 of the License, or (at your option) any later version. 8cabdff1aSopenharmony_ci * 9cabdff1aSopenharmony_ci * FFmpeg is distributed in the hope that it will be useful, 10cabdff1aSopenharmony_ci * but WITHOUT ANY WARRANTY; without even the implied warranty of 11cabdff1aSopenharmony_ci * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12cabdff1aSopenharmony_ci * Lesser General Public License for more details. 13cabdff1aSopenharmony_ci * 14cabdff1aSopenharmony_ci * You should have received a copy of the GNU Lesser General Public 15cabdff1aSopenharmony_ci * License along with FFmpeg; if not, write to the Free Software 16cabdff1aSopenharmony_ci * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 17cabdff1aSopenharmony_ci */ 18cabdff1aSopenharmony_ci 19cabdff1aSopenharmony_ci#include <stdint.h> 20cabdff1aSopenharmony_ci 21cabdff1aSopenharmony_ciconst uint8_t ff_default_chroma_qscale_table[32] = { 22cabdff1aSopenharmony_ci 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 23cabdff1aSopenharmony_ci 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 24cabdff1aSopenharmony_ci}; 25cabdff1aSopenharmony_ci 26cabdff1aSopenharmony_ciconst uint8_t ff_mpeg2_non_linear_qscale[32] = { 27cabdff1aSopenharmony_ci 0, 1, 2, 3, 4, 5, 6, 7, 28cabdff1aSopenharmony_ci 8, 10, 12, 14, 16, 18, 20, 22, 29cabdff1aSopenharmony_ci 24, 28, 32, 36, 40, 44, 48, 52, 30cabdff1aSopenharmony_ci 56, 64, 72, 80, 88, 96, 104, 112, 31cabdff1aSopenharmony_ci}; 32cabdff1aSopenharmony_ci 33cabdff1aSopenharmony_ciconst uint8_t ff_mpeg1_dc_scale_table[128] = { 34cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 35cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 36cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 37cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 38cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 39cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 40cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 41cabdff1aSopenharmony_ci 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 42cabdff1aSopenharmony_ci}; 43cabdff1aSopenharmony_ci 44cabdff1aSopenharmony_cistatic const uint8_t mpeg2_dc_scale_table1[128] = { 45cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 46cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 47cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 48cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 49cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 50cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 51cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 52cabdff1aSopenharmony_ci 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 53cabdff1aSopenharmony_ci}; 54cabdff1aSopenharmony_ci 55cabdff1aSopenharmony_cistatic const uint8_t mpeg2_dc_scale_table2[128] = { 56cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 57cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 58cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 59cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 60cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 61cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 62cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 63cabdff1aSopenharmony_ci 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 64cabdff1aSopenharmony_ci}; 65cabdff1aSopenharmony_ci 66cabdff1aSopenharmony_cistatic const uint8_t mpeg2_dc_scale_table3[128] = { 67cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 68cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 69cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 70cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 71cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 72cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 73cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 74cabdff1aSopenharmony_ci 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 75cabdff1aSopenharmony_ci}; 76cabdff1aSopenharmony_ci 77cabdff1aSopenharmony_ciconst uint8_t *const ff_mpeg2_dc_scale_table[4] = { 78cabdff1aSopenharmony_ci ff_mpeg1_dc_scale_table, 79cabdff1aSopenharmony_ci mpeg2_dc_scale_table1, 80cabdff1aSopenharmony_ci mpeg2_dc_scale_table2, 81cabdff1aSopenharmony_ci mpeg2_dc_scale_table3, 82cabdff1aSopenharmony_ci}; 83cabdff1aSopenharmony_ci 84cabdff1aSopenharmony_ciconst uint8_t ff_alternate_horizontal_scan[64] = { 85cabdff1aSopenharmony_ci 0, 1, 2, 3, 8, 9, 16, 17, 86cabdff1aSopenharmony_ci 10, 11, 4, 5, 6, 7, 15, 14, 87cabdff1aSopenharmony_ci 13, 12, 19, 18, 24, 25, 32, 33, 88cabdff1aSopenharmony_ci 26, 27, 20, 21, 22, 23, 28, 29, 89cabdff1aSopenharmony_ci 30, 31, 34, 35, 40, 41, 48, 49, 90cabdff1aSopenharmony_ci 42, 43, 36, 37, 38, 39, 44, 45, 91cabdff1aSopenharmony_ci 46, 47, 50, 51, 56, 57, 58, 59, 92cabdff1aSopenharmony_ci 52, 53, 54, 55, 60, 61, 62, 63, 93cabdff1aSopenharmony_ci}; 94cabdff1aSopenharmony_ci 95cabdff1aSopenharmony_ciconst uint8_t ff_alternate_vertical_scan[64] = { 96cabdff1aSopenharmony_ci 0, 8, 16, 24, 1, 9, 2, 10, 97cabdff1aSopenharmony_ci 17, 25, 32, 40, 48, 56, 57, 49, 98cabdff1aSopenharmony_ci 41, 33, 26, 18, 3, 11, 4, 12, 99cabdff1aSopenharmony_ci 19, 27, 34, 42, 50, 58, 35, 43, 100cabdff1aSopenharmony_ci 51, 59, 20, 28, 5, 13, 6, 14, 101cabdff1aSopenharmony_ci 21, 29, 36, 44, 52, 60, 37, 45, 102cabdff1aSopenharmony_ci 53, 61, 22, 30, 7, 15, 23, 31, 103cabdff1aSopenharmony_ci 38, 46, 54, 62, 39, 47, 55, 63, 104cabdff1aSopenharmony_ci}; 105