Libav 0.7.1
|
00001 /* 00002 * RealVideo 3 decoder 00003 * copyright (c) 2007 Konstantin Shishkov 00004 * 00005 * This file is part of Libav. 00006 * 00007 * Libav is free software; you can redistribute it and/or 00008 * modify it under the terms of the GNU Lesser General Public 00009 * License as published by the Free Software Foundation; either 00010 * version 2.1 of the License, or (at your option) any later version. 00011 * 00012 * Libav is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 * Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with Libav; if not, write to the Free Software 00019 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00020 */ 00021 00027 #ifndef AVCODEC_RV30DATA_H 00028 #define AVCODEC_RV30DATA_H 00029 00030 #include <stdint.h> 00031 00033 static const uint8_t rv30_luma_dc_quant[32] = { 00034 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 00035 16, 17, 18, 19, 20, 21, 22, 22, 22, 23, 23, 23, 24, 24, 25, 25 00036 }; 00037 00042 static const uint8_t rv30_itype_code[9*9*2] = { 00043 0, 0, 0, 1, 1, 0, 1, 1, 0, 2, 2, 0, 0, 3, 3, 0, 1, 2, 00044 2, 1, 0, 4, 4, 0, 3, 1, 1, 3, 0, 5, 5, 0, 2, 2, 1, 4, 00045 4, 1, 0, 6, 3, 2, 1, 5, 2, 3, 5, 1, 6, 0, 0, 7, 4, 2, 00046 2, 4, 3, 3, 6, 1, 1, 6, 7, 0, 0, 8, 5, 2, 4, 3, 2, 5, 00047 3, 4, 1, 7, 4, 4, 7, 1, 8, 0, 6, 2, 3, 5, 5, 3, 2, 6, 00048 1, 8, 2, 7, 7, 2, 8, 1, 5, 4, 4, 5, 3, 6, 6, 3, 8, 2, 00049 4, 6, 5, 5, 6, 4, 2, 8, 7, 3, 3, 7, 6, 5, 5, 6, 7, 4, 00050 4, 7, 8, 3, 3, 8, 7, 5, 8, 4, 5, 7, 4, 8, 6, 6, 7, 6, 00051 5, 8, 8, 5, 6, 7, 8, 6, 7, 7, 6, 8, 8, 7, 7, 8, 8, 8, 00052 }; 00053 00063 static const uint8_t rv30_itype_from_context[900] = { 00064 0, 9, 9, 9, 9, 9, 9, 9, 9, 00065 0, 2, 9, 9, 9, 9, 9, 9, 9, 00066 9, 9, 9, 9, 9, 9, 9, 9, 9, 00067 2, 0, 9, 9, 9, 9, 9, 9, 9, 00068 9, 9, 9, 9, 9, 9, 9, 9, 9, 00069 9, 9, 9, 9, 9, 9, 9, 9, 9, 00070 9, 9, 9, 9, 9, 9, 9, 9, 9, 00071 9, 9, 9, 9, 9, 9, 9, 9, 9, 00072 9, 9, 9, 9, 9, 9, 9, 9, 9, 00073 9, 9, 9, 9, 9, 9, 9, 9, 9, 00074 00075 0, 1, 9, 9, 9, 9, 9, 9, 9, 00076 0, 2, 1, 6, 4, 8, 5, 7, 3, 00077 1, 0, 2, 6, 5, 4, 3, 8, 7, 00078 2, 8, 0, 1, 7, 4, 3, 6, 5, 00079 2, 0, 1, 3, 8, 5, 4, 7, 6, 00080 2, 0, 1, 4, 6, 7, 8, 3, 5, 00081 0, 1, 5, 2, 6, 3, 8, 4, 7, 00082 0, 1, 6, 2, 4, 7, 5, 8, 3, 00083 2, 7, 0, 1, 4, 8, 6, 3, 5, 00084 2, 8, 0, 1, 7, 3, 4, 5, 6, 00085 00086 1, 0, 9, 9, 9, 9, 9, 9, 9, 00087 1, 2, 5, 6, 3, 0, 4, 8, 7, 00088 1, 6, 2, 5, 3, 0, 4, 8, 7, 00089 2, 1, 7, 6, 8, 3, 5, 0, 4, 00090 1, 2, 5, 3, 6, 8, 4, 7, 0, 00091 1, 6, 2, 0, 4, 5, 8, 7, 3, 00092 1, 5, 2, 6, 3, 8, 4, 0, 7, 00093 1, 6, 0, 2, 4, 5, 7, 3, 8, 00094 2, 1, 7, 6, 0, 8, 5, 4, 3, 00095 1, 2, 7, 8, 3, 4, 5, 6, 0, 00096 00097 9, 9, 9, 9, 9, 9, 9, 9, 9, 00098 0, 2, 1, 8, 7, 6, 5, 4, 3, 00099 1, 2, 0, 6, 5, 7, 4, 8, 3, 00100 2, 8, 7, 1, 0, 6, 4, 3, 5, 00101 2, 0, 8, 1, 3, 7, 5, 4, 6, 00102 2, 0, 4, 1, 7, 8, 6, 3, 5, 00103 2, 0, 1, 5, 8, 4, 6, 7, 3, 00104 2, 0, 6, 1, 4, 7, 8, 5, 3, 00105 2, 7, 8, 1, 0, 5, 4, 6, 3, 00106 2, 8, 7, 1, 0, 4, 3, 6, 5, 00107 00108 9, 9, 9, 9, 9, 9, 9, 9, 9, 00109 0, 2, 1, 3, 5, 8, 6, 4, 7, 00110 1, 0, 2, 5, 3, 6, 4, 8, 7, 00111 2, 8, 1, 0, 3, 5, 7, 6, 4, 00112 3, 2, 5, 8, 1, 4, 6, 7, 0, 00113 4, 2, 0, 6, 1, 5, 8, 3, 7, 00114 5, 3, 1, 2, 8, 6, 4, 0, 7, 00115 1, 6, 0, 2, 4, 5, 8, 3, 7, 00116 2, 7, 0, 1, 5, 4, 8, 6, 3, 00117 2, 8, 3, 5, 1, 0, 7, 6, 4, 00118 00119 9, 9, 9, 9, 9, 9, 9, 9, 9, 00120 2, 0, 6, 1, 4, 7, 5, 8, 3, 00121 1, 6, 2, 0, 4, 5, 3, 7, 8, 00122 2, 8, 7, 6, 4, 0, 1, 5, 3, 00123 4, 2, 1, 0, 6, 8, 3, 5, 7, 00124 4, 2, 6, 0, 1, 5, 7, 8, 3, 00125 1, 2, 5, 0, 6, 3, 4, 7, 8, 00126 6, 4, 0, 1, 2, 7, 5, 3, 8, 00127 2, 7, 4, 6, 0, 1, 8, 5, 3, 00128 2, 8, 7, 4, 6, 1, 3, 5, 0, 00129 00130 9, 9, 9, 9, 9, 9, 9, 9, 9, 00131 5, 1, 2, 3, 6, 8, 0, 4, 7, 00132 1, 5, 6, 3, 2, 0, 4, 8, 7, 00133 2, 1, 5, 3, 6, 8, 7, 4, 0, 00134 5, 3, 1, 2, 6, 8, 4, 7, 0, 00135 1, 6, 2, 4, 5, 8, 0, 3, 7, 00136 5, 1, 3, 6, 2, 0, 8, 4, 7, 00137 1, 6, 5, 2, 0, 4, 3, 7, 8, 00138 2, 7, 1, 6, 5, 0, 8, 3, 4, 00139 2, 5, 1, 3, 6, 8, 4, 0, 7, 00140 00141 9, 9, 9, 9, 9, 9, 9, 9, 9, 00142 1, 6, 2, 0, 5, 4, 3, 7, 8, 00143 1, 6, 5, 4, 2, 3, 0, 7, 8, 00144 2, 1, 6, 7, 4, 8, 5, 3, 0, 00145 2, 1, 6, 5, 8, 4, 3, 0, 7, 00146 6, 4, 1, 2, 0, 5, 7, 8, 3, 00147 1, 6, 5, 2, 3, 0, 4, 8, 7, 00148 6, 1, 4, 0, 2, 7, 5, 3, 8, 00149 2, 7, 4, 6, 1, 5, 0, 8, 3, 00150 2, 1, 6, 8, 4, 7, 3, 5, 0, 00151 00152 9, 9, 9, 9, 9, 9, 9, 9, 9, 00153 2, 0, 4, 7, 6, 1, 8, 5, 3, 00154 6, 1, 2, 0, 4, 7, 5, 8, 3, 00155 2, 7, 8, 0, 1, 6, 4, 3, 5, 00156 2, 4, 0, 8, 3, 1, 7, 6, 5, 00157 4, 2, 7, 0, 6, 1, 8, 5, 3, 00158 2, 1, 0, 8, 5, 6, 7, 4, 3, 00159 2, 6, 4, 1, 7, 0, 5, 8, 3, 00160 2, 7, 4, 0, 8, 6, 1, 5, 3, 00161 2, 8, 7, 4, 1, 0, 3, 6, 5, 00162 00163 9, 9, 9, 9, 9, 9, 9, 9, 9, 00164 2, 0, 8, 1, 3, 4, 6, 5, 7, 00165 1, 2, 0, 6, 8, 5, 7, 3, 4, 00166 2, 8, 7, 1, 0, 3, 6, 5, 4, 00167 8, 3, 2, 5, 1, 0, 4, 7, 6, 00168 2, 0, 4, 8, 5, 1, 7, 6, 3, 00169 2, 1, 0, 8, 5, 3, 6, 4, 7, 00170 2, 1, 6, 0, 8, 4, 5, 7, 3, 00171 2, 7, 8, 4, 0, 6, 1, 5, 3, 00172 2, 8, 3, 0, 7, 4, 1, 6, 5, 00173 }; 00174 00178 static const uint8_t rv30_loop_filt_lim[32] = { 00179 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5 00180 }; 00181 #endif /* AVCODEC_RV30DATA_H */