• About
    • About WebM
    • FAQ
    • Discuss
    • Supporters
  • Developer
    • Overview & Code Repos
    • Contribute
    • Submitting Patches
    • Code Reviews
    • Workflow
    • Conventions
    • Bug Reporting
    • Build Prerequisites
    • Repository Layout
    • Releases
    • Roadmap
    • Hardware
  • Docs
    • libvpx API
    • RFC 6386: VP8 Data Format
    • WebM Container Format
    • VP8 RTP Proposal (Draft)
    • Encoder Examples
    • Wiki
  • Tools
  • Licenses
  • Blog
  • Home >
  • Docs >
  • VP8 SDK
  • Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • File List
  • Globals

vpx/vpx_codec.h File Reference

Describes the codec algorithm interface to applications. More...

#include "vpx_integer.h"
#include <stddef.h>
#include <stdint.h>
#include <inttypes.h>

Go to the source code of this file.

Data Structures

struct   vpx_codec_ctx
  Codec context structure. More...
struct   vpx_codec_mmap
  Memory Map Entry. More...

Defines

#define  DEPRECATED
  Decorator indicating a function is deprecated.
#define  DECLSPEC_DEPRECATED
#define  UNUSED
  Decorator indicating a function is potentially unused.
#define  VPX_CODEC_ABI_VERSION
  Current ABI version number.
#define  VPX_CODEC_CAP_DECODER   0x1
#define  VPX_CODEC_CAP_ENCODER   0x2
#define  VPX_CODEC_CAP_XMA   0x4
#define  VPX_CODEC_USE_XMA   0x00000001
#define  VPX_VERSION_MAJOR(v)   ((v>>16)&0xff)
#define  VPX_VERSION_MINOR(v)   ((v>>8)&0xff)
#define  VPX_VERSION_PATCH(v)   ((v>>0)&0xff)
#define  vpx_codec_version_major()   ((vpx_codec_version()>>16)&0xff)
  Return the version major number.
#define  vpx_codec_version_minor()   ((vpx_codec_version()>>8)&0xff)
  Return the version minor number.
#define  vpx_codec_version_patch()   ((vpx_codec_version()>>0)&0xff)
  Return the version patch number.
#define  vpx_codec_control(ctx, id, data)
  vpx_codec_control wrapper macro
#define  VPX_CTRL_USE_TYPE(id, typ)
  vpx_codec_control type definition macro
#define  VPX_CTRL_USE_TYPE_DEPRECATED(id, typ)
  vpx_codec_control deprecated type definition macro
#define  VPX_CTRL_VOID(id)
  vpx_codec_control void type definition macro
#define  VPX_CODEC_MEM_ZERO   0x1
#define  VPX_CODEC_MEM_WRONLY   0x2
#define  VPX_CODEC_MEM_FAST   0x4

Typedefs

typedef long  vpx_codec_caps_t
  Codec capabilities bitfield.
typedef long  vpx_codec_flags_t
  Initialization-time Feature Enabling.
typedef struct vpx_codec_iface  vpx_codec_iface_t
  Codec interface structure.
typedef struct vpx_codec_priv  vpx_codec_priv_t
  Codec private data structure.
typedef const void *  vpx_codec_iter_t
  Iterator.
typedef struct vpx_codec_ctx  vpx_codec_ctx_t
  Codec context structure.
typedef struct vpx_codec_mmap  vpx_codec_mmap_t
  Memory Map Entry.

Enumerations

enum   vpx_codec_err_t {
  VPX_CODEC_OK, VPX_CODEC_ERROR, VPX_CODEC_MEM_ERROR, VPX_CODEC_ABI_MISMATCH,
  VPX_CODEC_INCAPABLE, VPX_CODEC_UNSUP_BITSTREAM, VPX_CODEC_UNSUP_FEATURE, VPX_CODEC_CORRUPT_FRAME,
  VPX_CODEC_INVALID_PARAM, VPX_CODEC_LIST_END
}
 

Algorithm return codes.

More...

Functions

int  vpx_codec_version (void)
  Return the version information (as an integer).
const char *  vpx_codec_version_str (void)
  Return the version information (as a string).
const char *  vpx_codec_version_extra_str (void)
  Return the version information (as a string).
const char *  vpx_codec_build_config (void)
  Return the build configuration.
const char *  vpx_codec_iface_name (vpx_codec_iface_t *iface)
  Return the name for a given interface.
const char *  vpx_codec_err_to_string (vpx_codec_err_t err)
  Convert error number to printable string.
const char *  vpx_codec_error (vpx_codec_ctx_t *ctx)
  Retrieve error synopsis for codec context.
const char *  vpx_codec_error_detail (vpx_codec_ctx_t *ctx)
  Retrieve detailed error information for codec context.
vpx_codec_err_t  vpx_codec_destroy (vpx_codec_ctx_t *ctx)
  Destroy a codec instance.
vpx_codec_caps_t  vpx_codec_get_caps (vpx_codec_iface_t *iface)
  Get the capabilities of an algorithm.
vpx_codec_err_t  vpx_codec_control_ (vpx_codec_ctx_t *ctx, int ctrl_id,...)
  Control algorithm.
vpx_codec_err_t  vpx_codec_get_mem_map (vpx_codec_ctx_t *ctx, vpx_codec_mmap_t *mmap, vpx_codec_iter_t *iter)
  Iterate over the list of segments to allocate.
vpx_codec_err_t  vpx_codec_set_mem_map (vpx_codec_ctx_t *ctx, vpx_codec_mmap_t *mmaps, unsigned int num_maps)
  Identify allocated segments to codec instance.

Detailed Description

Describes the codec algorithm interface to applications.

This file describes the interface between an application and a video codec algorithm.

An application instantiates a specific codec instance by using vpx_codec_init() and a pointer to the algorithm's interface structure:

     my_app.c:
       extern vpx_codec_iface_t my_codec;
       {
           vpx_codec_ctx_t algo;
           res = vpx_codec_init(&algo, &my_codec);
       }
     

Once initialized, the instance is manged using other functions from the vpx_codec_* family.


Define Documentation

#define VPX_CODEC_MEM_ZERO   0x1

Segment must be zeroed by allocation

#define VPX_CODEC_MEM_WRONLY   0x2

Segment need not be readable

#define VPX_CODEC_MEM_FAST   0x4

Place in fast memory, if available


Generated on Mon Jan 28 14:14:22 2013 for WebM VP8 Codec SDK by  doxygen 1.6.3
About
  • About WebM
  • FAQ
  • Discuss
  • Supporters
More
  • Tools
  • Hardware
  • Licenses
  • Downloads
Developer
  • Overview
  • Contribute
  • Submitting Patches
  • Code Reviews
  • Workflow
  • Conventions
  • Bug Reporting
  • Build Prerequisites
  • Repository Layout
  • Releases
  • Roadmap
Docs
  • libvpx API
  • RFC 6386: VP8 Data Format
  • WebM Container Format
  • VP8 RTP Proposal (Draft)
  • Encoder Examples
  • Wiki
Copyright 2010 - 2013
The WebM Project
HTML5 Powered with CSS3 / Styling, and Semantics
Follow @WebM
webmaster@webmproject.org