FFmpeg
Classes | Macros | Typedefs | Variables
kmvc.c File Reference

Karl Morton's Video Codec decoder. More...

#include <stdio.h>
#include <stdlib.h>
#include "avcodec.h"
#include "bytestream.h"
#include "internal.h"
#include "libavutil/common.h"

Classes

struct  KmvcContext
 
struct  BitBuf
 

Macros

#define KMVC_KEYFRAME   0x80
 
#define KMVC_PALETTE   0x40
 
#define KMVC_METHOD   0x0F
 
#define MAX_PALSIZE   256
 
#define BLK(data, x, y)   data[av_clip((x) + (y) * 320, 0, 320 * 200 -1)]
 
#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
 

Variables

AVCodec ff_kmvc_decoder
 

Detailed Description

Karl Morton's Video Codec decoder.

Macro Definition Documentation

§ kmvc_getbit

#define kmvc_getbit (   bb,
  g,
  res 
)
Value:
{\
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; \
} \
}

Variable Documentation

§ ff_kmvc_decoder

AVCodec ff_kmvc_decoder
Initial value:
= {
.name = "kmvc",
.long_name = NULL_IF_CONFIG_SMALL("Karl Morton's video codec"),
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_KMVC,
.priv_data_size = sizeof(KmvcContext),
.init = decode_init,
.decode = decode_frame,
.capabilities = AV_CODEC_CAP_DR1,
}
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
Definition: kmvc.c:43
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:959