#include <stdint.h>
#include "libavutil/rational.h"
#include "get_bits.h"
#include "mpegvideo.h"
#include "rl.h"
Go to the source code of this file.
Defines | |
#define | INTRA_MCBPC_VLC_BITS 6 |
#define | INTER_MCBPC_VLC_BITS 7 |
#define | CBPY_VLC_BITS 6 |
#define | TEX_VLC_BITS 9 |
Functions | |
int | h263_decode_motion (MpegEncContext *s, int pred, int f_code) |
av_const int | ff_h263_aspect_to_info (AVRational aspect) |
Return the 4 bit value that specifies the given aspect ratio. | |
int | ff_h263_decode_init (AVCodecContext *avctx) |
int | ff_h263_decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt) |
int | ff_h263_decode_end (AVCodecContext *avctx) |
void | h263_encode_mb (MpegEncContext *s, DCTELEM block[6][64], int motion_x, int motion_y) |
void | h263_encode_picture_header (MpegEncContext *s, int picture_number) |
void | h263_encode_gob_header (MpegEncContext *s, int mb_line) |
Encode a group of blocks header. | |
int16_t * | h263_pred_motion (MpegEncContext *s, int block, int dir, int *px, int *py) |
void | h263_encode_init (MpegEncContext *s) |
void | h263_decode_init_vlc (MpegEncContext *s) |
int | h263_decode_picture_header (MpegEncContext *s) |
int | ff_h263_decode_gob_header (MpegEncContext *s) |
void | ff_h263_update_motion_val (MpegEncContext *s) |
void | ff_h263_loop_filter (MpegEncContext *s) |
int | ff_h263_decode_mba (MpegEncContext *s) |
void | ff_h263_encode_mba (MpegEncContext *s) |
void | ff_init_qscale_tab (MpegEncContext *s) |
init s->current_picture.qscale_table from s->lambda_table | |
int | h263_pred_dc (MpegEncContext *s, int n, int16_t **dc_val_ptr) |
void | h263_pred_acdc (MpegEncContext *s, DCTELEM *block, int n) |
void | ff_h263_show_pict_info (MpegEncContext *s) |
Print picture info if FF_DEBUG_PICT_INFO is set. | |
int | ff_intel_h263_decode_picture_header (MpegEncContext *s) |
int | ff_h263_decode_mb (MpegEncContext *s, DCTELEM block[6][64]) |
int av_const | h263_get_picture_format (int width, int height) |
Return the value of the 3bit "source format" syntax element. | |
void | ff_clean_h263_qscales (MpegEncContext *s) |
modify qscale so that encoding is acually possible in h263 (limit difference to -2. | |
int | ff_h263_resync (MpegEncContext *s) |
decodes the group of blocks / video packet header. | |
const uint8_t * | ff_h263_find_resync_marker (const uint8_t *p, const uint8_t *end) |
int | ff_h263_get_gob_height (MpegEncContext *s) |
Get the GOB height based on picture height. | |
void | ff_h263_encode_motion (MpegEncContext *s, int val, int f_code) |
static int | h263_get_motion_length (MpegEncContext *s, int val, int f_code) |
static void | ff_h263_encode_motion_vector (MpegEncContext *s, int x, int y, int f_code) |
static int | get_p_cbp (MpegEncContext *s, DCTELEM block[6][64], int motion_x, int motion_y) |
static void | memsetw (short *tab, int val, int n) |
Variables | |
const AVRational | ff_h263_pixel_aspect [16] |
const uint8_t | ff_h263_cbpy_tab [16][2] |
const uint8_t | cbpc_b_tab [4][2] |
const uint8_t | mvtab [33][2] |
const uint8_t | ff_h263_intra_MCBPC_code [9] |
const uint8_t | ff_h263_intra_MCBPC_bits [9] |
const uint8_t | ff_h263_inter_MCBPC_code [28] |
const uint8_t | ff_h263_inter_MCBPC_bits [28] |
const uint8_t | h263_mbtype_b_tab [15][2] |
VLC | ff_h263_intra_MCBPC_vlc |
VLC | ff_h263_inter_MCBPC_vlc |
VLC | ff_h263_cbpy_vlc |
RLTable | ff_h263_rl_inter |
RLTable | rl_intra_aic |
const uint16_t | h263_format [8][2] |
const uint8_t | modified_quant_tab [2][32] |
const uint16_t | ff_mba_max [6] |
const uint8_t | ff_mba_length [7] |
uint8_t | ff_h263_static_rl_table_store [2][2][2 *MAX_RUN+MAX_LEVEL+3] |
#define CBPY_VLC_BITS 6 |
Definition at line 35 of file h263.h.
Referenced by ff_h263_decode_mb(), h263_decode_init_vlc(), mpeg4_decode_mb(), mpeg4_decode_partition_b(), msmpeg4v12_decode_mb(), and preview_obmc().
#define INTER_MCBPC_VLC_BITS 7 |
Definition at line 34 of file h263.h.
Referenced by ff_h263_decode_mb(), h263_decode_init_vlc(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), msmpeg4v12_decode_mb(), and preview_obmc().
#define INTRA_MCBPC_VLC_BITS 6 |
Definition at line 33 of file h263.h.
Referenced by ff_h263_decode_mb(), h263_decode_init_vlc(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), and msmpeg4v12_decode_mb().
void ff_clean_h263_qscales | ( | MpegEncContext * | s | ) |
modify qscale so that encoding is acually possible in h263 (limit difference to -2.
.2)
Definition at line 276 of file ituh263enc.c.
Referenced by estimate_qp(), and ff_clean_mpeg4_qscales().
av_const int ff_h263_aspect_to_info | ( | AVRational | aspect | ) |
Return the 4 bit value that specifies the given aspect ratio.
This may be one of the standard aspect ratios or it specifies that the aspect will be stored explicitly later.
Definition at line 91 of file ituh263enc.c.
Referenced by h263_encode_picture_header(), and mpeg4_encode_vol_header().
int ff_h263_decode_end | ( | AVCodecContext * | avctx | ) |
int ff_h263_decode_frame | ( | AVCodecContext * | avctx, | |
void * | data, | |||
int * | data_size, | |||
AVPacket * | avpkt | |||
) |
int ff_h263_decode_gob_header | ( | MpegEncContext * | s | ) |
int ff_h263_decode_init | ( | AVCodecContext * | avctx | ) |
int ff_h263_decode_mb | ( | MpegEncContext * | s, | |
DCTELEM | block[6][64] | |||
) |
Definition at line 603 of file ituh263dec.c.
Referenced by ff_h263_decode_init(), and rv10_decode_packet().
int ff_h263_decode_mba | ( | MpegEncContext * | s | ) |
Definition at line 138 of file ituh263dec.c.
Referenced by h263_decode_gob_header(), h263_decode_picture_header(), and rv20_decode_picture_header().
void ff_h263_encode_mba | ( | MpegEncContext * | s | ) |
Definition at line 832 of file ituh263enc.c.
Referenced by h263_encode_gob_header(), h263_encode_picture_header(), and rv20_encode_picture_header().
void ff_h263_encode_motion | ( | MpegEncContext * | s, | |
int | val, | |||
int | f_code | |||
) |
Definition at line 658 of file ituh263enc.c.
Referenced by ff_h263_encode_motion_vector(), and svq1_encode_plane().
static void ff_h263_encode_motion_vector | ( | MpegEncContext * | s, | |
int | x, | |||
int | y, | |||
int | f_code | |||
) | [inline, static] |
const uint8_t* ff_h263_find_resync_marker | ( | const uint8_t * | p, | |
const uint8_t * | end | |||
) |
Referenced by decode_slice().
int ff_h263_get_gob_height | ( | MpegEncContext * | s | ) |
Get the GOB height based on picture height.
Definition at line 378 of file h263.c.
Referenced by encode_thread(), ff_h263_decode_frame(), and vaapi_mpeg4_start_frame().
void ff_h263_loop_filter | ( | MpegEncContext * | s | ) |
Definition at line 142 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 232 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 74 of file ituh263dec.c.
Referenced by ff_intel_h263_decode_picture_header(), and h263_decode_picture_header().
void ff_h263_update_motion_val | ( | MpegEncContext * | s | ) |
Definition at line 49 of file h263.c.
Referenced by decode_slice(), encode_thread(), and rv10_decode_packet().
void ff_init_qscale_tab | ( | MpegEncContext * | s | ) |
init s->current_picture.qscale_table from s->lambda_table
Definition at line 163 of file mpegvideo_enc.c.
Referenced by estimate_qp(), and ff_clean_h263_qscales().
int ff_intel_h263_decode_picture_header | ( | MpegEncContext * | s | ) |
static int get_p_cbp | ( | MpegEncContext * | s, | |
DCTELEM | block[6][64], | |||
int | motion_x, | |||
int | motion_y | |||
) | [inline, static] |
void h263_decode_init_vlc | ( | MpegEncContext * | s | ) |
Definition at line 106 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 | |||
) |
Definition at line 274 of file ituh263dec.c.
Referenced by ff_h263_decode_mb(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), and preview_obmc().
int h263_decode_picture_header | ( | MpegEncContext * | s | ) |
void h263_encode_gob_header | ( | MpegEncContext * | s, | |
int | mb_line | |||
) |
Encode a group of blocks header.
Definition at line 250 of file ituh263enc.c.
Referenced by encode_thread().
void h263_encode_init | ( | MpegEncContext * | s | ) |
Definition at line 771 of file ituh263enc.c.
Referenced by MPV_encode_init(), and svq1_encode_init().
void h263_encode_mb | ( | MpegEncContext * | s, | |
DCTELEM | block[6][64], | |||
int | motion_x, | |||
int | motion_y | |||
) |
void h263_encode_picture_header | ( | MpegEncContext * | s, | |
int | picture_number | |||
) |
static int h263_get_motion_length | ( | MpegEncContext * | s, | |
int | val, | |||
int | f_code | |||
) | [inline, static] |
int av_const h263_get_picture_format | ( | int | width, | |
int | height | |||
) |
Return the value of the 3bit "source format" syntax element.
This represents some standard picture dimensions or indicates that width&height are explicitly stored later.
void h263_pred_acdc | ( | MpegEncContext * | s, | |
DCTELEM * | block, | |||
int | n | |||
) |
int h263_pred_dc | ( | MpegEncContext * | s, | |
int | n, | |||
int16_t ** | dc_val_ptr | |||
) |
int16_t* h263_pred_motion | ( | MpegEncContext * | s, | |
int | block, | |||
int | dir, | |||
int * | px, | |||
int * | py | |||
) |
Definition at line 316 of file h263.c.
Referenced by ff_h263_decode_mb(), ff_wmv2_encode_mb(), h263_encode_mb(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg4_encode_mb(), msmpeg4v12_decode_mb(), msmpeg4v34_decode_mb(), preview_obmc(), and svq1_encode_plane().
static void memsetw | ( | short * | tab, | |
int | val, | |||
int | n | |||
) | [inline, static] |
const uint8_t cbpc_b_tab[4][2] |
const uint8_t ff_h263_cbpy_tab[16][2] |
Definition at line 85 of file h263data.h.
Referenced by get_p_cbp(), h263_decode_init_vlc(), h263_encode_mb(), and mpeg4_encode_mb().
Definition at line 98 of file ituh263dec.c.
Referenced by mpeg4_decode_mb(), mpeg4_decode_partition_b(), and msmpeg4v12_decode_mb().
const uint8_t ff_h263_inter_MCBPC_bits[28] |
Definition at line 50 of file h263data.h.
Referenced by get_p_cbp(), h263_decode_init_vlc(), h263_encode_mb(), and mpeg4_encode_mb().
const uint8_t ff_h263_inter_MCBPC_code[28] |
Definition at line 41 of file h263data.h.
Referenced by h263_decode_init_vlc(), h263_encode_mb(), and mpeg4_encode_mb().
Definition at line 97 of file ituh263dec.c.
Referenced by mpeg4_decode_mb(), mpeg4_decode_partition_a(), and msmpeg4v12_decode_mb().
const uint8_t ff_h263_intra_MCBPC_bits[9] |
Definition at line 37 of file h263data.h.
Referenced by h263_decode_init_vlc(), h263_encode_mb(), and mpeg4_encode_mb().
const uint8_t ff_h263_intra_MCBPC_code[9] |
Definition at line 36 of file h263data.h.
Referenced by h263_decode_init_vlc(), h263_encode_mb(), and mpeg4_encode_mb().
Definition at line 96 of file ituh263dec.c.
Referenced by mpeg4_decode_mb(), mpeg4_decode_partition_a(), and msmpeg4v12_decode_mb().
const AVRational ff_h263_pixel_aspect[16] |
Definition at line 280 of file h263data.h.
Referenced by decode_vol_header(), ff_h263_aspect_to_info(), ff_intel_h263_decode_picture_header(), and h263_decode_picture_header().
Definition at line 162 of file h263data.h.
Referenced by encode_init(), h263_decode_block(), h263_decode_init_vlc(), h263_encode_block(), h263_encode_init(), and mpeg4_decode_block().
uint8_t ff_h263_static_rl_table_store[2][2][2 *MAX_RUN+MAX_LEVEL+3] |
const uint8_t ff_mba_length[7] |
Definition at line 271 of file h263data.h.
Referenced by ff_h263_decode_mba(), and ff_h263_encode_mba().
const uint16_t ff_mba_max[6] |
Definition at line 267 of file h263data.h.
Referenced by ff_h263_decode_mba(), and ff_h263_encode_mba().
const uint16_t h263_format[8][2] |
Definition at line 239 of file h263data.h.
Referenced by ff_intel_h263_decode_picture_header(), h263_decode_picture_header(), h263_encode_picture_header(), and MPV_encode_init().
const uint8_t h263_mbtype_b_tab[15][2] |
const uint8_t modified_quant_tab[2][32] |
const uint8_t mvtab[33][2] |
Definition at line 91 of file h263data.h.
Referenced by ff_h263_encode_motion(), ff_msmpeg4_decode_init(), h263_decode_init_vlc(), h263_get_motion_length(), init_mv_penalty_and_fcode(), and svq1_decode_init().
Definition at line 231 of file h263data.h.
Referenced by h263_decode_block(), h263_decode_init_vlc(), h263_encode_block(), and h263_encode_init().