#include <limits.h>
#include "dsputil.h"
#include "avcodec.h"
#include "mpegvideo.h"
#include "h263data.h"
#include "mpeg4data.h"
Go to the source code of this file.
Definition in file h263.c.
#define CBPC_B_VLC_BITS 3 |
Definition at line 55 of file h263.c.
Referenced by ff_h263_decode_mb(), and h263_decode_init_vlc().
#define CBPY_VLC_BITS 6 |
Definition at line 48 of file h263.c.
Referenced by ff_h263_decode_mb(), ff_mpeg4_decode_mb(), ff_msmpeg4_decode_init(), h263_decode_init_vlc(), mpeg4_decode_partition_b(), msmpeg4v12_decode_mb(), and preview_obmc().
#define DC_VLC_BITS 9 |
Definition at line 50 of file h263.c.
Referenced by decode_dc(), ff_msmpeg4_decode_init(), h263_decode_init_vlc(), init_vlcs(), mpeg4_decode_dc(), msmpeg4_decode_dc(), rv10_decode_init(), rv_decode_dc(), vc1_decode_i_block(), vc1_decode_i_block_adv(), vc1_decode_intra_block(), and x8_get_dc_rlf().
#define H263_MBTYPE_B_VLC_BITS 6 |
Definition at line 54 of file h263.c.
Referenced by ff_h263_decode_mb(), and h263_decode_init_vlc().
#define INTER_MCBPC_VLC_BITS 7 |
Definition at line 47 of file h263.c.
Referenced by ff_h263_decode_mb(), ff_mpeg4_decode_mb(), h263_decode_init_vlc(), mpeg4_decode_partition_a(), and preview_obmc().
#define INTRA_MCBPC_VLC_BITS 6 |
Definition at line 46 of file h263.c.
Referenced by ff_h263_decode_mb(), ff_mpeg4_decode_mb(), h263_decode_init_vlc(), and mpeg4_decode_partition_a().
#define IS_3IV1 0 |
Definition at line 119 of file h263.c.
Referenced by decode_vop_header(), ff_mpeg4_pred_dc(), mpeg4_decode_block(), and mpeg4_decode_dc().
#define MB_TYPE_B_VLC_BITS 4 |
Definition at line 52 of file h263.c.
Referenced by ff_mpeg4_decode_mb(), and h263_decode_init_vlc().
#define MV_VLC_BITS 9 |
Definition at line 49 of file h263.c.
Referenced by ff_msmpeg4_decode_init(), ff_msmpeg4_decode_motion(), h263_decode_init_vlc(), h263_decode_motion(), init_vlcs(), and mpeg_decode_motion().
#define SPRITE_TRAJ_VLC_BITS 6 |
Definition at line 51 of file h263.c.
Referenced by h263_decode_init_vlc(), and mpeg4_decode_sprite_trajectory().
#define tab_bias (tab_size/2) |
Definition at line 591 of file h263.c.
Referenced by ff_mpeg4_init_direct_mv(), and ff_mpeg4_set_one_direct_mv().
#define tab_size ((signed)(sizeof(s->direct_scale_mv[0])/sizeof(int16_t))) |
Definition at line 590 of file h263.c.
Referenced by ff_mpeg4_init_direct_mv(), and ff_mpeg4_set_one_direct_mv().
static int decode_user_data | ( | MpegEncContext * | s, | |
GetBitContext * | gb | |||
) | [static] |
decodes the user data stuff in the header.
allso inits divx/xvid/lavc_version/build
Definition at line 5733 of file h263.c.
Referenced by ff_mpeg4_decode_picture_header().
static int decode_vol_header | ( | MpegEncContext * | s, | |
GetBitContext * | gb | |||
) | [static] |
static int decode_vop_header | ( | MpegEncContext * | s, | |
GetBitContext * | gb | |||
) | [static] |
int ff_h263_decode_mb | ( | MpegEncContext * | s, | |
DCTELEM | block[6][64] | |||
) |
Definition at line 3886 of file h263.c.
Referenced by ff_h263_decode_init(), and rv10_decode_packet().
int ff_h263_decode_mba | ( | MpegEncContext * | s | ) |
Definition at line 2965 of file h263.c.
Referenced by h263_decode_gob_header(), h263_decode_picture_header(), and rv20_decode_picture_header().
void ff_h263_encode_mba | ( | MpegEncContext * | s | ) |
int ff_h263_get_gob_height | ( | MpegEncContext * | s | ) |
Get the GOB height based on picture height.
Definition at line 2956 of file h263.c.
Referenced by encode_thread(), and ff_h263_decode_frame().
void ff_h263_loop_filter | ( | MpegEncContext * | s | ) |
Definition at line 1465 of file h263.c.
Referenced by decode_slice(), encode_thread(), and rv10_decode_packet().
int ff_h263_resync | ( | MpegEncContext * | s | ) |
decodes the group of blocks / video packet header.
Definition at line 3300 of file h263.c.
Referenced by ff_h263_decode_frame().
void ff_h263_update_motion_val | ( | MpegEncContext * | s | ) |
Definition at line 687 of file h263.c.
Referenced by decode_slice(), encode_thread(), and rv10_decode_packet().
void ff_mpeg4_clean_buffers | ( | MpegEncContext * | s | ) |
int ff_mpeg4_decode_mb | ( | MpegEncContext * | s, | |
DCTELEM | block[6][64] | |||
) |
Definition at line 4152 of file h263.c.
Referenced by decode_vop_header(), and ff_h263_decode_init().
int ff_mpeg4_decode_partitions | ( | MpegEncContext * | s | ) |
decodes the first & second partition
Definition at line 3642 of file h263.c.
Referenced by decode_slice().
int ff_mpeg4_decode_picture_header | ( | MpegEncContext * | s, | |
GetBitContext * | gb | |||
) |
decode mpeg4 headers
Definition at line 5997 of file h263.c.
Referenced by av_mpeg4_decode_header(), and ff_h263_decode_frame().
int ff_mpeg4_get_video_packet_prefix_length | ( | MpegEncContext * | s | ) |
Definition at line 3095 of file h263.c.
Referenced by mpeg4_decode_video_packet_header(), and mpeg4_is_resync().
void ff_mpeg4_init_direct_mv | ( | MpegEncContext * | s | ) |
Definition at line 593 of file h263.c.
Referenced by decode_vop_header(), and rv20_decode_picture_header().
static int ff_mpeg4_pred_dc | ( | MpegEncContext * | s, | |
int | n, | |||
int | level, | |||
int * | dir_ptr, | |||
int | encoding | |||
) | [inline, static] |
predicts the dc.
encoding quantized level -> quantized diff decoding quantized diff -> quantized level
n | block index (0-3 are luma, 4-5 are chroma) | |
dir_ptr | pointer to an integer where the prediction direction will be stored |
Definition at line 2523 of file h263.c.
Referenced by mpeg4_decode_block(), and mpeg4_decode_dc().
int ff_mpeg4_set_direct_mv | ( | MpegEncContext * | s, | |
int | mx, | |||
int | my | |||
) |
Definition at line 636 of file h263.c.
Referenced by encode_thread(), ff_h263_decode_mb(), and ff_mpeg4_decode_mb().
static void ff_mpeg4_set_one_direct_mv | ( | MpegEncContext * | s, | |
int | mx, | |||
int | my, | |||
int | i | |||
) | [inline, static] |
int flv_h263_decode_picture_header | ( | MpegEncContext * | s | ) |
static int get_amv | ( | MpegEncContext * | s, | |
int | n | |||
) | [inline, static] |
gets the average motion vector for a GMC MB.
n | either 0 for the x component or 1 for y |
Definition at line 3345 of file h263.c.
Referenced by ff_mpeg4_decode_mb(), and mpeg4_decode_partition_a().
static int h263_decode_block | ( | MpegEncContext * | s, | |
DCTELEM * | block, | |||
int | n, | |||
int | coded | |||
) | [static] |
static void h263_decode_dquant | ( | MpegEncContext * | s | ) | [static] |
static int h263_decode_gob_header | ( | MpegEncContext * | s | ) | [static] |
decodes the group of blocks header or slice header.
Definition at line 2994 of file h263.c.
Referenced by ff_h263_resync().
void h263_decode_init_vlc | ( | MpegEncContext * | s | ) |
Definition at line 2903 of file h263.c.
Referenced by ff_h263_decode_init(), and rv10_decode_init().
static int h263_decode_motion | ( | MpegEncContext * | s, | |
int | pred, | |||
int | fcode | |||
) | [static] |
Definition at line 4482 of file h263.c.
Referenced by ff_h263_decode_mb(), ff_mpeg4_decode_mb(), mpeg4_decode_partition_a(), and preview_obmc().
int h263_decode_picture_header | ( | MpegEncContext * | s | ) |
int h263_get_picture_format | ( | int | width, | |
int | height | |||
) |
static void h263_pred_acdc | ( | MpegEncContext * | s, | |
DCTELEM * | block, | |||
int | n | |||
) | [static] |
int16_t* h263_pred_motion | ( | MpegEncContext * | s, | |
int | block, | |||
int | dir, | |||
int * | px, | |||
int * | py | |||
) |
Definition at line 1686 of file h263.c.
Referenced by ff_h263_decode_mb(), ff_mpeg4_decode_mb(), ff_wmv2_encode_mb(), mpeg4_decode_partition_a(), msmpeg4v12_decode_mb(), msmpeg4v34_decode_mb(), preview_obmc(), and svq1_encode_plane().
static int h263p_decode_umotion | ( | MpegEncContext * | s, | |
int | pred | |||
) | [static] |
int intel_h263_decode_picture_header | ( | MpegEncContext * | s | ) |
static void memsetw | ( | short * | tab, | |
int | val, | |||
int | n | |||
) | [inline, static] |
static int mpeg4_decode_block | ( | MpegEncContext * | s, | |
DCTELEM * | block, | |||
int | n, | |||
int | coded, | |||
int | intra, | |||
int | rvlc | |||
) | [inline, static] |
decodes a block.
Definition at line 4726 of file h263.c.
Referenced by ff_mpeg4_decode_mb(), and mpeg4_decode_partitioned_mb().
static int mpeg4_decode_dc | ( | MpegEncContext * | s, | |
int | n, | |||
int * | dir_ptr | |||
) | [inline, static] |
decodes the dc value.
n | block index (0-3 are luma, 4-5 are chroma) | |
dir_ptr | the prediction direction will be stored here |
Definition at line 4681 of file h263.c.
Referenced by mpeg4_decode_block(), mpeg4_decode_partition_a(), and mpeg4_decode_partition_b().
static int mpeg4_decode_gop_header | ( | MpegEncContext * | s, | |
GetBitContext * | gb | |||
) | [static] |
static int mpeg4_decode_partition_a | ( | MpegEncContext * | s | ) | [static] |
decodes first partition.
Definition at line 3390 of file h263.c.
Referenced by ff_mpeg4_decode_partitions().
static int mpeg4_decode_partition_b | ( | MpegEncContext * | s, | |
int | mb_count | |||
) | [static] |
decode second partition.
Definition at line 3555 of file h263.c.
Referenced by ff_mpeg4_decode_partitions().
static int mpeg4_decode_partitioned_mb | ( | MpegEncContext * | s, | |
DCTELEM | block[6][64] | |||
) | [static] |
decode partition C of one MB.
Definition at line 3695 of file h263.c.
Referenced by decode_vop_header().
static void mpeg4_decode_sprite_trajectory | ( | MpegEncContext * | s, | |
GetBitContext * | gb | |||
) | [static] |
Definition at line 5245 of file h263.c.
Referenced by decode_vop_header(), and mpeg4_decode_video_packet_header().
static int mpeg4_decode_video_packet_header | ( | MpegEncContext * | s | ) | [static] |
decodes the next video packet.
Definition at line 3176 of file h263.c.
Referenced by ff_h263_resync().
static int mpeg4_is_resync | ( | MpegEncContext * | s | ) | [inline, static] |
check if the next stuff is a resync marker or the end.
Definition at line 3129 of file h263.c.
Referenced by ff_mpeg4_decode_mb(), and mpeg4_decode_partitioned_mb().
void mpeg4_pred_ac | ( | MpegEncContext * | s, | |
DCTELEM * | block, | |||
int | n, | |||
int | dir | |||
) |
predicts the ac.
n | block index (0-3 are luma, 4-5 are chroma) | |
dir | the ac prediction direction |
Definition at line 2600 of file h263.c.
Referenced by ff_msmpeg4_decode_block(), and mpeg4_decode_block().
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 3781 of file h263.c.
Referenced by ff_h263_decode_mb().
static void show_pict_info | ( | MpegEncContext * | s | ) | [static] |
Definition at line 141 of file h263.c.
Referenced by h263_decode_picture_header(), and intel_h263_decode_picture_header().
VLC cbpc_b_vlc [static] |
VLC h263_mbtype_b_vlc [static] |
VLC inter_MCBPC_vlc [static] |
VLC intra_MCBPC_vlc [static] |
VLC mb_type_b_vlc [static] |
VLC sprite_trajectory [static] |
uint8_t static_rl_table_store[5][2][2 *MAX_RUN+MAX_LEVEL+3] [static] |
Definition at line 114 of file h263.c.
Referenced by ff_msmpeg4_decode_init(), and h263_decode_init_vlc().