FFmpeg
4.0
|
TDSC decoder. More...
#include <stdint.h>
#include <zlib.h>
#include "libavutil/imgutils.h"
#include "avcodec.h"
#include "bytestream.h"
#include "internal.h"
Go to the source code of this file.
Data Structures | |
struct | TDSCContext |
Macros | |
#define | BITMAPINFOHEADER_SIZE 0x28 |
#define | TDSF_HEADER_SIZE 0x56 |
#define | TDSB_HEADER_SIZE 0x08 |
#define | APPLY_ALPHA(src, new, alpha) src = (src * (256 - alpha) + new * alpha) >> 8 |
Enumerations | |
enum | TDSCCursorFormat { CUR_FMT_MONO = 0x01010004, CUR_FMT_BGRA = 0x20010004, CUR_FMT_RGBA = 0x20010008 } |
Functions | |
static av_cold int | tdsc_close (AVCodecContext *avctx) |
static av_cold int | tdsc_init (AVCodecContext *avctx) |
static void | tdsc_paint_cursor (AVCodecContext *avctx, uint8_t *dst, int stride) |
static int | tdsc_load_cursor (AVCodecContext *avctx) |
static void | tdsc_yuv2rgb (uint8_t *out, int Y, int U, int V) |
static av_always_inline void | tdsc_blit (uint8_t *dst, int dst_stride, const uint8_t *srcy, int srcy_stride, const uint8_t *srcu, const uint8_t *srcv, int srcuv_stride, int width, int height) |
static int | tdsc_decode_jpeg_tile (AVCodecContext *avctx, int tile_size, int x, int y, int w, int h) |
static int | tdsc_decode_tiles (AVCodecContext *avctx, int number_tiles) |
static int | tdsc_parse_tdsf (AVCodecContext *avctx, int number_tiles) |
static int | tdsc_parse_dtsm (AVCodecContext *avctx) |
static int | tdsc_decode_frame (AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt) |
Variables | |
AVCodec | ff_tdsc_decoder |
TDSC decoder.
Fourcc: TSDC
TDSC is very simple. It codes picture by tiles, storing them in raw BGR24 format or compressing them in JPEG. Frames can be full pictures or just updates to the previous frame. Cursor is found in its own frame or at the bottom of the picture. Every frame is then packed with zlib.
Supports: BGR24
Definition in file tdsc.c.
#define BITMAPINFOHEADER_SIZE 0x28 |
Definition at line 45 of file tdsc.c.
Referenced by tdsc_parse_tdsf().
#define TDSF_HEADER_SIZE 0x56 |
Definition at line 46 of file tdsc.c.
Referenced by tdsc_decode_frame().
#define TDSB_HEADER_SIZE 0x08 |
Definition at line 47 of file tdsc.c.
Referenced by tdsc_decode_tiles().
Definition at line 138 of file tdsc.c.
Referenced by tdsc_paint_cursor().
enum TDSCCursorFormat |
|
static |
|
static |
|
static |
Definition at line 142 of file tdsc.c.
Referenced by tdsc_decode_frame().
|
static |
Definition at line 187 of file tdsc.c.
Referenced by tdsc_parse_dtsm().
Definition at line 314 of file tdsc.c.
Referenced by tdsc_blit().
|
static |
Definition at line 322 of file tdsc.c.
Referenced by tdsc_decode_jpeg_tile().
|
static |
Definition at line 341 of file tdsc.c.
Referenced by tdsc_decode_tiles().
|
static |
Definition at line 384 of file tdsc.c.
Referenced by tdsc_parse_tdsf().
|
static |
Definition at line 453 of file tdsc.c.
Referenced by tdsc_decode_frame().
|
static |
Definition at line 496 of file tdsc.c.
Referenced by tdsc_decode_frame().
|
static |
AVCodec ff_tdsc_decoder |