libavcodec/zmbvenc: block scoring improvements/bug fixes
[ffmpeg.git] / libavcodec / vp9data.h
1 /*
2  * Copyright (C) 2013 Ronald S. Bultje <rsbultje gmail com>
3  * Copyright (C) 2013 Clément Bœsch <u pkh me>
4  *
5  * This file is part of FFmpeg.
6  *
7  * FFmpeg is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * FFmpeg is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with FFmpeg; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  */
21
22 #ifndef AVCODEC_VP9DATA_H
23 #define AVCODEC_VP9DATA_H
24
25 #include <stdint.h>
26
27 #include "vp9dec.h"
28
29 extern const uint8_t ff_vp9_bwh_tab[2][N_BS_SIZES][2];
30 extern const int8_t ff_vp9_partition_tree[3][2];
31 extern const uint8_t ff_vp9_default_kf_partition_probs[4][4][3];
32 extern const int8_t ff_vp9_segmentation_tree[7][2];
33 extern const int8_t ff_vp9_intramode_tree[9][2];
34 extern const uint8_t ff_vp9_default_kf_ymode_probs[10][10][9];
35 extern const uint8_t ff_vp9_default_kf_uvmode_probs[10][9];
36 extern const int8_t ff_vp9_inter_mode_tree[3][2];
37 extern const int8_t ff_vp9_filter_tree[2][2];
38 extern const enum FilterMode ff_vp9_filter_lut[3];
39 extern const int16_t ff_vp9_dc_qlookup[3][256];
40 extern const int16_t ff_vp9_ac_qlookup[3][256];
41 extern const enum TxfmType ff_vp9_intra_txfm_type[14];
42 extern const int16_t ff_vp9_default_scan_4x4[16];
43 extern const int16_t ff_vp9_col_scan_4x4[16];
44 extern const int16_t ff_vp9_row_scan_4x4[16];
45 extern const int16_t ff_vp9_default_scan_8x8[64];
46 extern const int16_t ff_vp9_col_scan_8x8[64];
47 extern const int16_t ff_vp9_row_scan_8x8[64];
48 extern const int16_t ff_vp9_default_scan_16x16[256];
49 extern const int16_t ff_vp9_col_scan_16x16[256];
50 extern const int16_t ff_vp9_row_scan_16x16[256];
51 extern const int16_t ff_vp9_default_scan_32x32[1024];
52 extern const int16_t * const ff_vp9_scans[5][4];
53 extern const int16_t ff_vp9_default_scan_4x4_nb[16][2];
54 extern const int16_t ff_vp9_col_scan_4x4_nb[16][2];
55 extern const int16_t ff_vp9_row_scan_4x4_nb[16][2];
56 extern const int16_t ff_vp9_default_scan_8x8_nb[64][2];
57 extern const int16_t ff_vp9_col_scan_8x8_nb[64][2];
58 extern const int16_t ff_vp9_row_scan_8x8_nb[64][2];
59 extern const int16_t ff_vp9_default_scan_16x16_nb[256][2];
60 extern const int16_t ff_vp9_col_scan_16x16_nb[256][2];
61 extern const int16_t ff_vp9_row_scan_16x16_nb[256][2];
62 extern const int16_t ff_vp9_default_scan_32x32_nb[1024][2];
63 extern const int16_t (* const ff_vp9_scans_nb[5][4])[2];
64 extern const uint8_t ff_vp9_model_pareto8[256][8];
65 extern const ProbContext ff_vp9_default_probs;
66 extern const uint8_t ff_vp9_default_coef_probs[4][2][2][6][6][3];
67 extern const int8_t ff_vp9_mv_joint_tree[3][2];
68 extern const int8_t ff_vp9_mv_class_tree[10][2];
69 extern const int8_t ff_vp9_mv_fp_tree[3][2];
70
71 #endif /* AVCODEC_VP9DATA_H */