WebM VP8 Codec SDK
vp8.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
3  *
4  * Use of this source code is governed by a BSD-style license
5  * that can be found in the LICENSE file in the root of the source
6  * tree. An additional intellectual property rights grant can be found
7  * in the file PATENTS. All contributing project authors may
8  * be found in the AUTHORS file in the root of the source tree.
9  */
10 
30 #ifndef VP8_H
31 #define VP8_H
32 
33 #include "./vpx_codec.h"
34 #include "./vpx_image.h"
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
53  /* TODO(jkoleszar): The encoder incorrectly reuses some of these values (5+)
54  * for its control ids. These should be migrated to something like the
55  * VP8_DECODER_CTRL_ID_START range next time we're ready to break the ABI.
56  */
58  VP8_COMMON_CTRL_ID_MAX,
59  VP8_DECODER_CTRL_ID_START = 256
60 };
61 
67  VP8_NOFILTERING = 0,
68  VP8_DEBLOCK = 1 << 0,
69  VP8_DEMACROBLOCK = 1 << 1,
70  VP8_ADDNOISE = 1 << 2,
75  VP8_MFQE = 1 << 10
76 };
77 
85 typedef struct vp8_postproc_cfg {
90 
95 typedef enum vpx_ref_frame_type {
96  VP8_LAST_FRAME = 1,
97  VP8_GOLD_FRAME = 2,
98  VP8_ALTR_FRAME = 4
100 
105 typedef struct vpx_ref_frame {
109 
114 typedef struct vp9_ref_frame {
115  int idx;
118 
131 
134 #ifdef __cplusplus
135 } // extern "C"
136 #endif
137 
138 #endif