diff options
author | John Koleszar <jkoleszar@google.com> | 2010-05-18 11:58:33 -0400 |
---|---|---|
committer | John Koleszar <jkoleszar@google.com> | 2010-05-18 11:58:33 -0400 |
commit | 0ea50ce9cb4b65eee6afa1d041fe8beb5abda667 (patch) | |
tree | 1f3b9019f28bc56fd3156f96e5a9653a983ee61b /vp8/common/codec_common_interface.h | |
download | libvpx-0ea50ce9cb4b65eee6afa1d041fe8beb5abda667.tar libvpx-0ea50ce9cb4b65eee6afa1d041fe8beb5abda667.tar.gz libvpx-0ea50ce9cb4b65eee6afa1d041fe8beb5abda667.tar.bz2 libvpx-0ea50ce9cb4b65eee6afa1d041fe8beb5abda667.zip |
Initial WebM release
Diffstat (limited to 'vp8/common/codec_common_interface.h')
-rw-r--r-- | vp8/common/codec_common_interface.h | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/vp8/common/codec_common_interface.h b/vp8/common/codec_common_interface.h new file mode 100644 index 000000000..7881b0a41 --- /dev/null +++ b/vp8/common/codec_common_interface.h @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2010 The VP8 project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license and patent + * grant that can be found in the LICENSE file in the root of the source + * tree. All contributing project authors may be found in the AUTHORS + * file in the root of the source tree. + */ + +#ifndef CODEC_COMMON_INTERFACE_H +#define CODEC_COMMON_INTERFACE_H + +#define __export +#define _export +#define dll_export __declspec( dllexport ) +#define dll_import __declspec( dllimport ) + +// Playback ERROR Codes. +#define NO_DECODER_ERROR 0 +#define REMOTE_DECODER_ERROR -1 + +#define DFR_BAD_DCT_COEFF -100 +#define DFR_ZERO_LENGTH_FRAME -101 +#define DFR_FRAME_SIZE_INVALID -102 +#define DFR_OUTPUT_BUFFER_OVERFLOW -103 +#define DFR_INVALID_FRAME_HEADER -104 +#define FR_INVALID_MODE_TOKEN -110 +#define ETR_ALLOCATION_ERROR -200 +#define ETR_INVALID_ROOT_PTR -201 +#define SYNCH_ERROR -400 +#define BUFFER_UNDERFLOW_ERROR -500 +#define PB_IB_OVERFLOW_ERROR -501 + +// External error triggers +#define PB_HEADER_CHECKSUM_ERROR -601 +#define PB_DATA_CHECKSUM_ERROR -602 + +// DCT Error Codes +#define DDCT_EXPANSION_ERROR -700 +#define DDCT_INVALID_TOKEN_ERROR -701 + +// exception_errors +#define GEN_EXCEPTIONS -800 +#define EX_UNQUAL_ERROR -801 + +// Unrecoverable error codes +#define FATAL_PLAYBACK_ERROR -1000 +#define GEN_ERROR_CREATING_CDC -1001 +#define GEN_THREAD_CREATION_ERROR -1002 +#define DFR_CREATE_BMP_FAILED -1003 + +// YUV buffer configuration structure +typedef struct +{ + int y_width; + int y_height; + int y_stride; + + int uv_width; + int uv_height; + int uv_stride; + + unsigned char *y_buffer; + unsigned char *u_buffer; + unsigned char *v_buffer; + +} YUV_BUFFER_CONFIG; +typedef enum +{ + C_SET_KEY_FRAME, + C_SET_FIXED_Q, + C_SET_FIRSTPASS_FILE, + C_SET_EXPERIMENTAL_MIN, + C_SET_EXPERIMENTAL_MAX = C_SET_EXPERIMENTAL_MIN + 255, + C_SET_CHECKPROTECT, + C_SET_TESTMODE, + C_SET_INTERNAL_SIZE, + C_SET_RECOVERY_FRAME, + C_SET_REFERENCEFRAME, + C_SET_GOLDENFRAME + +#ifndef VP50_COMP_INTERFACE + // Specialist test facilities. +// C_VCAP_PARAMS, // DO NOT USE FOR NOW WITH VFW CODEC +#endif + +} C_SETTING; + +typedef unsigned long C_SET_VALUE; + + +#endif |