FFmpeg
|
#include <inttypes.h>
#include "libavutil/avassert.h"
#include "libavutil/thread.h"
#include "avcodec.h"
#include "bswapdsp.h"
#include "codec_internal.h"
#include "decode.h"
#include "get_bits.h"
#include "golomb.h"
#include "mathops.h"
Go to the source code of this file.
Data Structures | |
struct | BlockXY |
struct | MotionXY |
struct | MobiClipContext |
Macros | |
#define | MOBI_RL_VLC_BITS 12 |
#define | MOBI_MV_VLC_BITS 6 |
Functions | |
static av_cold void | mobiclip_init_static (void) |
static av_cold int | mobiclip_init (AVCodecContext *avctx) |
static int | setup_qtables (AVCodecContext *avctx, int64_t quantizer) |
static void | inverse4 (unsigned *rs) |
static void | idct (int *arr, int size) |
static void | read_run_encoding (AVCodecContext *avctx, int *last, int *run, int *level) |
static int | add_coefficients (AVCodecContext *avctx, AVFrame *frame, int bx, int by, int size, int plane) |
static int | add_pframe_coefficients (AVCodecContext *avctx, AVFrame *frame, int bx, int by, int size, int plane) |
static int | adjust (int x, int size) |
static uint8_t | pget (BlockXY b) |
static uint8_t | half (int a, int b) |
static uint8_t | half3 (int a, int b, int c) |
static uint8_t | pick_above (BlockXY bxy) |
static uint8_t | pick_left (BlockXY bxy) |
static uint8_t | half_horz (BlockXY bxy) |
static uint8_t | half_vert (BlockXY bxy) |
static uint8_t | pick_4 (BlockXY bxy) |
static uint8_t | pick_5 (BlockXY bxy) |
static uint8_t | pick_6 (BlockXY bxy) |
static uint8_t | pick_7 (BlockXY bxy) |
static uint8_t | pick_8 (BlockXY bxy) |
static void | block_fill_simple (uint8_t *block, int size, int linesize, int fill) |
static void | block_fill (uint8_t *block, int size, int linesize, int w, int h, int ax, int ay, uint8_t(*pick)(BlockXY bxy)) |
static int | block_sum (const uint8_t *block, int w, int h, int linesize) |
static int | predict_intra (AVCodecContext *avctx, AVFrame *frame, int ax, int ay, int pmode, int add_coeffs, int size, int plane) |
static int | get_prediction (AVCodecContext *avctx, int x, int y, int size) |
static int | process_block (AVCodecContext *avctx, AVFrame *frame, int x, int y, int pmode, int has_coeffs, int plane) |
static int | decode_macroblock (AVCodecContext *avctx, AVFrame *frame, int x, int y, int predict) |
static int | get_index (int x) |
static int | predict_motion (AVCodecContext *avctx, int width, int height, int index, int offsetm, int offsetx, int offsety) |
static int | mobiclip_decode (AVCodecContext *avctx, AVFrame *rframe, int *got_frame, AVPacket *pkt) |
static void | mobiclip_flush (AVCodecContext *avctx) |
static av_cold int | mobiclip_close (AVCodecContext *avctx) |
Variables | |
static const uint8_t | zigzag4x4_tab [] |
static const uint8_t | quant4x4_tab [][16] |
static const uint8_t | quant8x8_tab [][64] |
static const uint8_t | block4x4_coefficients_tab [] |
static const uint8_t | pframe_block4x4_coefficients_tab [] |
static const uint8_t | block8x8_coefficients_tab [] |
static const uint8_t | pframe_block8x8_coefficients_tab [] |
static const uint8_t | run_residue [2][256] |
static const uint8_t | bits0 [] |
static const uint16_t | syms0 [] |
static const uint16_t | syms1 [] |
static const uint8_t | mv_len [16] |
static const uint8_t | mv_bits [2][16][10] |
static const uint8_t | mv_syms [2][16][10] |
static VLC | rl_vlc [2] |
static VLC | mv_vlc [2][16] |
const FFCodec | ff_mobiclip_decoder |
#define MOBI_RL_VLC_BITS 12 |
Definition at line 37 of file mobiclip.c.
#define MOBI_MV_VLC_BITS 6 |
Definition at line 38 of file mobiclip.c.
|
static |
Definition at line 280 of file mobiclip.c.
Referenced by mobiclip_init().
|
static |
Definition at line 303 of file mobiclip.c.
|
static |
Definition at line 333 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 358 of file mobiclip.c.
Referenced by idct().
Definition at line 371 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 408 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 421 of file mobiclip.c.
Referenced by add_pframe_coefficients(), and predict_intra().
|
static |
Definition at line 487 of file mobiclip.c.
Referenced by mobiclip_decode().
Definition at line 515 of file mobiclip.c.
Referenced by comp_adjust(), fir_to_phase(), init_gaussian_filter(), and predict_intra().
|
static |
Definition at line 520 of file mobiclip.c.
Referenced by half_horz(), half_vert(), pick_4(), pick_5(), pick_6(), pick_7(), pick_8(), pick_above(), and pick_left().
Definition at line 541 of file mobiclip.c.
Referenced by clear_slice16(), clear_slice8(), combine_fft(), do_hsvhold16_slice(), do_hsvkey_pixel(), ff_avg_h264_qpel16_mc01_lasx(), ff_avg_h264_qpel16_mc01_lsx(), ff_avg_h264_qpel16_mc01_mmi(), ff_avg_h264_qpel16_mc03_lasx(), ff_avg_h264_qpel16_mc03_lsx(), ff_avg_h264_qpel16_mc03_mmi(), ff_avg_h264_qpel16_mc10_lasx(), ff_avg_h264_qpel16_mc10_mmi(), ff_avg_h264_qpel16_mc30_lasx(), ff_avg_h264_qpel16_mc30_mmi(), ff_avg_h264_qpel4_mc01_mmi(), ff_avg_h264_qpel4_mc03_mmi(), ff_avg_h264_qpel4_mc10_mmi(), ff_avg_h264_qpel4_mc30_mmi(), ff_avg_h264_qpel8_mc01_mmi(), ff_avg_h264_qpel8_mc03_mmi(), ff_avg_h264_qpel8_mc10_lasx(), ff_avg_h264_qpel8_mc10_lsx(), ff_avg_h264_qpel8_mc10_mmi(), ff_avg_h264_qpel8_mc30_lasx(), ff_avg_h264_qpel8_mc30_lsx(), ff_avg_h264_qpel8_mc30_mmi(), ff_put_h264_qpel16_mc01_lasx(), ff_put_h264_qpel16_mc01_mmi(), ff_put_h264_qpel16_mc03_lasx(), ff_put_h264_qpel16_mc03_mmi(), ff_put_h264_qpel16_mc10_lasx(), ff_put_h264_qpel16_mc10_mmi(), ff_put_h264_qpel16_mc30_lasx(), ff_put_h264_qpel16_mc30_mmi(), ff_put_h264_qpel4_mc01_mmi(), ff_put_h264_qpel4_mc03_mmi(), ff_put_h264_qpel4_mc10_mmi(), ff_put_h264_qpel4_mc30_mmi(), ff_put_h264_qpel8_mc01_lasx(), ff_put_h264_qpel8_mc01_lsx(), ff_put_h264_qpel8_mc01_mmi(), ff_put_h264_qpel8_mc03_lasx(), ff_put_h264_qpel8_mc03_lsx(), ff_put_h264_qpel8_mc03_mmi(), ff_put_h264_qpel8_mc10_lasx(), ff_put_h264_qpel8_mc10_lsx(), ff_put_h264_qpel8_mc10_mmi(), ff_put_h264_qpel8_mc30_lasx(), ff_put_h264_qpel8_mc30_lsx(), ff_put_h264_qpel8_mc30_mmi(), fill_ltable(), init(), init_axis_color(), pick_4(), pick_5(), pick_6(), pick_8(), premultiply16(), premultiply16offset(), premultiply16yuv(), put_mspel8_mc10_c(), put_mspel8_mc30_c(), subtract_mean_new(), subtract_mean_old(), transform(), and unpremultiply16yuv().
Definition at line 546 of file mobiclip.c.
Referenced by half_horz(), half_vert(), and pick_7().
|
static |
Definition at line 551 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 558 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 565 of file mobiclip.c.
|
static |
Definition at line 575 of file mobiclip.c.
Referenced by mm_decode_inter(), mm_decode_intra(), pick_4(), pick_5(), and pick_6().
|
static |
Definition at line 585 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 616 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 656 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 696 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 728 of file mobiclip.c.
Referenced by predict_intra().
Definition at line 779 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 787 of file mobiclip.c.
Referenced by predict_intra().
Definition at line 815 of file mobiclip.c.
Referenced by encode_block(), and predict_intra().
|
static |
Definition at line 829 of file mobiclip.c.
Referenced by decode_macroblock(), and process_block().
|
static |
Definition at line 929 of file mobiclip.c.
Referenced by process_block().
|
static |
Definition at line 951 of file mobiclip.c.
Referenced by decode_macroblock().
|
static |
Definition at line 992 of file mobiclip.c.
Referenced by mobiclip_decode().
Definition at line 1072 of file mobiclip.c.
Referenced by predict_motion().
|
static |
Definition at line 1077 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 1211 of file mobiclip.c.
|
static |
Definition at line 1322 of file mobiclip.c.
|
static |
Definition at line 1330 of file mobiclip.c.
|
static |
Definition at line 40 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 46 of file mobiclip.c.
Referenced by setup_qtables().
|
static |
Definition at line 56 of file mobiclip.c.
Referenced by setup_qtables().
|
static |
Definition at line 72 of file mobiclip.c.
Referenced by process_block().
|
static |
Definition at line 77 of file mobiclip.c.
Referenced by add_pframe_coefficients().
|
static |
Definition at line 82 of file mobiclip.c.
Referenced by decode_macroblock().
|
static |
Definition at line 92 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 100 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 124 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 134 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 147 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 158 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 163 of file mobiclip.c.
Referenced by merge_context_after_encode(), and mobiclip_init_static().
|
static |
Definition at line 203 of file mobiclip.c.
Referenced by clv_init_static(), and mobiclip_init_static().
|
static |
Definition at line 277 of file mobiclip.c.
Referenced by ff_init_2d_vlc_rl(), ff_msmpeg4_decode_block(), mobiclip_init_static(), mpeg2_decode_block_intra(), mpeg2_fast_decode_block_intra(), mpeg4_decode_block(), msmpeg4_decode_init_static(), and read_run_encoding().
|
static |
Definition at line 278 of file mobiclip.c.
Referenced by mobiclip_decode(), mobiclip_init_static(), and predict_motion().
const FFCodec ff_mobiclip_decoder |
Definition at line 1346 of file mobiclip.c.