summaryrefslogtreecommitdiff
path: root/src/vp9_probs.h
diff options
context:
space:
mode:
authorZhao Yakui <yakui.zhao@intel.com>2016-05-24 08:00:34 -0400
committerXiang, Haihao <haihao.xiang@intel.com>2016-05-27 13:24:35 +0800
commit6a4cb72bf6ba65789c72015c06657f4e0ce530fe (patch)
tree846d121733f854c500bdf3e103c99362eb7268fc /src/vp9_probs.h
parent73e2bbccb3d127f2ccb34380773029689b449633 (diff)
downloadlibva-intel-driver-6a4cb72bf6ba65789c72015c06657f4e0ce530fe.tar.gz
Add the low-level implementation of VP9 encoding
The following are includes: a. The definition of data structure related with VP9 encoding b. VME/PAK pipeline related with VP9 encoding c. The required helper function Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> Reviewed-by: Sean V Kelley <sean.v.kelley@intel.com>
Diffstat (limited to 'src/vp9_probs.h')
-rw-r--r--src/vp9_probs.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/vp9_probs.h b/src/vp9_probs.h
index 5b47a345..d9ff805d 100644
--- a/src/vp9_probs.h
+++ b/src/vp9_probs.h
@@ -227,4 +227,23 @@ extern bool intel_write_uncompressed_header(struct encode_state *encode_state,
int *header_length,
vp9_header_bitoffset *header_bitoffset);
+typedef enum {
+ ONLY_4X4 = 0, // only 4x4 transform used
+ ALLOW_8X8 = 1, // allow block transform size up to 8x8
+ ALLOW_16X16 = 2, // allow block transform size up to 16x16
+ ALLOW_32X32 = 3, // allow block transform size up to 32x32
+ TX_MODE_SELECT = 4, // transform specified for each block
+ TX_MODES = 5,
+} TX_MODE;
+
+typedef enum {
+ SINGLE_REFERENCE = 0,
+ COMPOUND_REFERENCE = 1,
+ REFERENCE_MODE_SELECT = 2,
+ REFERENCE_MODES = 3,
+} REFERENCE_MODE;
+
+extern const unsigned short vp9_quant_dc[256];
+extern const unsigned short vp9_quant_ac[256];
+
#endif /*VP9_PROBS_H */