00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00027 #ifndef AVCODEC_RV40DATA_H
00028 #define AVCODEC_RV40DATA_H
00029
00030 #include <stdint.h>
00031
00036 static const int rv40_standard_widths[] = { 160, 172, 240, 320, 352, 640, 704, 0};
00037 static const int rv40_standard_heights[] = { 120, 132, 144, 240, 288, 480, -8, -10, 180, 360, 576, 0};
00039
00040 #define MODE2_PATTERNS_NUM 20
00041
00047 static const uint16_t rv40_aic_table_index[MODE2_PATTERNS_NUM] = {
00048 0x000, 0x100, 0x200,
00049 0x011, 0x111, 0x211, 0x511, 0x611,
00050 0x022, 0x122, 0x222, 0x722,
00051 0x272, 0x227,
00052 0x822, 0x282, 0x228,
00053 0x112, 0x116, 0x221
00054 };
00055
00060 static const uint8_t rv40_luma_dc_quant[2][32] = {
00061 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
00062 16, 17, 17, 18, 18, 18, 19, 19, 19, 20, 20, 20, 22, 22, 22, 22 },
00063 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
00064 16, 17, 18, 19, 20, 20, 21, 21, 22, 23, 23, 23, 24, 24, 24, 24 }
00065 };
00066
00073 static const uint8_t rv40_alpha_tab[32] = {
00074 128, 128, 128, 128, 128, 128, 128, 128,
00075 128, 128, 122, 96, 75, 59, 47, 37,
00076 29, 23, 18, 15, 13, 11, 10, 9,
00077 8, 7, 6, 5, 4, 3, 2, 1
00078 };
00080 static const uint8_t rv40_beta_tab[32] = {
00081 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 4, 4, 4, 6, 6,
00082 6, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 13, 14, 15, 16, 17
00083 };
00085 static const uint8_t rv40_filter_clip_tbl[3][32] = {
00086 {
00087 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00088 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
00089 },
00090 {
00091 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1,
00092 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 5, 5
00093 },
00094 {
00095 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1,
00096 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 7, 8, 9
00097 }
00098 };
00100
00101 #endif