Logo Search packages:      
Sourcecode: blender version File versions

ffv1.c File Reference


Detailed Description

FF Video Codec 1 (an experimental lossless codec)

Definition in file ffv1.c.

#include "common.h"
#include "bitstream.h"
#include "avcodec.h"
#include "dsputil.h"
#include "rangecoder.h"
#include "golomb.h"

Go to the source code of this file.

Classes

struct  FFV1Context
struct  PlaneContext
struct  VlcState

Defines

#define CONTEXT_SIZE   32
#define MAX_PLANES   4

Functions

static void clear_state (FFV1Context *f)
static int common_end (AVCodecContext *avctx)
static int common_init (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 void decode_line (FFV1Context *s, int w, int_fast16_t *sample[2], int plane_index, int bits)
static void decode_plane (FFV1Context *s, uint8_t *src, int w, int h, int stride, int plane_index)
static void decode_rgb_frame (FFV1Context *s, uint32_t *src, int w, int h, int stride)
static int encode_frame (AVCodecContext *avctx, unsigned char *buf, int buf_size, void *data)
static int encode_init (AVCodecContext *avctx)
static int encode_line (FFV1Context *s, int w, int_fast16_t *sample[2], int plane_index, int bits)
static void encode_plane (FFV1Context *s, uint8_t *src, int w, int h, int stride, int plane_index)
static void encode_rgb_frame (FFV1Context *s, uint32_t *src, int w, int h, int stride)
static always_inline int fold (int diff, int bits)
static int get_context (FFV1Context *f, int_fast16_t *src, int_fast16_t *last, int_fast16_t *last2)
static int get_symbol (RangeCoder *c, uint8_t *state, int is_signed)
static int get_vlc_symbol (GetBitContext *gb, VlcState *const state, int bits)
static int predict (int_fast16_t *src, int_fast16_t *last)
static void put_symbol (RangeCoder *c, uint8_t *state, int v, int is_signed)
static void put_vlc_symbol (PutBitContext *pb, VlcState *const state, int v, int bits)
static int read_header (FFV1Context *f)
static int read_quant_table (RangeCoder *c, int16_t *quant_table, int scale)
static void update_vlc_state (VlcState *const state, const int v)
static void write_header (FFV1Context *f)
static void write_quant_table (RangeCoder *c, int16_t *quant_table)

Variables

AVCodec ffv1_decoder
static const uint8_t log2_run [32]
static const int8_t quant11 [256]
static const int8_t quant13 [256]
static const int8_t quant3 [256]
static const int8_t quant5 [256]
static const int8_t quant7 [256]
static const int8_t quant9 [256]


Generated by  Doxygen 1.6.0   Back to index