libavcodec/ituh263dec.c File Reference

h263 decoder. More...

#include <limits.h>
#include "dsputil.h"
#include "avcodec.h"
#include "mpegvideo.h"
#include "h263.h"
#include "mathops.h"
#include "unary.h"
#include "flv.h"
#include "mpeg4video.h"

Go to the source code of this file.

Defines

#define MV_VLC_BITS   9
#define H263_MBTYPE_B_VLC_BITS   6
#define CBPC_B_VLC_BITS   3

Functions

void ff_h263_show_pict_info (MpegEncContext *s)
 Print picture info if FF_DEBUG_PICT_INFO is set.
void h263_decode_init_vlc (MpegEncContext *s)
int ff_h263_decode_mba (MpegEncContext *s)
static int h263_decode_gob_header (MpegEncContext *s)
 decodes the group of blocks header or slice header.
const uint8_t * ff_h263_find_resync_marker (const uint8_t *restrict p, const uint8_t *restrict end)
 finds the next resync_marker
int ff_h263_resync (MpegEncContext *s)
 decodes the group of blocks / video packet header.
int h263_decode_motion (MpegEncContext *s, int pred, int f_code)
static int h263p_decode_umotion (MpegEncContext *s, int pred)
static void preview_obmc (MpegEncContext *s)
 read the next MVs for OBMC.
static void h263_decode_dquant (MpegEncContext *s)
static int h263_decode_block (MpegEncContext *s, DCTELEM *block, int n, int coded)
static int h263_skip_b_part (MpegEncContext *s, int cbp)
static int h263_get_modb (GetBitContext *gb, int pb_frame, int *cbpb)
int ff_h263_decode_mb (MpegEncContext *s, DCTELEM block[6][64])
int h263_decode_picture_header (MpegEncContext *s)

Variables

static const int h263_mb_type_b_map [15]
VLC ff_h263_intra_MCBPC_vlc
VLC ff_h263_inter_MCBPC_vlc
VLC ff_h263_cbpy_vlc
static VLC mv_vlc
static VLC h263_mbtype_b_vlc
static VLC cbpc_b_vlc


Detailed Description

h263 decoder.

Definition in file ituh263dec.c.


Define Documentation

#define CBPC_B_VLC_BITS   3

Definition at line 51 of file ituh263dec.c.

Referenced by ff_h263_decode_mb(), and h263_decode_init_vlc().

#define H263_MBTYPE_B_VLC_BITS   6

Definition at line 50 of file ituh263dec.c.

Referenced by ff_h263_decode_mb(), and h263_decode_init_vlc().

#define MV_VLC_BITS   9


Function Documentation

int ff_h263_decode_mb ( MpegEncContext s,
DCTELEM  block[6][64] 
)

Definition at line 601 of file ituh263dec.c.

Referenced by ff_h263_decode_init(), and rv10_decode_packet().

int ff_h263_decode_mba ( MpegEncContext s  ) 

const uint8_t* ff_h263_find_resync_marker ( const uint8_t *restrict  p,
const uint8_t *restrict  end 
)

finds the next resync_marker

Parameters:
p pointer to buffer to scan
end pointer to the end of the buffer
Returns:
pointer to the next resync_marker, or end if none was found

Definition at line 210 of file ituh263dec.c.

int ff_h263_resync ( MpegEncContext s  ) 

decodes the group of blocks / video packet header.

Returns:
bit position of the resync_marker, or <0 if none was found

Definition at line 229 of file ituh263dec.c.

Referenced by ff_h263_decode_frame().

void ff_h263_show_pict_info ( MpegEncContext s  ) 

Print picture info if FF_DEBUG_PICT_INFO is set.

Definition at line 71 of file ituh263dec.c.

Referenced by ff_intel_h263_decode_picture_header(), and h263_decode_picture_header().

static int h263_decode_block ( MpegEncContext s,
DCTELEM block,
int  n,
int  coded 
) [static]

Definition at line 441 of file ituh263dec.c.

Referenced by ff_h263_decode_mb(), and h263_skip_b_part().

static void h263_decode_dquant ( MpegEncContext s  )  [static]

Definition at line 428 of file ituh263dec.c.

Referenced by ff_h263_decode_mb().

static int h263_decode_gob_header ( MpegEncContext s  )  [static]

decodes the group of blocks header or slice header.

Returns:
<0 if an error occurred

Definition at line 153 of file ituh263dec.c.

Referenced by ff_h263_resync().

void h263_decode_init_vlc ( MpegEncContext s  ) 

Definition at line 103 of file ituh263dec.c.

Referenced by ff_h263_decode_init(), and rv10_decode_init().

int h263_decode_motion ( MpegEncContext s,
int  pred,
int  f_code 
)

int h263_decode_picture_header ( MpegEncContext s  ) 

Definition at line 867 of file ituh263dec.c.

Referenced by ff_h263_decode_frame().

static int h263_get_modb ( GetBitContext gb,
int  pb_frame,
int *  cbpb 
) [static]

Definition at line 583 of file ituh263dec.c.

Referenced by ff_h263_decode_mb().

static int h263_skip_b_part ( MpegEncContext s,
int  cbp 
) [static]

Definition at line 564 of file ituh263dec.c.

Referenced by ff_h263_decode_mb().

static int h263p_decode_umotion ( MpegEncContext s,
int  pred 
) [static]

Definition at line 310 of file ituh263dec.c.

Referenced by ff_h263_decode_mb(), and preview_obmc().

static void preview_obmc ( MpegEncContext s  )  [static]

read the next MVs for OBMC.

yes this is a ugly hack, feel free to send a patch :)

Definition at line 336 of file ituh263dec.c.

Referenced by ff_h263_decode_mb().


Variable Documentation

VLC cbpc_b_vlc [static]

Definition at line 98 of file ituh263dec.c.

Definition at line 95 of file ituh263dec.c.

Referenced by mpeg4_decode_mb(), mpeg4_decode_partition_b(), and msmpeg4v12_decode_mb().

Definition at line 94 of file ituh263dec.c.

Referenced by mpeg4_decode_mb(), mpeg4_decode_partition_a(), and msmpeg4v12_decode_mb().

Definition at line 93 of file ituh263dec.c.

Referenced by mpeg4_decode_mb(), mpeg4_decode_partition_a(), and msmpeg4v12_decode_mb().

const int h263_mb_type_b_map[15] [static]

Definition at line 97 of file ituh263dec.c.

VLC mv_vlc [static]

Definition at line 96 of file ituh263dec.c.


Generated on Fri Oct 26 02:38:16 2012 for FFmpeg by  doxygen 1.5.8