#include "libavutil/avassert.h"
#include "dsputil.h"
#include "avcodec.h"
#include "mpegvideo.h"
#include "h263.h"
#include "h261.h"
#include "h261data.h"
Go to the source code of this file.
Defines | |
#define | H261_MBA_VLC_BITS 9 |
#define | H261_MTYPE_VLC_BITS 6 |
#define | H261_MV_VLC_BITS 7 |
#define | H261_CBP_VLC_BITS 9 |
#define | TCOEFF_VLC_BITS 9 |
#define | MBA_STUFFING 33 |
#define | MBA_STARTCODE 34 |
Functions | |
static int | h261_decode_block (H261Context *h, DCTELEM *block, int n, int coded) |
Decode a macroblock. | |
static av_cold void | h261_decode_init_vlc (H261Context *h) |
static av_cold int | h261_decode_init (AVCodecContext *avctx) |
static int | h261_decode_gob_header (H261Context *h) |
Decode the group of blocks header or slice header. | |
static int | ff_h261_resync (H261Context *h) |
Decode the group of blocks / video packet header. | |
static int | h261_decode_mb_skipped (H261Context *h, int mba1, int mba2) |
Decode skipped macroblocks. | |
static int | decode_mv_component (GetBitContext *gb, int v) |
static int | h261_decode_mb (H261Context *h) |
static int | h261_decode_picture_header (H261Context *h) |
Decode the H.261 picture header. | |
static int | h261_decode_gob (H261Context *h) |
static int | get_consumed_bytes (MpegEncContext *s, int buf_size) |
returns the number of bytes consumed for building the current frame | |
static int | h261_decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt) |
static av_cold int | h261_decode_end (AVCodecContext *avctx) |
Variables | |
uint8_t | ff_h261_rl_table_store [2][2 *MAX_RUN+MAX_LEVEL+3] |
static VLC | h261_mba_vlc |
static VLC | h261_mtype_vlc |
static VLC | h261_mv_vlc |
static VLC | h261_cbp_vlc |
AVCodec | ff_h261_decoder |
Definition in file h261dec.c.
#define H261_CBP_VLC_BITS 9 |
Definition at line 39 of file h261dec.c.
Referenced by h261_decode_init_vlc(), and h261_decode_mb().
#define H261_MBA_VLC_BITS 9 |
Definition at line 36 of file h261dec.c.
Referenced by h261_decode_init_vlc(), and h261_decode_mb().
#define H261_MTYPE_VLC_BITS 6 |
Definition at line 37 of file h261dec.c.
Referenced by h261_decode_init_vlc(), and h261_decode_mb().
#define H261_MV_VLC_BITS 7 |
Definition at line 38 of file h261dec.c.
Referenced by decode_mv_component(), and h261_decode_init_vlc().
#define MBA_STARTCODE 34 |
#define MBA_STUFFING 33 |
#define TCOEFF_VLC_BITS 9 |
static int decode_mv_component | ( | GetBitContext * | gb, | |
int | v | |||
) | [static] |
static int ff_h261_resync | ( | H261Context * | h | ) | [static] |
Decode the group of blocks / video packet header.
Definition at line 157 of file h261dec.c.
Referenced by h261_decode_frame().
static int get_consumed_bytes | ( | MpegEncContext * | s, | |
int | buf_size | |||
) | [static] |
returns the number of bytes consumed for building the current frame
Definition at line 545 of file h261dec.c.
Referenced by decode_frame(), ff_h263_decode_frame(), and h261_decode_frame().
static int h261_decode_block | ( | H261Context * | h, | |
DCTELEM * | block, | |||
int | n, | |||
int | coded | |||
) | [static] |
Decode a macroblock.
Definition at line 369 of file h261dec.c.
Referenced by h261_decode_mb().
static av_cold int h261_decode_end | ( | AVCodecContext * | avctx | ) | [static] |
static int h261_decode_frame | ( | AVCodecContext * | avctx, | |
void * | data, | |||
int * | data_size, | |||
AVPacket * | avpkt | |||
) | [static] |
static int h261_decode_gob | ( | H261Context * | h | ) | [static] |
static int h261_decode_gob_header | ( | H261Context * | h | ) | [static] |
Decode the group of blocks header or slice header.
Definition at line 104 of file h261dec.c.
Referenced by ff_h261_resync().
static av_cold int h261_decode_init | ( | AVCodecContext * | avctx | ) | [static] |
static av_cold void h261_decode_init_vlc | ( | H261Context * | h | ) | [static] |
static int h261_decode_mb | ( | H261Context * | h | ) | [static] |
static int h261_decode_mb_skipped | ( | H261Context * | h, | |
int | mba1, | |||
int | mba2 | |||
) | [static] |
Decode skipped macroblocks.
Definition at line 198 of file h261dec.c.
Referenced by h261_decode_gob().
static int h261_decode_picture_header | ( | H261Context * | h | ) | [static] |
Decode the H.261 picture header.
Definition at line 451 of file h261dec.c.
Referenced by h261_decode_frame().
Initial value:
{ .name = "h261", .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_H261, .priv_data_size = sizeof(H261Context), .init = h261_decode_init, .close = h261_decode_end, .decode = h261_decode_frame, .capabilities = CODEC_CAP_DR1, .max_lowres = 3, .long_name = NULL_IF_CONFIG_SMALL("H.261"), }
uint8_t ff_h261_rl_table_store[2][2 *MAX_RUN+MAX_LEVEL+3] |
VLC h261_cbp_vlc [static] |
VLC h261_mba_vlc [static] |
VLC h261_mtype_vlc [static] |
VLC h261_mv_vlc [static] |