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

interplayvideo.c File Reference


Detailed Description

Interplay MVE Video Decoder by Mike Melanson (melanson@pcisys.net) For more information about the Interplay MVE format, visit: http://www.pcisys.net/~melanson/codecs/interplay-mve.txt This code is written in such a way that the identifiers match up with the encoding descriptions in the document.

This decoder presently only supports a PAL8 output colorspace.

An Interplay video frame consists of 2 parts: The decoding map and the video data. A demuxer must load these 2 parts together in a single buffer before sending it through the stream to this decoder.

Definition in file interplayvideo.c.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include "common.h"
#include "avcodec.h"
#include "dsputil.h"

Go to the source code of this file.

Classes

struct  IpvideoContext

Defines

#define CHECK_STREAM_PTR(n)
#define COPY_FROM_CURRENT()
#define COPY_FROM_PREVIOUS()
#define COPY_FROM_SECOND_LAST()
#define DEBUG_INTERPLAY   0
#define PALETTE_COUNT   256

Functions

static void debug_interplay (const char *format,...)
static int ipvideo_decode_block_opcode_0x0 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x1 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x2 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x3 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x4 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x5 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x6 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x7 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x8 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0x9 (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0xA (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0xB (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0xC (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0xD (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0xE (IpvideoContext *s)
static int ipvideo_decode_block_opcode_0xF (IpvideoContext *s)
static int ipvideo_decode_end (AVCodecContext *avctx)
static int ipvideo_decode_frame (AVCodecContext *avctx, void *data, int *data_size, uint8_t *buf, int buf_size)
static int ipvideo_decode_init (AVCodecContext *avctx)
static void ipvideo_decode_opcodes (IpvideoContext *s)

Variables

AVCodec interplay_video_decoder
static int(* ipvideo_decode_block [16])(IpvideoContext *s)


Generated by  Doxygen 1.6.0   Back to index