|
FFmpeg
|
#include "libavutil/avassert.h"#include "libavutil/mem.h"#include "avcodec.h"#include "bytestream.h"#include "copy_block.h"#include "codec_internal.h"#include "decode.h"Go to the source code of this file.
Data Structures | |
| struct | SANMVideoContext |
Macros | |
| #define | NGLYPHS 256 |
| #define | GLYPH_COORD_VECT_SIZE 16 |
| #define | PALETTE_SIZE 256 |
| #define | PALETTE_DELTA 768 |
Enumerations | |
| enum | GlyphEdge { LEFT_EDGE, TOP_EDGE, RIGHT_EDGE, BOTTOM_EDGE, NO_EDGE } |
| enum | GlyphDir { DIR_LEFT, DIR_UP, DIR_RIGHT, DIR_DOWN, NO_DIR } |
Functions | |
| static enum GlyphEdge | which_edge (int x, int y, int edge_size) |
| Return enum GlyphEdge of box where point (x, y) lies. More... | |
| static enum GlyphDir | which_direction (enum GlyphEdge edge0, enum GlyphEdge edge1) |
| static void | interp_point (int8_t *points, int x0, int y0, int x1, int y1, int pos, int npoints) |
| static void | make_glyphs (int8_t *pglyphs, const int8_t *xvec, const int8_t *yvec, const int side_length) |
| Construct glyphs by iterating through vector coordinates. More... | |
| static void | init_sizes (SANMVideoContext *ctx, int width, int height) |
| static void | destroy_buffers (SANMVideoContext *ctx) |
| static av_cold int | init_buffers (SANMVideoContext *ctx) |
| static void | codec33_gen_tiles (SANMVideoContext *ctx, int8_t param1) |
| static void | codec4_gen_tiles (SANMVideoContext *ctx, uint16_t param1) |
| static int | codec4_load_tiles (SANMVideoContext *ctx, GetByteContext *gb, uint16_t param2, uint8_t clr) |
| static void | rotate_bufs (SANMVideoContext *ctx, int rotate_code) |
| static av_cold int | decode_init (AVCodecContext *avctx) |
| static av_cold int | decode_end (AVCodecContext *avctx) |
| static int | old_codec4 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int w, int h, uint8_t param, uint16_t param2, int codec) |
| static int | rle_decode (SANMVideoContext *ctx, GetByteContext *gb, uint8_t *dst, const int out_size) |
| static int | old_codec23 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height, uint8_t param, uint16_t param2) |
| static int | old_codec21 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height) |
| static int | old_codec1 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height, int opaque) |
| static int | old_codec31 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height, int p1, int opaque) |
| static int | old_codec2 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height) |
| static void | blt_solid (uint8_t *dst, const uint8_t *src, int16_t left, int16_t top, uint16_t srcxoff, uint16_t srcyoff, uint16_t srcwidth, uint16_t srcheight, const uint16_t srcpitch, const uint16_t dstpitch, const uint16_t dstheight, int32_t size) |
| static void | blt_mask (uint8_t *dst, const uint8_t *src, int16_t left, int16_t top, uint16_t srcxoff, uint16_t srcyoff, uint16_t srcwidth, uint16_t srcheight, const uint16_t srcpitch, const uint16_t dstpitch, const uint16_t dstheight, int32_t size, const uint8_t skipcolor) |
| static void | blt_ipol (uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int16_t left, int16_t top, uint16_t srcxoff, uint16_t srcyoff, uint16_t srcwidth, uint16_t srcheight, const uint16_t srcpitch, const uint16_t dstpitch, const uint16_t dstheight, int32_t size, const uint8_t *itbl) |
| static int | old_codec20 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, const int w, const int h) |
| static void | codec37_mv (uint8_t *dst, const uint8_t *src, int height, int stride, int x, int y) |
| static int | old_codec37 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height) |
| static int | codec47_block (SANMVideoContext *ctx, GetByteContext *gb, uint8_t *dst, uint8_t *prev1, uint8_t *prev2, int stride, int size) |
| static void | codec47_read_interptable (GetByteContext *gb, uint8_t *itbl) |
| static void | codec47_comp1 (GetByteContext *gb, uint8_t *dst_in, int width, const int height, const ptrdiff_t stride, const uint8_t *itbl) |
| static int | old_codec47 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height) |
| static void | c48_4to8 (uint8_t *dst, const uint8_t *src, const uint16_t w) |
| static int | c48_invalid_mv (int x, int y, const uint16_t w, int h, int blocksize, int mvofs) |
| static int | codec48_block (GetByteContext *gb, uint8_t *dst, uint8_t *db, int x, int y, const uint16_t w, const int aligned_height, const uint8_t *itbl) |
| static int | old_codec48 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int width, int height) |
| static void | old_codec45 (SANMVideoContext *ctx, GetByteContext *gb, int top, int left, int flag) |
| static int | process_frame_obj (SANMVideoContext *ctx, GetByteContext *gb, int xoff, int yoff) |
| static int | process_ftch (SANMVideoContext *ctx, int size) |
| static int | process_xpal (SANMVideoContext *ctx, int size) |
| static int | bl16_decode_0 (SANMVideoContext *ctx) |
| static uint16_t | bl16_c1_avg_col (uint16_t c1, uint16_t c2) |
| static int | bl16_decode_1 (SANMVideoContext *ctx) |
| static void | copy_block (uint16_t *pdest, uint16_t *psrc, int block_size, ptrdiff_t pitch) |
| static void | fill_block (uint16_t *pdest, uint16_t color, int block_size, ptrdiff_t pitch) |
| static int | draw_glyph (SANMVideoContext *ctx, uint16_t *dst, int index, uint16_t fg_color, uint16_t bg_color, int block_size, ptrdiff_t pitch) |
| static int | opcode_0xf7 (SANMVideoContext *ctx, int cx, int cy, int block_size, ptrdiff_t pitch) |
| static int | opcode_0xf8 (SANMVideoContext *ctx, int cx, int cy, int block_size, ptrdiff_t pitch) |
| static int | good_mvec (SANMVideoContext *ctx, int cx, int cy, int mx, int my, int block_size) |
| static int | bl16_block (SANMVideoContext *ctx, int cx, int cy, int blk_size) |
| static int | bl16_decode_2 (SANMVideoContext *ctx) |
| static int | bl16_decode_5 (SANMVideoContext *ctx, int rle_size) |
| static int | bl16_decode_6 (SANMVideoContext *ctx) |
| static int | bl16_decode_7 (SANMVideoContext *ctx) |
| static int | bl16_decode_8 (SANMVideoContext *ctx) |
| static void | fill_frame (uint16_t *pbuf, int buf_size, uint16_t color) |
| static int | copy_output (SANMVideoContext *ctx, int sanm) |
| static int | decode_bl16 (AVCodecContext *avctx, int *got_frame_ptr) |
| static int | decode_anim (AVCodecContext *avctx, int *got_frame_ptr) |
| static int | decode_frame (AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *pkt) |
Variables | |
| static const int8_t | glyph4_x [GLYPH_COORD_VECT_SIZE] |
| static const int8_t | glyph4_y [GLYPH_COORD_VECT_SIZE] |
| static const int8_t | glyph8_x [GLYPH_COORD_VECT_SIZE] |
| static const int8_t | glyph8_y [GLYPH_COORD_VECT_SIZE] |
| static const int8_t | c47_mv [256][2] |
| static const int8_t | c37_mv [] |
| const FFCodec | ff_sanm_decoder |
| enum GlyphEdge |
| enum GlyphDir |
|
static |
Return enum GlyphEdge of box where point (x, y) lies.
| x | x point coordinate |
| y | y point coordinate |
| edge_size | box width/height. |
Definition at line 327 of file sanm.c.
Referenced by make_glyphs().
Definition at line 343 of file sanm.c.
Referenced by make_glyphs().
|
static |
Definition at line 366 of file sanm.c.
Referenced by make_glyphs().
|
static |
Construct glyphs by iterating through vector coordinates.
| pglyphs | pointer to table where glyphs are stored |
| xvec | pointer to x component of vector coordinates |
| yvec | pointer to y component of vector coordinates |
| side_length | glyph width/height. |
Definition at line 386 of file sanm.c.
Referenced by decode_init().
|
static |
Definition at line 438 of file sanm.c.
Referenced by decode_init(), destroy_buffers(), and process_frame_obj().
|
static |
Definition at line 451 of file sanm.c.
Referenced by decode_end(), and init_buffers().
|
static |
Definition at line 465 of file sanm.c.
Referenced by decode_init(), and process_frame_obj().
|
static |
Definition at line 486 of file sanm.c.
Referenced by old_codec4().
|
static |
Definition at line 550 of file sanm.c.
Referenced by old_codec4().
|
static |
Definition at line 599 of file sanm.c.
Referenced by old_codec4().
|
static |
Definition at line 617 of file sanm.c.
Referenced by decode_bl16(), and old_codec47().
|
static |
|
static |
|
static |
Definition at line 679 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 746 of file sanm.c.
Referenced by bl16_decode_5(), bl16_decode_8(), old_codec37(), old_codec47(), and old_codec48().
|
static |
Definition at line 772 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 838 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 883 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 950 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 1016 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 1034 of file sanm.c.
Referenced by old_codec20(), old_codec37(), old_codec47(), and old_codec48().
|
static |
Definition at line 1086 of file sanm.c.
Referenced by old_codec37(), and old_codec48().
|
static |
Definition at line 1138 of file sanm.c.
Referenced by old_codec48().
|
static |
Definition at line 1192 of file sanm.c.
Referenced by process_frame_obj().
|
inlinestatic |
Definition at line 1201 of file sanm.c.
Referenced by old_codec37().
|
static |
Definition at line 1220 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 1405 of file sanm.c.
Referenced by old_codec47().
|
static |
Definition at line 1491 of file sanm.c.
Referenced by old_codec47(), and old_codec48().
|
static |
Definition at line 1507 of file sanm.c.
Referenced by old_codec47(), and old_codec48().
|
static |
Definition at line 1540 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 1636 of file sanm.c.
Referenced by codec48_block().
|
static |
Definition at line 1651 of file sanm.c.
Referenced by codec48_block().
|
static |
Definition at line 1661 of file sanm.c.
Referenced by old_codec48().
|
static |
Definition at line 1840 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 1951 of file sanm.c.
Referenced by process_frame_obj().
|
static |
Definition at line 2011 of file sanm.c.
Referenced by decode_anim(), and process_ftch().
|
static |
Definition at line 2157 of file sanm.c.
Referenced by decode_anim().
|
static |
Definition at line 2197 of file sanm.c.
Referenced by decode_anim().
|
static |
Definition at line 2244 of file sanm.c.
Referenced by decode_bl16().
|
inlinestatic |
Definition at line 2262 of file sanm.c.
Referenced by bl16_decode_1(), and bl16_decode_7().
|
static |
Definition at line 2273 of file sanm.c.
Referenced by decode_bl16().
|
static |
Definition at line 2317 of file sanm.c.
Referenced by bl16_block().
|
static |
Definition at line 2336 of file sanm.c.
Referenced by bl16_block().
|
static |
Definition at line 2346 of file sanm.c.
Referenced by opcode_0xf7(), and opcode_0xf8().
|
static |
Definition at line 2368 of file sanm.c.
Referenced by bl16_block().
|
static |
Definition at line 2402 of file sanm.c.
Referenced by bl16_block().
|
static |
Definition at line 2430 of file sanm.c.
Referenced by bl16_block().
|
static |
Definition at line 2446 of file sanm.c.
Referenced by bl16_decode_2().
|
static |
Definition at line 2545 of file sanm.c.
Referenced by decode_bl16().
|
static |
Definition at line 2557 of file sanm.c.
Referenced by decode_bl16().
|
static |
Definition at line 2580 of file sanm.c.
Referenced by decode_bl16().
|
static |
Definition at line 2600 of file sanm.c.
Referenced by decode_bl16().
|
static |
Definition at line 2644 of file sanm.c.
Referenced by decode_bl16().
|
static |
Definition at line 2666 of file sanm.c.
Referenced by decode_bl16().
|
static |
Definition at line 2674 of file sanm.c.
Referenced by decode_anim(), and decode_bl16().
|
static |
Definition at line 2696 of file sanm.c.
Referenced by decode_frame().
|
static |
Definition at line 2782 of file sanm.c.
Referenced by decode_frame().
|
static |
|
static |
Definition at line 37 of file sanm.c.
Referenced by decode_init().
|
static |
Definition at line 41 of file sanm.c.
Referenced by decode_init().
|
static |
Definition at line 45 of file sanm.c.
Referenced by decode_init().
|
static |
Definition at line 49 of file sanm.c.
Referenced by decode_init().
|
static |
Definition at line 54 of file sanm.c.
Referenced by bl16_block(), and codec47_block().
|
static |
Definition at line 109 of file sanm.c.
Referenced by codec48_block(), and old_codec37().
| const FFCodec ff_sanm_decoder |
1.8.17