hvirtual/quicktime/ffmpeg/libavcodec/vmdav.c File Reference

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

Include dependency graph for vmdav.c:

Go to the source code of this file.

Data Structures

struct  VmdVideoContext
struct  VmdAudioContext

Defines

#define VMD_HEADER_SIZE   0x330
#define PALETTE_COUNT   256
#define QUEUE_SIZE   0x1000
#define QUEUE_MASK   0x0FFF

Functions

static void lz_unpack (unsigned char *src, unsigned char *dest)
static int rle_unpack (unsigned char *src, unsigned char *dest, int len)
static void vmd_decode (VmdVideoContext *s)
static int vmdvideo_decode_init (AVCodecContext *avctx)
static int vmdvideo_decode_frame (AVCodecContext *avctx, void *data, int *data_size, uint8_t *buf, int buf_size)
static int vmdvideo_decode_end (AVCodecContext *avctx)
static int vmdaudio_decode_init (AVCodecContext *avctx)
static void vmdaudio_decode_audio (VmdAudioContext *s, unsigned char *data, uint8_t *buf, int ratio)
static int vmdaudio_loadsound (VmdAudioContext *s, unsigned char *data, uint8_t *buf, int silence)
static int vmdaudio_decode_frame (AVCodecContext *avctx, void *data, int *data_size, uint8_t *buf, int buf_size)

Variables

AVCodec vmdvideo_decoder
AVCodec vmdaudio_decoder


Define Documentation

#define PALETTE_COUNT   256

Definition at line 51 of file vmdav.c.

#define QUEUE_MASK   0x0FFF

Definition at line 73 of file vmdav.c.

Referenced by lz_unpack().

#define QUEUE_SIZE   0x1000

Definition at line 72 of file vmdav.c.

Referenced by lz_unpack().

#define VMD_HEADER_SIZE   0x330

Definition at line 50 of file vmdav.c.

Referenced by vmdvideo_decode_init().


Function Documentation

static void lz_unpack ( unsigned char *  src,
unsigned char *  dest 
) [static]

Definition at line 75 of file vmdav.c.

References LE_32, QUEUE_MASK, QUEUE_SIZE, and s.

Referenced by vmd_decode().

static int rle_unpack ( unsigned char *  src,
unsigned char *  dest,
int  len 
) [static]

Definition at line 137 of file vmdav.c.

References memcpy.

Referenced by vmd_decode().

static void vmd_decode ( VmdVideoContext s  )  [static]

static void vmdaudio_decode_audio ( VmdAudioContext s,
unsigned char *  data,
uint8_t *  buf,
int  ratio 
) [static]

Definition at line 456 of file vmdav.c.

Referenced by vmdaudio_loadsound().

static int vmdaudio_decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
uint8_t *  buf,
int  buf_size 
) [static]

Definition at line 507 of file vmdav.c.

References VmdAudioContext::bits, VmdAudioContext::block_align, LE_32, AVCodecContext::priv_data, s, and vmdaudio_loadsound().

Here is the call graph for this function:

static int vmdaudio_decode_init ( AVCodecContext avctx  )  [static]

static int vmdaudio_loadsound ( VmdAudioContext s,
unsigned char *  data,
uint8_t *  buf,
int  silence 
) [static]

Definition at line 461 of file vmdav.c.

References av_log(), AV_LOG_INFO, VmdAudioContext::avctx, VmdAudioContext::bits, VmdAudioContext::block_align, VmdAudioContext::channels, and vmdaudio_decode_audio().

Referenced by vmdaudio_decode_frame().

Here is the call graph for this function:

static int vmdvideo_decode_end ( AVCodecContext avctx  )  [static]

Definition at line 372 of file vmdav.c.

References av_free(), VmdVideoContext::prev_frame, AVCodecContext::priv_data, AVCodecContext::release_buffer, s, and VmdVideoContext::unpack_buffer.

Here is the call graph for this function:

static int vmdvideo_decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
uint8_t *  buf,
int  buf_size 
) [static]

static int vmdvideo_decode_init ( AVCodecContext avctx  )  [static]


Variable Documentation

Initial value:

Definition at line 569 of file vmdav.c.

Referenced by avcodec_register_all().


Generated on Mon Apr 28 14:06:29 2008 for Cinelerra by  doxygen 1.5.5