FFmpeg
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "avcodec.h"
#include "codec_internal.h"
#include "decode.h"
#include "libavutil/imgutils.h"
#include "libavutil/internal.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/mem.h"
#include "truemotion1data.h"
Go to the source code of this file.
Data Structures | |
struct | TrueMotion1Context |
struct | frame_header |
struct | comp_types |
Macros | |
#define | FLAG_SPRITE 32 |
#define | FLAG_KEYFRAME 16 |
#define | FLAG_INTERFRAME 8 |
#define | FLAG_INTERPOLATED 4 |
#define | ALGO_NOP 0 |
#define | ALGO_RGB16V 1 |
#define | ALGO_RGB16H 2 |
#define | ALGO_RGB24H 3 |
#define | BLOCK_2x2 0 |
#define | BLOCK_2x4 1 |
#define | BLOCK_4x2 2 |
#define | BLOCK_4x4 3 |
#define | GET_NEXT_INDEX() |
#define | INC_INDEX |
#define | APPLY_C_PREDICTOR() |
#define | APPLY_C_PREDICTOR_24() |
#define | APPLY_Y_PREDICTOR() |
#define | APPLY_Y_PREDICTOR_24() |
#define | OUTPUT_PIXEL_PAIR() |
Functions | |
static void | select_delta_tables (TrueMotion1Context *s, int delta_table_index) |
static int | make_ydt15_entry (int p1, int p2, int16_t *ydt) |
static int | make_cdt15_entry (int p1, int p2, int16_t *cdt) |
static int | make_ydt16_entry (int p1, int p2, int16_t *ydt) |
static int | make_cdt16_entry (int p1, int p2, int16_t *cdt) |
static int | make_ydt24_entry (int p1, int p2, int16_t *ydt) |
static int | make_cdt24_entry (int p1, int p2, int16_t *cdt) |
static void | gen_vector_table15 (TrueMotion1Context *s, const uint8_t *sel_vector_table) |
static void | gen_vector_table16 (TrueMotion1Context *s, const uint8_t *sel_vector_table) |
static void | gen_vector_table24 (TrueMotion1Context *s, const uint8_t *sel_vector_table) |
static int | truemotion1_decode_header (TrueMotion1Context *s) |
static av_cold int | truemotion1_decode_init (AVCodecContext *avctx) |
static void | truemotion1_decode_16bit (TrueMotion1Context *s) |
static void | truemotion1_decode_24bit (TrueMotion1Context *s) |
static int | truemotion1_decode_frame (AVCodecContext *avctx, AVFrame *rframe, int *got_frame, AVPacket *avpkt) |
static av_cold int | truemotion1_decode_end (AVCodecContext *avctx) |
Variables | |
static const comp_types | compression_types [17] |
const FFCodec | ff_truemotion1_decoder |
Duck TrueMotion v1 Video Decoder by Alex Beregszaszi and Mike Melanson (melan) son@ pcisy s.ne t
The TrueMotion v1 decoder presently only decodes 16-bit TM1 data and outputs RGB555 (or RGB565) data. 24-bit TM1 data is not supported yet.
Definition in file truemotion1.c.
#define FLAG_SPRITE 32 |
Definition at line 83 of file truemotion1.c.
#define FLAG_KEYFRAME 16 |
Definition at line 84 of file truemotion1.c.
#define FLAG_INTERFRAME 8 |
Definition at line 85 of file truemotion1.c.
#define FLAG_INTERPOLATED 4 |
Definition at line 86 of file truemotion1.c.
#define ALGO_NOP 0 |
Definition at line 106 of file truemotion1.c.
#define ALGO_RGB16V 1 |
Definition at line 107 of file truemotion1.c.
#define ALGO_RGB16H 2 |
Definition at line 108 of file truemotion1.c.
#define ALGO_RGB24H 3 |
Definition at line 109 of file truemotion1.c.
#define BLOCK_2x2 0 |
Definition at line 112 of file truemotion1.c.
#define BLOCK_2x4 1 |
Definition at line 113 of file truemotion1.c.
#define BLOCK_4x2 2 |
Definition at line 114 of file truemotion1.c.
#define BLOCK_4x4 3 |
Definition at line 115 of file truemotion1.c.
#define GET_NEXT_INDEX | ( | ) |
Definition at line 532 of file truemotion1.c.
#define INC_INDEX |
Definition at line 541 of file truemotion1.c.
#define APPLY_C_PREDICTOR | ( | ) |
#define APPLY_C_PREDICTOR_24 | ( | ) |
#define APPLY_Y_PREDICTOR | ( | ) |
#define APPLY_Y_PREDICTOR_24 | ( | ) |
#define OUTPUT_PIXEL_PAIR | ( | ) |
Definition at line 619 of file truemotion1.c.
|
static |
Definition at line 149 of file truemotion1.c.
Referenced by truemotion1_decode_header().
|
static |
Definition at line 175 of file truemotion1.c.
Referenced by gen_vector_table15().
|
static |
Definition at line 187 of file truemotion1.c.
Referenced by gen_vector_table15().
|
static |
Definition at line 200 of file truemotion1.c.
Referenced by gen_vector_table16().
|
static |
Definition at line 212 of file truemotion1.c.
Referenced by gen_vector_table16().
|
static |
Definition at line 222 of file truemotion1.c.
Referenced by gen_vector_table24().
|
static |
Definition at line 231 of file truemotion1.c.
Referenced by gen_vector_table24().
|
static |
Definition at line 240 of file truemotion1.c.
Referenced by truemotion1_decode_header().
|
static |
Definition at line 261 of file truemotion1.c.
Referenced by truemotion1_decode_header().
|
static |
Definition at line 282 of file truemotion1.c.
Referenced by truemotion1_decode_header().
|
static |
Definition at line 311 of file truemotion1.c.
Referenced by truemotion1_decode_frame().
|
static |
Definition at line 481 of file truemotion1.c.
|
static |
Definition at line 623 of file truemotion1.c.
Referenced by truemotion1_decode_frame().
|
static |
Definition at line 750 of file truemotion1.c.
Referenced by truemotion1_decode_frame().
|
static |
Definition at line 877 of file truemotion1.c.
|
static |
Definition at line 908 of file truemotion1.c.
|
static |
Definition at line 125 of file truemotion1.c.
Referenced by truemotion1_decode_frame(), and truemotion1_decode_header().
const FFCodec ff_truemotion1_decoder |
Definition at line 918 of file truemotion1.c.