#include "dsputil.h"
#include "avcodec.h"
#include "mpegvideo.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) | 
| decodes 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) | 
| decodes the group of blocks header or slice header.   | |
| static int | ff_h261_resync (H261Context *h) | 
| decodes the group of blocks / video packet header.   | |
| static int | h261_decode_mb_skipped (H261Context *h, int mba1, int mba2) | 
| decodes 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) | 
| decodes the H261 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, const uint8_t *buf, int buf_size) | 
| 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 | h261_decoder | 
Definition in file h261dec.c.
| #define H261_CBP_VLC_BITS 9 | 
Definition at line 37 of file h261dec.c.
Referenced by h261_decode_init_vlc(), and h261_decode_mb().
| #define H261_MBA_VLC_BITS 9 | 
Definition at line 34 of file h261dec.c.
Referenced by h261_decode_init_vlc(), and h261_decode_mb().
| #define H261_MTYPE_VLC_BITS 6 | 
Definition at line 35 of file h261dec.c.
Referenced by h261_decode_init_vlc(), and h261_decode_mb().
| #define H261_MV_VLC_BITS 7 | 
Definition at line 36 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] | 
        
decodes the group of blocks / video packet header.
Definition at line 155 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 540 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] | 
        
decodes a macroblock
Definition at line 364 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, | |||
| const uint8_t * | buf, | |||
| int | buf_size | |||
| ) |  [static] | 
        
| static int h261_decode_gob | ( | H261Context * | h | ) |  [static] | 
        
| static int h261_decode_gob_header | ( | H261Context * | h | ) |  [static] | 
        
decodes the group of blocks header or slice header.
Definition at line 102 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] | 
        
decodes skipped macroblocks
Definition at line 196 of file h261dec.c.
Referenced by h261_decode_gob().
| static int h261_decode_picture_header | ( | H261Context * | h | ) |  [static] | 
        
decodes the H261 picture header.
Definition at line 446 of file h261dec.c.
Referenced by h261_decode_frame().
| uint8_t ff_h261_rl_table_store[2][2 *MAX_RUN+MAX_LEVEL+3] | 
VLC h261_cbp_vlc [static]           | 
        
Initial value:
 {
    "h261",
    CODEC_TYPE_VIDEO,
    CODEC_ID_H261,
    sizeof(H261Context),
    h261_decode_init,
    NULL,
    h261_decode_end,
    h261_decode_frame,
    CODEC_CAP_DR1,
    .long_name = NULL_IF_CONFIG_SMALL("H.261"),
}
VLC h261_mba_vlc [static]           | 
        
VLC h261_mtype_vlc [static]           | 
        
VLC h261_mv_vlc [static]           | 
        
 1.5.8