FFmpeg
|
#include <string.h>
#include "libavutil/imgutils.h"
#include "libavutil/internal.h"
#include "avcodec.h"
#include "codec_internal.h"
#include "decode.h"
Go to the source code of this file.
Data Structures | |
struct | YopDecContext |
Functions | |
static av_cold int | yop_decode_close (AVCodecContext *avctx) |
static av_cold int | yop_decode_init (AVCodecContext *avctx) |
static int | yop_paint_block (YopDecContext *s, int linesize, int tag) |
Paint a macroblock using the pattern in paint_lut. More... | |
static int | yop_copy_previous_block (YopDecContext *s, int linesize, int copy_tag) |
Copy a previously painted macroblock to the current_block. More... | |
static uint8_t | yop_get_next_nibble (YopDecContext *s) |
Return the next nibble in sequence, consuming a new byte on the input only if necessary. More... | |
static int | yop_decode_frame (AVCodecContext *avctx, AVFrame *rframe, int *got_frame, AVPacket *avpkt) |
Variables | |
static const uint8_t | paint_lut [15][4] |
Lookup table for painting macroblocks. More... | |
static const int8_t | motion_vector [16][2] |
Lookup table for copying macroblocks. More... | |
const FFCodec | ff_yop_decoder |
|
static |
|
static |
|
static |
Paint a macroblock using the pattern in paint_lut.
s | codec context |
tag | the tag that was in the nibble |
Definition at line 134 of file yop.c.
Referenced by yop_decode_frame().
|
static |
Copy a previously painted macroblock to the current_block.
copy_tag | the tag that was in the nibble |
Definition at line 155 of file yop.c.
Referenced by yop_decode_frame().
|
static |
Return the next nibble in sequence, consuming a new byte on the input only if necessary.
Definition at line 179 of file yop.c.
Referenced by yop_decode_frame().
|
static |
|
static |
Lookup table for painting macroblocks.
Bytes 0-2 of each entry contain the macroblock positions to be painted (taken as (0, B0, B1, B2)). Byte 3 contains the number of bytes consumed on the input, equal to max(bytes 0-2) + 1.
Definition at line 58 of file yop.c.
Referenced by yop_paint_block().
|
static |
Lookup table for copying macroblocks.
Each entry contains the respective x and y pixel offset for the copy source.
Definition at line 73 of file yop.c.
Referenced by yop_copy_previous_block().
const FFCodec ff_yop_decoder |