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, g) bb.bits = 7; bb.bitbuf = bytestream2_get_byte(g); |
| #define | kmvc_getbit(bb, g, res) |
Typedefs | |
| typedef struct KmvcContext | KmvcContext |
| typedef struct BitBuf | BitBuf |
Functions | |
| static int | kmvc_decode_intra_8x8 (KmvcContext *ctx, int w, int h) |
| static int | kmvc_decode_inter_8x8 (KmvcContext *ctx, int w, int h) |
| static int | decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt) |
| static av_cold int | decode_init (AVCodecContext *avctx) |
| static av_cold int | decode_end (AVCodecContext *avctx) |
Variables | |
| AVCodec | ff_kmvc_decoder |
Karl Morton's Video Codec decoder.
Definition in file kmvc.c.
Definition at line 58 of file kmvc.c.
Referenced by kmvc_decode_inter_8x8(), and kmvc_decode_intra_8x8().
| #define kmvc_getbit | ( | bb, | ||
| g, | ||||
| res | ||||
| ) |
{\
res = 0; \
if (bb.bitbuf & (1 << bb.bits)) res = 1; \
bb.bits--; \
if(bb.bits == -1) { \
bb.bitbuf = bytestream2_get_byte(g); \
bb.bits = 7; \
} \
}
Definition at line 62 of file kmvc.c.
Referenced by kmvc_decode_inter_8x8(), and kmvc_decode_intra_8x8().
Definition at line 60 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, | |||
| AVPacket * | avpkt | |||
| ) | [static] |
| static av_cold int decode_init | ( | AVCodecContext * | avctx | ) | [static] |
| static int kmvc_decode_inter_8x8 | ( | KmvcContext * | ctx, | |
| int | w, | |||
| int | h | |||
| ) | [static] |
Definition at line 153 of file kmvc.c.
Referenced by decode_frame().
| static int kmvc_decode_intra_8x8 | ( | KmvcContext * | ctx, | |
| int | w, | |||
| int | h | |||
| ) | [static] |
Definition at line 72 of file kmvc.c.
Referenced by decode_frame().
{
.name = "kmvc",
.type = AVMEDIA_TYPE_VIDEO,
.id = CODEC_ID_KMVC,
.priv_data_size = sizeof(KmvcContext),
.init = decode_init,
.close = decode_end,
.decode = decode_frame,
.capabilities = CODEC_CAP_DR1,
.long_name = NULL_IF_CONFIG_SMALL("Karl Morton's video codec"),
}