Karl Morton's Video Codec decoder. More...
#include <stdio.h>#include <stdlib.h>#include "avcodec.h"#include "bytestream.h"Go to the source code of this file.
Data Structures | |
| struct | KmvcContext |
| struct | BitBuf |
Defines | |
| #define | KMVC_KEYFRAME 0x80 |
| #define | KMVC_PALETTE 0x40 |
| #define | KMVC_METHOD 0x0F |
| #define | MAX_PALSIZE 256 |
| #define | BLK(data, x, y) data[(x) + (y) * 320] |
| #define | kmvc_init_getbits(bb, src) bb.bits = 7; bb.bitbuf = *src++; |
| #define | kmvc_getbit(bb, src, res) |
Typedefs | |
| typedef struct KmvcContext | KmvcContext |
| typedef struct BitBuf | BitBuf |
Functions | |
| static void | kmvc_decode_intra_8x8 (KmvcContext *ctx, const uint8_t *src, int w, int h) |
| static void | kmvc_decode_inter_8x8 (KmvcContext *ctx, const uint8_t *src, int w, int h) |
| static int | decode_frame (AVCodecContext *avctx, void *data, int *data_size, const uint8_t *buf, int buf_size) |
| static av_cold int | decode_init (AVCodecContext *avctx) |
| static av_cold int | decode_end (AVCodecContext *avctx) |
Variables | |
| AVCodec | kmvc_decoder |
Karl Morton's Video Codec decoder.
Definition in file kmvc.c.
| #define BLK | ( | data, | ||
| x, | ||||
| y | ||||
| ) | data[(x) + (y) * 320] |
Definition at line 57 of file kmvc.c.
Referenced by kmvc_decode_inter_8x8(), and kmvc_decode_intra_8x8().
| #define kmvc_getbit | ( | bb, | ||
| src, | ||||
| res | ||||
| ) |
{\
res = 0; \
if (bb.bitbuf & (1 << bb.bits)) res = 1; \
bb.bits--; \
if(bb.bits == -1) { \
bb.bitbuf = *src++; \
bb.bits = 7; \
} \
}
Definition at line 61 of file kmvc.c.
Referenced by kmvc_decode_inter_8x8(), and kmvc_decode_intra_8x8().
Definition at line 59 of file kmvc.c.
Referenced by kmvc_decode_inter_8x8(), and kmvc_decode_intra_8x8().
| #define KMVC_KEYFRAME 0x80 |
Definition at line 33 of file kmvc.c.
Referenced by decode_frame().
| #define KMVC_METHOD 0x0F |
Definition at line 35 of file kmvc.c.
Referenced by decode_frame().
| #define KMVC_PALETTE 0x40 |
Definition at line 34 of file kmvc.c.
Referenced by decode_frame().
| #define MAX_PALSIZE 256 |
Definition at line 36 of file kmvc.c.
Referenced by decode_init().
| typedef struct KmvcContext KmvcContext |
| static av_cold int decode_end | ( | AVCodecContext * | avctx | ) | [static] |
| static int decode_frame | ( | AVCodecContext * | avctx, | |
| void * | data, | |||
| int * | data_size, | |||
| const uint8_t * | buf, | |||
| int | buf_size | |||
| ) | [static] |
| static av_cold int decode_init | ( | AVCodecContext * | avctx | ) | [static] |
| static void kmvc_decode_inter_8x8 | ( | KmvcContext * | ctx, | |
| const uint8_t * | src, | |||
| int | w, | |||
| int | h | |||
| ) | [static] |
Definition at line 146 of file kmvc.c.
Referenced by decode_frame().
| static void kmvc_decode_intra_8x8 | ( | KmvcContext * | ctx, | |
| const uint8_t * | src, | |||
| int | w, | |||
| int | h | |||
| ) | [static] |
Definition at line 71 of file kmvc.c.
Referenced by decode_frame().
{
"kmvc",
CODEC_TYPE_VIDEO,
CODEC_ID_KMVC,
sizeof(KmvcContext),
decode_init,
NULL,
decode_end,
decode_frame,
.long_name = NULL_IF_CONFIG_SMALL("Karl Morton's video codec"),
}
1.7.1