libavcodec/fraps.c File Reference

Lossless Fraps 'FPS1' decoder. More...

#include "avcodec.h"
#include "get_bits.h"
#include "huffman.h"
#include "bytestream.h"
#include "dsputil.h"
#include "thread.h"

Go to the source code of this file.

Data Structures

struct  FrapsContext
 local variable storage More...

Defines

#define FPS_TAG   MKTAG('F', 'P', 'S', 'x')

Functions

static av_cold int decode_init (AVCodecContext *avctx)
 initializes decoder
static int huff_cmp (const void *va, const void *vb)
 Comparator - our nodes should ascend by count but with preserved symbol order.
static int fraps2_decode_plane (FrapsContext *s, uint8_t *dst, int stride, int w, int h, const uint8_t *src, int size, int Uoff, const int step)
 decode Fraps v2 packed plane
static int decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
static av_cold int decode_end (AVCodecContext *avctx)
 closes decoder

Variables

AVCodec ff_fraps_decoder


Detailed Description

Lossless Fraps 'FPS1' decoder.

Author:
Roine Gustafsson (roine at users sf net)

Konstantin Shishkov

Codec algorithm for version 0 is taken from Transcode <www.transcoding.org>

Version 2 files support by Konstantin Shishkov

Definition in file fraps.c.


Define Documentation

#define FPS_TAG   MKTAG('F', 'P', 'S', 'x')

Definition at line 41 of file fraps.c.

Referenced by decode_frame().


Function Documentation

static av_cold int decode_end ( AVCodecContext avctx  )  [static]

closes decoder

Parameters:
avctx codec context
Returns:
0 on success or negative if fails

Definition at line 304 of file fraps.c.

static int decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
AVPacket avpkt 
) [static]

Fraps v2 is Huffman-coded YUV420 planes Fraps v4 is virtually the same

Definition at line 127 of file fraps.c.

static av_cold int decode_init ( AVCodecContext avctx  )  [static]

initializes decoder

Parameters:
avctx codec context
Returns:
0 on success or negative if fails

Definition at line 60 of file fraps.c.

static int fraps2_decode_plane ( FrapsContext s,
uint8_t dst,
int  stride,
int  w,
int  h,
const uint8_t src,
int  size,
int  Uoff,
const int  step 
) [static]

decode Fraps v2 packed plane

Definition at line 87 of file fraps.c.

Referenced by decode_frame().

static int huff_cmp ( const void *  va,
const void *  vb 
) [static]

Comparator - our nodes should ascend by count but with preserved symbol order.

Definition at line 79 of file fraps.c.

Referenced by build_huff(), and fraps2_decode_plane().


Variable Documentation

Initial value:

 {
    .name           = "fraps",
    .type           = AVMEDIA_TYPE_VIDEO,
    .id             = CODEC_ID_FRAPS,
    .priv_data_size = sizeof(FrapsContext),
    .init           = decode_init,
    .close          = decode_end,
    .decode         = decode_frame,
    .capabilities   = CODEC_CAP_DR1 | CODEC_CAP_FRAME_THREADS,
    .long_name      = NULL_IF_CONFIG_SMALL("Fraps"),
}

Definition at line 316 of file fraps.c.


Generated on Fri Oct 26 02:47:56 2012 for FFmpeg by  doxygen 1.5.8