93 #ifndef AOM_AOM_AOM_CODEC_H_ 94 #define AOM_AOM_AOM_CODEC_H_ 101 #include "aom/aom_integer.h" 104 #ifndef AOM_DEPRECATED 105 #if defined(__GNUC__) && __GNUC__ 106 #define AOM_DEPRECATED __attribute__((deprecated)) 107 #elif defined(_MSC_VER) 108 #define AOM_DEPRECATED 110 #define AOM_DEPRECATED 114 #ifndef AOM_DECLSPEC_DEPRECATED 115 #if defined(__GNUC__) && __GNUC__ 116 #define AOM_DECLSPEC_DEPRECATED 117 #elif defined(_MSC_VER) 119 #define AOM_DECLSPEC_DEPRECATED __declspec(deprecated) 121 #define AOM_DECLSPEC_DEPRECATED 127 #elif defined(__GNUC__) || defined(__clang__) 128 #define AOM_UNUSED __attribute__((unused)) 134 #ifndef ATTRIBUTE_PACKED 135 #if defined(__GNUC__) && __GNUC__ 136 #define ATTRIBUTE_PACKED __attribute__((packed)) 137 #elif defined(_MSC_VER) 138 #define ATTRIBUTE_PACKED 140 #define ATTRIBUTE_PACKED 152 #define AOM_CODEC_ABI_VERSION (7 + AOM_IMAGE_ABI_VERSION) 218 #define AOM_CODEC_CAP_DECODER 0x1 219 #define AOM_CODEC_CAP_ENCODER 0x2 228 typedef long aom_codec_flags_t; 271 #define AOM_FRAME_IS_KEY 0x1 274 #define AOM_FRAME_IS_DROPPABLE 0x2 276 #define AOM_FRAME_IS_INTRAONLY 0x10 278 #define AOM_FRAME_IS_SWITCH 0x20 280 #define AOM_FRAME_IS_ERROR_RESILIENT 0x40 282 #define AOM_FRAME_IS_DELAYED_RANDOM_ACCESS_POINT 0x80 356 #define aom_codec_version_major() ((aom_codec_version() >> 16) & 0xff) 359 #define aom_codec_version_minor() ((aom_codec_version() >> 8) & 0xff) 362 #define aom_codec_version_patch() ((aom_codec_version() >> 0) & 0xff) 520 #define AOM_CODEC_CONTROL_TYPECHECKED(ctx, id, data) \ 521 aom_codec_control_typechecked_##id(ctx, id, data) 529 #define AOM_CTRL_USE_TYPE(id, typ) \ 530 static aom_codec_err_t aom_codec_control_typechecked_##id( \ 531 aom_codec_ctx_t *, int, typ) AOM_UNUSED; \ 532 static aom_codec_err_t aom_codec_control_typechecked_##id( \ 533 aom_codec_ctx_t *ctx, int ctrl, typ data) { \ 534 return aom_codec_control(ctx, ctrl, data); \ 536 typedef typ aom_codec_control_type_##id; 541 OBU_SEQUENCE_HEADER = 1,
542 OBU_TEMPORAL_DELIMITER = 2,
543 OBU_FRAME_HEADER = 3,
547 OBU_REDUNDANT_FRAME_HEADER = 7,
554 OBU_METADATA_TYPE_AOM_RESERVED_0 = 0,
555 OBU_METADATA_TYPE_HDR_CLL = 1,
556 OBU_METADATA_TYPE_HDR_MDCV = 2,
557 OBU_METADATA_TYPE_SCALABILITY = 3,
558 OBU_METADATA_TYPE_ITUT_T35 = 4,
559 OBU_METADATA_TYPE_TIMECODE = 5,
572 #endif // AOM_AOM_AOM_CODEC_H_ union aom_codec_ctx::@0 config
Operation completed without error.
Definition: aom_codec.h:157
Encoded bitstream uses an unsupported feature.
Definition: aom_codec.h:185
int64_t aom_codec_pts_t
Time Stamp Type.
Definition: aom_codec.h:235
The coded data for this stream is corrupt or incomplete.
Definition: aom_codec.h:195
Encoder configuration structure.
Definition: aom_encoder.h:367
aom_codec_err_t err
Definition: aom_codec.h:301
const char * name
Definition: aom_codec.h:299
Describes the aom image descriptor and associated operations.
aom_codec_iface_t * iface
Definition: aom_codec.h:300
Codec context structure.
Definition: aom_codec.h:298
aom_codec_caps_t aom_codec_get_caps(aom_codec_iface_t *iface)
Get the capabilities of an algorithm.
const char * err_detail
Definition: aom_codec.h:302
OBU_METADATA_TYPE
OBU metadata types.
Definition: aom_codec.h:554
Definition: aom_codec.h:319
const struct aom_codec_iface aom_codec_iface_t
Codec interface structure.
Definition: aom_codec.h:254
const char * aom_codec_iface_name(aom_codec_iface_t *iface)
Return the name for a given interface.
aom_codec_priv_t * priv
Definition: aom_codec.h:311
aom_codec_err_t aom_codec_destroy(aom_codec_ctx_t *ctx)
Destroy a codec instance.
const char * aom_codec_err_to_string(aom_codec_err_t err)
Convert error number to printable string.
Algorithm does not have required capability.
Definition: aom_codec.h:169
Memory operation failed.
Definition: aom_codec.h:163
Definition: aom_codec.h:321
enum aom_superblock_size aom_superblock_size_t
Superblock size selection.
ABI version mismatch.
Definition: aom_codec.h:166
const char * aom_obu_type_to_string(OBU_TYPE type)
Returns string representation of OBU_TYPE.
Unspecified error.
Definition: aom_codec.h:160
aom_superblock_size
Superblock size selection.
Definition: aom_codec.h:330
Initialization Configurations.
Definition: aom_decoder.h:91
An iterator reached the end of list.
Definition: aom_codec.h:205
OBU_TYPE
OBU types.
Definition: aom_codec.h:541
int aom_codec_version(void)
Return the version information (as an integer)
const char * aom_codec_build_config(void)
Return the build configuration.
The given bitstream is not supported.
Definition: aom_codec.h:176
struct aom_codec_ctx aom_codec_ctx_t
Codec context structure.
uint32_t aom_codec_frame_flags_t
Compressed Frame Flags.
Definition: aom_codec.h:270
const char * aom_codec_version_str(void)
Return the version information (as a string)
aom_codec_err_t aom_codec_set_option(aom_codec_ctx_t *ctx, const char *name, const char *value)
Key & Value API.
Definition: aom_codec.h:331
#define ATTRIBUTE_PACKED
Decorator indicating that given struct/union/enum is packed.
Definition: aom_codec.h:140
const void * aom_codec_iter_t
Iterator.
Definition: aom_codec.h:288
long aom_codec_flags_t
Initialization-time Feature Enabling.
Definition: aom_codec.h:228
enum aom_bit_depth aom_bit_depth_t
Bit depth for codecThis enumeration determines the bit depth of the codec.
Definition: aom_codec.h:332
aom_codec_err_t
Algorithm return codes.
Definition: aom_codec.h:155
const char * aom_codec_error(aom_codec_ctx_t *ctx)
Retrieve error synopsis for codec context.
struct aom_codec_priv aom_codec_priv_t
Codec private data structure.
Definition: aom_codec.h:261
aom_codec_flags_t init_flags
Definition: aom_codec.h:303
const struct aom_codec_dec_cfg * dec
Definition: aom_codec.h:306
Definition: aom_codec.h:320
An application-supplied parameter is not valid.
Definition: aom_codec.h:200
const char * aom_codec_error_detail(aom_codec_ctx_t *ctx)
Retrieve detailed error information for codec context.
long aom_codec_caps_t
Codec capabilities bitfield.
Definition: aom_codec.h:217
Definition: aom_codec.h:333
const char * aom_codec_version_extra_str(void)
Return the version information (as a string)
aom_bit_depth
Bit depth for codecThis enumeration determines the bit depth of the codec.
Definition: aom_codec.h:318
aom_codec_err_t aom_codec_control(aom_codec_ctx_t *ctx, int ctrl_id,...)
Algorithm Control.