Initial WebM release
[libvpx.git] / vp8 / vp8e.h
bloba90aa2aafcaee05dbebc77a8bcebd363d377a894
1 /*
2 * Copyright (c) 2010 The VP8 project authors. All Rights Reserved.
4 * Use of this source code is governed by a BSD-style license and patent
5 * grant that can be found in the LICENSE file in the root of the source
6 * tree. All contributing project authors may be found in the AUTHORS
7 * file in the root of the source tree.
8 */
11 /* This file contains backwards compatibility stubs for applications using
12 * the VP8 version 1.0 API.
14 #ifndef VP8E_H
15 #define VP8E_H
16 #include "vpx_codec_impl_top.h"
18 #if defined(VPX_CODEC_DISABLE_COMPAT) && VPX_CODEC_DISABLE_COMPAT
19 #error "Backwards compatibility disabled: don't include vp8e.h"
20 #endif
22 #include "vp8cx.h"
23 DECLSPEC_DEPRECATED extern vpx_codec_iface_t vpx_enc_vp8_algo DEPRECATED;
26 enum
28 VP8E_SET_REFERENCE = VP8_SET_REFERENCE,
29 VP8E_COPY_REFERENCE = VP8_COPY_REFERENCE,
30 VP8E_SET_PREVIEWPP = VP8_SET_POSTPROC,
31 VP8E_SET_FLUSHFLAG = 4,
32 VP8E_SET_FRAMETYPE = 10,
33 VP8E_SET_ENCODING_MODE = 12
36 #define NORMAL_FRAME (0)
37 #define KEY_FRAME (1)
39 /* Change VP8E to VP8 to get the undeprecated version of these (defined in
40 * vp8.h)
42 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_SET_REFERENCE, vpx_ref_frame_t *)
43 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_COPY_REFERENCE, vpx_ref_frame_t *)
44 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_SET_PREVIEWPP, vp8_postproc_cfg_t *)
47 /* Flush is done by calling vpx_codec_encode with a NULL input image. */
48 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_SET_FLUSHFLAG, int)
51 /* Frame type is set with a flag to vpx_codec_control. See VPX_EFLAG_FORCE_KF
53 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_SET_FRAMETYPE, int)
56 /* This control has been deprecated in favor of the duration parameter to
57 * vpx_codec_encode(). Use the #VPX_DL_REALTIME, #VPX_DL_GOOD_QUALITY,
58 * #VPX_DL_BEST_QUALITY constants to that parameter instead.
60 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_SET_ENCODING_MODE, vp8e_encoding_mode)
61 #include "vpx_codec_impl_bottom.h"
62 #endif