FFmpeg
|
#include <inttypes.h>
#include "libavutil/avassert.h"
#include "libavutil/mem.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 const VLCElem * | rl_vlc [2] |
static const VLCElem * | mv_vlc [2][16] |
const FFCodec | ff_mobiclip_decoder |
#define MOBI_RL_VLC_BITS 12 |
Definition at line 38 of file mobiclip.c.
#define MOBI_MV_VLC_BITS 6 |
Definition at line 39 of file mobiclip.c.
|
static |
Definition at line 281 of file mobiclip.c.
Referenced by mobiclip_init().
|
static |
Definition at line 302 of file mobiclip.c.
|
static |
Definition at line 332 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 357 of file mobiclip.c.
Referenced by idct().
|
static |
Definition at line 370 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 407 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 419 of file mobiclip.c.
Referenced by add_pframe_coefficients(), and predict_intra().
|
static |
Definition at line 485 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 513 of file mobiclip.c.
Referenced by comp_adjust(), fir_to_phase(), init_gaussian_filter(), and predict_intra().
|
static |
Definition at line 518 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().
|
static |
Definition at line 539 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().
|
static |
Definition at line 544 of file mobiclip.c.
Referenced by half_horz(), half_vert(), and pick_7().
|
static |
Definition at line 549 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 556 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 563 of file mobiclip.c.
|
static |
Definition at line 573 of file mobiclip.c.
Referenced by mm_decode_inter(), mm_decode_intra(), pick_4(), pick_5(), and pick_6().
|
static |
Definition at line 583 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 614 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 654 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 694 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 726 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 777 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 785 of file mobiclip.c.
Referenced by predict_intra().
|
static |
Definition at line 813 of file mobiclip.c.
Referenced by encode_block(), and predict_intra().
|
static |
Definition at line 827 of file mobiclip.c.
Referenced by decode_macroblock(), and process_block().
|
static |
Definition at line 927 of file mobiclip.c.
Referenced by process_block().
|
static |
Definition at line 949 of file mobiclip.c.
Referenced by decode_macroblock().
|
static |
Definition at line 990 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 1070 of file mobiclip.c.
Referenced by predict_motion().
|
static |
Definition at line 1075 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 1208 of file mobiclip.c.
|
static |
Definition at line 1318 of file mobiclip.c.
|
static |
Definition at line 1326 of file mobiclip.c.
|
static |
Definition at line 41 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 47 of file mobiclip.c.
Referenced by setup_qtables().
|
static |
Definition at line 57 of file mobiclip.c.
Referenced by setup_qtables().
|
static |
Definition at line 73 of file mobiclip.c.
Referenced by process_block().
|
static |
Definition at line 78 of file mobiclip.c.
Referenced by add_pframe_coefficients().
|
static |
Definition at line 83 of file mobiclip.c.
Referenced by decode_macroblock().
|
static |
Definition at line 93 of file mobiclip.c.
Referenced by mobiclip_decode().
|
static |
Definition at line 101 of file mobiclip.c.
Referenced by add_coefficients().
|
static |
Definition at line 125 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 135 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 148 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 159 of file mobiclip.c.
Referenced by mobiclip_init_static().
|
static |
Definition at line 164 of file mobiclip.c.
Referenced by merge_context_after_encode(), and mobiclip_init_static().
|
static |
Definition at line 204 of file mobiclip.c.
Referenced by clv_init_static(), and mobiclip_init_static().
|
static |
Definition at line 278 of file mobiclip.c.
Referenced by ff_init_2d_vlc_rl(), ff_msmpeg4_decode_block(), mobiclip_init_static(), mpeg2_decode_block_intra(), mpeg4_decode_block(), msmpeg4_decode_init_static(), and read_run_encoding().
|
static |
Definition at line 279 of file mobiclip.c.
Referenced by mobiclip_decode(), mobiclip_init_static(), and predict_motion().
const FFCodec ff_mobiclip_decoder |
Definition at line 1342 of file mobiclip.c.