Logo Search packages:      
Sourcecode: blender version File versions  Download package

lcl.c File Reference

Detailed Description

LCL (LossLess Codec Library) Video Codec Decoder for MSZH and ZLIB codecs Experimental encoder for ZLIB RGB24

Fourcc: MSZH, ZLIB

Original Win32 dll: Ver2.23 By Kenji Oshima 2000.09.20 avimszh.dll, avizlib.dll

A description of the decoding algorithm can be found here: http://www.pcisys.net/~melanson/codecs

Supports: BGR24 (RGB 24bpp)

Definition in file lcl.c.

#include <stdio.h>
#include <stdlib.h>
#include "common.h"
#include "bitstream.h"
#include "avcodec.h"

Go to the source code of this file.


struct  LclContext


#define BMPTYPE_RGB   2
#define BMPTYPE_YUV   1
#define CODEC_MSZH   1
#define CODEC_ZLIB   3
#define COMP_MSZH   0
#define COMP_MSZH_NOCOMP   1
#define COMP_ZLIB_HICOMP   9
#define COMP_ZLIB_NORMAL   -1
#define FLAG_NULLFRAME   2
#define FLAG_PNGFILTER   4
#define FLAGMASK_UNUSED   0xf8
#define FOURCC_MSZH   mmioFOURCC('M','S','Z','H')
#define FOURCC_ZLIB   mmioFOURCC('Z','L','I','B')
#define IMGTYPE_RGB24   2
#define IMGTYPE_YUV111   0
#define IMGTYPE_YUV211   4
#define IMGTYPE_YUV411   3
#define IMGTYPE_YUV420   5
#define IMGTYPE_YUV422   1


static int decode_end (AVCodecContext *avctx)
static int decode_frame (AVCodecContext *avctx, void *data, int *data_size, uint8_t *buf, int buf_size)
static int decode_init (AVCodecContext *avctx)
static int encode_end (AVCodecContext *avctx)
static int encode_frame (AVCodecContext *avctx, unsigned char *buf, int buf_size, void *data)
static int encode_init (AVCodecContext *avctx)
static unsigned char fix (int pix14)
static unsigned char get_b (unsigned char yq, signed char bq)
static unsigned char get_g (unsigned char yq, signed char bq, signed char rq)
static unsigned char get_r (unsigned char yq, signed char rq)
static unsigned int mszh_decomp (unsigned char *srcptr, int srclen, unsigned char *destptr, unsigned int destsize)


AVCodec mszh_decoder
AVCodec zlib_decoder

Generated by  Doxygen 1.6.0   Back to index