FFmpeg
|
#include "libavutil/avassert.h"
#include "avcodec.h"
#include "get_bits.h"
#include "golomb.h"
#include "cavs.h"
#include "codec_internal.h"
#include "internal.h"
#include "mathops.h"
#include "mpeg12data.h"
#include "startcode.h"
Go to the source code of this file.
Macros | |
#define | EOB 0, 0, 0 |
#define | TMP_UNUSED_INX 7 |
Functions | |
static void | store_mvs (AVSContext *h) |
static void | mv_pred_direct (AVSContext *h, cavs_vector *pmv_fw, cavs_vector *col_mv) |
static void | mv_pred_sym (AVSContext *h, cavs_vector *src, enum cavs_block size) |
static int | get_ue_code (GetBitContext *gb, int order) |
kth-order exponential golomb code More... | |
static int | dequant (AVSContext *h, int16_t *level_buf, uint8_t *run_buf, int16_t *dst, int mul, int shift, int coeff_num) |
static int | decode_residual_block (AVSContext *h, GetBitContext *gb, const struct dec_2dvlc *r, int esc_golomb_order, int qp, uint8_t *dst, ptrdiff_t stride) |
decode coefficients from one 8x8 block, dequantize, inverse transform and add them to sample block More... | |
static int | decode_residual_chroma (AVSContext *h) |
static int | decode_residual_inter (AVSContext *h) |
static void | set_mv_intra (AVSContext *h) |
static int | decode_mb_i (AVSContext *h, int cbp_code) |
static void | set_intra_mode_default (AVSContext *h) |
static void | decode_mb_p (AVSContext *h, enum cavs_mb mb_type) |
static int | decode_mb_b (AVSContext *h, enum cavs_mb mb_type) |
static int | decode_slice_header (AVSContext *h, GetBitContext *gb) |
static int | check_for_slice (AVSContext *h) |
static int | decode_pic (AVSContext *h) |
static int | decode_seq_header (AVSContext *h) |
static void | cavs_flush (AVCodecContext *avctx) |
static int | cavs_decode_frame (AVCodecContext *avctx, AVFrame *rframe, int *got_frame, AVPacket *avpkt) |
Variables | |
static const uint8_t | mv_scan [4] |
static const uint8_t | cbp_tab [64][2] |
static const uint8_t | scan3x3 [4] = { 4, 5, 7, 8 } |
static const uint8_t | dequant_shift [64] |
static const uint16_t | dequant_mul [64] |
static const struct dec_2dvlc | intra_dec [7] |
static const struct dec_2dvlc | inter_dec [7] |
static const struct dec_2dvlc | chroma_dec [5] |
const FFCodec | ff_cavs_decoder |
Chinese AVS video (AVS1-P2, JiZhun profile) decoder
Definition in file cavsdec.c.
#define TMP_UNUSED_INX 7 |
|
inlinestatic |
Definition at line 459 of file cavsdec.c.
Referenced by decode_mb_p().
|
inlinestatic |
Definition at line 467 of file cavsdec.c.
Referenced by decode_mb_b().
|
inlinestatic |
Definition at line 486 of file cavsdec.c.
Referenced by decode_mb_b().
|
inlinestatic |
kth-order exponential golomb code
Definition at line 506 of file cavsdec.c.
Referenced by decode_residual_block().
|
inlinestatic |
Definition at line 519 of file cavsdec.c.
Referenced by decode_residual_block().
|
static |
decode coefficients from one 8x8 block, dequantize, inverse transform and add them to sample block
r | pointer to 2D VLC table |
esc_golomb_order | escape codes are k-golomb with this order k |
qp | quantizer |
dst | location of sample block |
stride | line stride in frame buffer |
Definition at line 549 of file cavsdec.c.
Referenced by decode_mb_i(), decode_residual_chroma(), and decode_residual_inter().
|
inlinestatic |
Definition at line 597 of file cavsdec.c.
Referenced by decode_mb_i(), and decode_residual_inter().
|
inlinestatic |
Definition at line 614 of file cavsdec.c.
Referenced by decode_mb_b(), and decode_mb_p().
|
inlinestatic |
Definition at line 644 of file cavsdec.c.
Referenced by decode_mb_i().
|
static |
Definition at line 654 of file cavsdec.c.
Referenced by decode_pic().
|
inlinestatic |
Definition at line 728 of file cavsdec.c.
Referenced by decode_mb_b(), and decode_mb_p().
|
static |
Definition at line 739 of file cavsdec.c.
Referenced by decode_pic().
|
static |
Definition at line 784 of file cavsdec.c.
Referenced by decode_pic().
|
inlinestatic |
Definition at line 927 of file cavsdec.c.
Referenced by cavs_decode_frame(), and check_for_slice().
|
inlinestatic |
Definition at line 956 of file cavsdec.c.
Referenced by decode_pic().
|
static |
Definition at line 984 of file cavsdec.c.
Referenced by cavs_decode_frame().
|
static |
Definition at line 1173 of file cavsdec.c.
Referenced by cavs_decode_frame().
|
static |
|
static |
|
static |
|
static |
Definition at line 44 of file cavsdec.c.
Referenced by decode_mb_i(), and decode_residual_inter().
|
static |
Definition at line 55 of file cavsdec.c.
Referenced by decode_mb_i().
|
static |
Definition at line 57 of file cavsdec.c.
Referenced by decode_residual_block().
|
static |
Definition at line 68 of file cavsdec.c.
Referenced by decode_residual_block().
|
static |
Definition at line 81 of file cavsdec.c.
Referenced by decode_mb_i().
|
static |
Definition at line 217 of file cavsdec.c.
Referenced by decode_residual_inter().
|
static |
Definition at line 353 of file cavsdec.c.
Referenced by decode_residual_chroma().
const FFCodec ff_cavs_decoder |