libavcodec/vp56.h File Reference

VP5 and VP6 compatible video decoder (common features). More...

#include "vp56data.h"
#include "dsputil.h"
#include "mpegvideo.h"
#include "bytestream.h"

Go to the source code of this file.

Data Structures

struct  vp56_range_coder_t
struct  vp56_ref_dc_t
struct  vp56_mv
struct  vp56_macroblock_t
struct  vp56_model_t
struct  vp56_context

Typedefs

typedef struct vp56_context vp56_context_t
typedef struct vp56_mv vp56_mv_t
typedef void(* vp56_parse_vector_adjustment_t )(vp56_context_t *s, vp56_mv_t *vect)
typedef int(* vp56_adjust_t )(int v, int t)
typedef void(* vp56_filter_t )(vp56_context_t *s, uint8_t *dst, uint8_t *src, int offset1, int offset2, int stride, vp56_mv_t mv, int mask, int select, int luma)
typedef void(* vp56_parse_coeff_t )(vp56_context_t *s)
typedef void(* vp56_default_models_init_t )(vp56_context_t *s)
typedef void(* vp56_parse_vector_models_t )(vp56_context_t *s)
typedef void(* vp56_parse_coeff_models_t )(vp56_context_t *s)
typedef int(* vp56_parse_header_t )(vp56_context_t *s, const uint8_t *buf, int buf_size, int *golden_frame)

Functions

void vp56_init (AVCodecContext *avctx, int flip, int has_alpha)
int vp56_free (AVCodecContext *avctx)
void vp56_init_dequant (vp56_context_t *s, int quantizer)
int vp56_decode_frame (AVCodecContext *avctx, void *data, int *data_size, const uint8_t *buf, int buf_size)
static void vp56_init_range_decoder (vp56_range_coder_t *c, const uint8_t *buf, int buf_size)
 vp56 specific range coder implementation
static int vp56_rac_get_prob (vp56_range_coder_t *c, uint8_t prob)
static int vp56_rac_get (vp56_range_coder_t *c)
static int vp56_rac_gets (vp56_range_coder_t *c, int bits)
static int vp56_rac_gets_nn (vp56_range_coder_t *c, int bits)
static int vp56_rac_get_tree (vp56_range_coder_t *c, const vp56_tree_t *tree, const uint8_t *probs)


Detailed Description

VP5 and VP6 compatible video decoder (common features).

Copyright (C) 2006 Aurelien Jacobs <aurel@gnuage.org>

This file is part of FFmpeg.

FFmpeg is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

FFmpeg is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with FFmpeg; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Definition in file vp56.h.


Typedef Documentation

typedef int(* vp56_adjust_t)(int v, int t)

Definition at line 38 of file vp56.h.

typedef struct vp56_context vp56_context_t

Definition at line 33 of file vp56.h.

Definition at line 43 of file vp56.h.

typedef void(* vp56_filter_t)(vp56_context_t *s, uint8_t *dst, uint8_t *src, int offset1, int offset2, int stride, vp56_mv_t mv, int mask, int select, int luma)

Definition at line 39 of file vp56.h.

typedef struct vp56_mv vp56_mv_t

Definition at line 34 of file vp56.h.

Definition at line 45 of file vp56.h.

typedef void(* vp56_parse_coeff_t)(vp56_context_t *s)

Definition at line 42 of file vp56.h.

typedef int(* vp56_parse_header_t)(vp56_context_t *s, const uint8_t *buf, int buf_size, int *golden_frame)

Definition at line 46 of file vp56.h.

Definition at line 36 of file vp56.h.

Definition at line 44 of file vp56.h.


Function Documentation

int vp56_decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
const uint8_t buf,
int  buf_size 
)

Definition at line 497 of file vp56.c.

int vp56_free ( AVCodecContext avctx  ) 

Definition at line 686 of file vp56.c.

void vp56_init ( AVCodecContext avctx,
int  flip,
int  has_alpha 
)

Definition at line 646 of file vp56.c.

Referenced by vp5_decode_init(), and vp6_decode_init().

void vp56_init_dequant ( vp56_context_t s,
int  quantizer 
)

Definition at line 31 of file vp56.c.

Referenced by vp5_parse_header(), and vp6_parse_header().

static void vp56_init_range_decoder ( vp56_range_coder_t c,
const uint8_t buf,
int  buf_size 
) [inline, static]

vp56 specific range coder implementation

Definition at line 182 of file vp56.h.

Referenced by vp5_parse_header(), and vp6_parse_header().

static int vp56_rac_get ( vp56_range_coder_t c  )  [inline, static]

static int vp56_rac_get_prob ( vp56_range_coder_t c,
uint8_t  prob 
) [inline, static]

static int vp56_rac_get_tree ( vp56_range_coder_t c,
const vp56_tree_t tree,
const uint8_t probs 
) [inline, static]

static int vp56_rac_gets ( vp56_range_coder_t c,
int  bits 
) [inline, static]

static int vp56_rac_gets_nn ( vp56_range_coder_t c,
int  bits 
) [inline, static]


Generated on Fri Apr 23 15:12:02 2010 for ffmpeg by  doxygen 1.5.6