FF Video Codec 1 (a lossless codec) More...
#include "avcodec.h"#include "get_bits.h"#include "put_bits.h"#include "dsputil.h"#include "rangecoder.h"#include "golomb.h"#include "mathops.h"#include "libavutil/avassert.h"Go to the source code of this file.
Data Structures | |
| struct | VlcState |
| struct | PlaneContext |
| struct | FFV1Context |
Macros | |
| #define | MAX_PLANES 4 |
| #define | CONTEXT_SIZE 32 |
| #define | MAX_QUANT_TABLES 8 |
| #define | MAX_CONTEXT_INPUTS 5 |
| #define | MAX_SLICES 256 |
| #define | put_rac(C, S, B) |
Typedefs | |
| typedef struct VlcState | VlcState |
| typedef struct PlaneContext | PlaneContext |
| typedef struct FFV1Context | FFV1Context |
Functions | |
| static av_always_inline int | fold (int diff, int bits) |
| static int | predict (int16_t *src, int16_t *last) |
| static int | get_context (PlaneContext *p, int16_t *src, int16_t *last, int16_t *last2) |
| static void | find_best_state (uint8_t best_state[256][256], const uint8_t one_state[256]) |
| static av_always_inline av_flatten void | put_symbol_inline (RangeCoder *c, uint8_t *state, int v, int is_signed, uint64_t rc_stat[256][2], uint64_t rc_stat2[32][2]) |
| static void av_noinline | put_symbol (RangeCoder *c, uint8_t *state, int v, int is_signed) |
| static av_flatten int | get_symbol_inline (RangeCoder *c, uint8_t *state, int is_signed) |
| static int av_noinline | get_symbol (RangeCoder *c, uint8_t *state, int is_signed) |
| static void | update_vlc_state (VlcState *const state, const int v) |
| static void | put_vlc_symbol (PutBitContext *pb, VlcState *const state, int v, int bits) |
| static int | get_vlc_symbol (GetBitContext *gb, VlcState *const state, int bits) |
| static av_cold int | common_init (AVCodecContext *avctx) |
| static int | init_slice_state (FFV1Context *f) |
| static av_cold int | init_slice_contexts (FFV1Context *f) |
| static int | allocate_initial_states (FFV1Context *f) |
| static void | clear_state (FFV1Context *f) |
| static av_cold int | common_end (AVCodecContext *avctx) |
| static av_always_inline void | decode_line (FFV1Context *s, int w, int16_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 | decode_slice (AVCodecContext *c, void *arg) |
| static int | read_quant_table (RangeCoder *c, int16_t *quant_table, int scale) |
| static int | read_quant_tables (RangeCoder *c, int16_t quant_table[MAX_CONTEXT_INPUTS][256]) |
| static int | read_extra_header (FFV1Context *f) |
| static int | read_header (FFV1Context *f) |
| static av_cold int | decode_init (AVCodecContext *avctx) |
| static int | decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt) |
Variables | |
| const uint8_t | ff_log2_run [41] |
| static const int8_t | quant5_10bit [256] |
| static const int8_t | quant5 [256] |
| static const int8_t | quant9_10bit [256] |
| static const int8_t | quant11 [256] |
| static const uint8_t | ver2_state [256] |
| AVCodec | ff_ffv1_decoder |
FF Video Codec 1 (a lossless codec)
Definition in file ffv1.c.
| #define CONTEXT_SIZE 32 |
Definition at line 38 of file ffv1.c.
Referenced by init_slice_state(), read_extra_header(), read_header(), and read_quant_table().
| #define MAX_QUANT_TABLES 8 |
Definition at line 40 of file ffv1.c.
Referenced by read_extra_header().
| #define MAX_SLICES 256 |
Definition at line 156 of file ffv1.c.
Referenced by read_header().
Referenced by put_symbol(), put_symbol2(), and put_symbol_inline().
| typedef struct FFV1Context FFV1Context |
| typedef struct PlaneContext PlaneContext |
|
static |
Definition at line 740 of file ffv1.c.
Referenced by read_extra_header().
|
static |
Definition at line 1031 of file ffv1.c.
Referenced by decode_frame().
|
static |
|
static |
Definition at line 656 of file ffv1.c.
Referenced by decode_init().
|
static |
|
static |
|
static |
Definition at line 1246 of file ffv1.c.
Referenced by decode_plane(), and decode_rgb_frame().
|
static |
Definition at line 1307 of file ffv1.c.
Referenced by decode_slice().
|
static |
Definition at line 1342 of file ffv1.c.
Referenced by decode_slice().
|
static |
Definition at line 1384 of file ffv1.c.
Referenced by decode_frame().
|
static |
|
static |
Definition at line 198 of file ffv1.c.
Referenced by get_vlc_symbol(), and put_vlc_symbol().
|
inlinestatic |
Definition at line 219 of file ffv1.c.
Referenced by decode_line().
|
static |
Definition at line 349 of file ffv1.c.
Referenced by decode_header(), decode_q_branch(), decode_qlogs(), read_extra_header(), read_header(), and read_quant_table().
|
inlinestatic |
Definition at line 329 of file ffv1.c.
Referenced by decode_line(), and get_symbol().
|
inlinestatic |
Definition at line 411 of file ffv1.c.
Referenced by decode_line().
|
static |
Definition at line 707 of file ffv1.c.
Referenced by decode_init().
|
static |
Definition at line 676 of file ffv1.c.
Referenced by decode_frame().
|
inlinestatic |
Definition at line 210 of file ffv1.c.
Referenced by decode_line().
|
static |
|
static |
Definition at line 278 of file ffv1.c.
Referenced by put_symbol().
|
inlinestatic |
|
static |
Definition at line 1453 of file ffv1.c.
Referenced by decode_init().
|
static |
Definition at line 1513 of file ffv1.c.
Referenced by decode_frame(), and mjpegb_decode_frame().
|
static |
Definition at line 1412 of file ffv1.c.
Referenced by read_quant_tables().
|
static |
Definition at line 1440 of file ffv1.c.
Referenced by read_extra_header(), and read_header().
Definition at line 353 of file ffv1.c.
Referenced by get_vlc_symbol(), and put_vlc_symbol().
| AVCodec ff_ffv1_decoder |
| const uint8_t ff_log2_run[41] |
Definition at line 35 of file bitstream.c.
|
static |
|
static |
|
static |
|
static |
|
static |