WebM Codec SDK: WebM VP8/VP9 Decoder

WebM Codec SDK

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

Files | Data Structures | Typedefs | Enumerations
WebM VP8/VP9 Decoder
Supported Codecs » VP8

## Files
file | vp8dx.h
| Provides definitions for using VP8 or VP9 within the vpx Decoder interface.

## Data Structures
struct | vpx_decrypt_init
| Structure to hold decryption state. More...

## Typedefs
typedef void(* | vpx_decrypt_cb) (void *decrypt_state, const unsigned char *input, unsigned char *output, int count)
typedef struct vpx_decrypt_init | vpx_decrypt_init
| Structure to hold decryption state. More...
typedef vpx_decrypt_init | vp8_decrypt_init
| A deprecated alias for vpx_decrypt_init.

## Enumerations
enum | vp8_dec_control_id { VP8D_GET_LAST_REF_UPDATES = VP8_DECODER_CTRL_ID_START, VP8D_GET_FRAME_CORRUPTED, VP8D_GET_LAST_REF_USED, VPXD_SET_DECRYPTOR, VP8D_SET_DECRYPTOR = VPXD_SET_DECRYPTOR, VP9D_GET_FRAME_SIZE, VP9D_GET_DISPLAY_SIZE, VP9D_GET_BIT_DEPTH, VP9_SET_BYTE_ALIGNMENT, VP9_INVERT_TILE_DECODE_ORDER, VP9_SET_SKIP_LOOP_FILTER, VP8_DECODER_CTRL_ID_MAX }
| VP8 decoder control functions. More...

## Algorithm interface for VP8
This interface provides the capability to decode VP8 streams.
vpx_codec_iface_t | vpx_codec_vp8_dx_algo
vpx_codec_iface_t * | vpx_codec_vp8_dx (void)

## Algorithm interface for VP9
This interface provides the capability to decode VP9 streams.
vpx_codec_iface_t | vpx_codec_vp9_dx_algo
vpx_codec_iface_t * | vpx_codec_vp9_dx (void)

## Algorithm interface for VP10
This interface provides the capability to decode VP10 streams.
vpx_codec_iface_t | vpx_codec_vp10_dx_algo
vpx_codec_iface_t * | vpx_codec_vp10_dx (void)

## Detailed Description

## Typedef Documentation

typedef void(* vpx_decrypt_cb) (void *decrypt_state, const unsigned char *input, unsigned char *output, int count)

Decrypt n bytes of data from input -> output, using the decrypt_state passed in VPXD_SET_DECRYPTOR.

typedef struct vpx_decrypt_init vpx_decrypt_init

Structure to hold decryption state.

Defines a structure to hold the decryption state and access function.

## Enumeration Type Documentation

enum vp8_dec_control_id

VP8 decoder control functions.

This set of macros define the control functions available for the VP8 decoder interface.

See also
  vpx_codec_control

Enumerator
VP8D_GET_LAST_REF_UPDATES | control function to get info on which reference frames were updated by the last decode
VP8D_GET_FRAME_CORRUPTED | check if the indicated frame is corrupted
VP8D_GET_LAST_REF_USED | control function to get info on which reference frames were used by the last decode
VPXD_SET_DECRYPTOR | decryption function to decrypt encoded buffer data immediately before decoding. Takes a vpx_decrypt_init, which contains a callback function and opaque context pointer.
VP9D_GET_FRAME_SIZE | control function to get the dimensions that the current frame is decoded at. This may be different to the intended display size for the frame as specified in the wrapper or frame header (see VP9D_GET_DISPLAY_SIZE).
VP9D_GET_DISPLAY_SIZE | control function to get the current frame's intended display dimensions (as specified in the wrapper or frame header). This may be different to the decoded dimensions of this frame (see VP9D_GET_FRAME_SIZE).
VP9D_GET_BIT_DEPTH | control function to get the bit depth of the stream.
VP9_SET_BYTE_ALIGNMENT | control function to set the byte alignment of the planes in the reference buffers. Valid values are power of 2, from 32 to 1024. A value of 0 sets legacy alignment. I.e. Y plane is aligned to 32 bytes, U plane directly follows Y plane, and V plane directly follows U plane. Default value is 0.
VP9_INVERT_TILE_DECODE_ORDER | control function to invert the decoding order to from right to left. The function is used in a test to confirm the decoding independence of tile columns. The function may be used in application where this order of decoding is desired. TODO(yaowu): Rework the unit test that uses this control, and in a future release, this test-only control shall be removed.
VP9_SET_SKIP_LOOP_FILTER | control function to set the skip loop filter flag. Valid values are integers. The decoder will skip the loop filter when its value is set to nonzero. If the loop filter is skipped the decoder may accumulate decode artifacts. The default value is 0.