Libav
Functions | Variables
rv30.c File Reference

RV30 decoder. More...

#include "avcodec.h"
#include "mpegvideo.h"
#include "golomb.h"
#include "rv34.h"
#include "rv30data.h"

Go to the source code of this file.

Functions

static int rv30_parse_slice_header (RV34DecContext *r, GetBitContext *gb, SliceInfo *si)
 
static int rv30_decode_intra_types (RV34DecContext *r, GetBitContext *gb, int8_t *dst)
 Decode 4x4 intra types array. More...
 
static int rv30_decode_mb_info (RV34DecContext *r)
 Decode macroblock information. More...
 
static void rv30_weak_loop_filter (uint8_t *src, const int step, const int stride, const int lim)
 
static void rv30_loop_filter (RV34DecContext *r, int row)
 
static av_cold int rv30_decode_init (AVCodecContext *avctx)
 Initialize decoder. More...
 

Variables

AVCodec ff_rv30_decoder
 

Detailed Description

RV30 decoder.

Definition in file rv30.c.

Function Documentation

static int rv30_parse_slice_header ( RV34DecContext r,
GetBitContext gb,
SliceInfo si 
)
static

Definition at line 35 of file rv30.c.

Referenced by rv30_decode_init().

static int rv30_decode_intra_types ( RV34DecContext r,
GetBitContext gb,
int8_t *  dst 
)
static

Decode 4x4 intra types array.

Definition at line 77 of file rv30.c.

Referenced by rv30_decode_init().

static int rv30_decode_mb_info ( RV34DecContext r)
static

Decode macroblock information.

Definition at line 105 of file rv30.c.

Referenced by rv30_decode_init().

static void rv30_weak_loop_filter ( uint8_t src,
const int  step,
const int  stride,
const int  lim 
)
inlinestatic

Definition at line 127 of file rv30.c.

Referenced by rv30_loop_filter().

static void rv30_loop_filter ( RV34DecContext r,
int  row 
)
static

Definition at line 142 of file rv30.c.

Referenced by rv30_decode_init().

static av_cold int rv30_decode_init ( AVCodecContext avctx)
static

Initialize decoder.

Definition at line 251 of file rv30.c.

Variable Documentation

AVCodec ff_rv30_decoder
Initial value:
= {
.name = "rv30",
.long_name = NULL_IF_CONFIG_SMALL("RealVideo 3.0"),
.priv_data_size = sizeof(RV34DecContext),
.capabilities = CODEC_CAP_DR1 | CODEC_CAP_DELAY |
.pix_fmts = ff_pixfmt_list_420,
}
static av_cold int rv30_decode_init(AVCodecContext *avctx)
Initialize decoder.
Definition: rv30.c:251
static int decode(MimicContext *ctx, int quality, int num_coeffs, int is_iframe)
Definition: mimic.c:269
#define CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:711
enum AVPixelFormat ff_pixfmt_list_420[]
Definition: mpegvideo.c:107
#define CODEC_CAP_DELAY
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and cor...
Definition: avcodec.h:740
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:142
void ff_mpeg_flush(AVCodecContext *avctx)
Definition: mpegvideo.c:2433
#define ONLY_IF_THREADS_ENABLED(x)
Define a function with only the non-default version specified.
Definition: internal.h:182
int ff_rv34_decode_init_thread_copy(AVCodecContext *avctx)
Definition: rv34.c:1515
static void close(AVCodecParserContext *s)
Definition: h264_parser.c:489
int ff_rv34_decode_frame(AVCodecContext *avctx, void *data, int *got_picture_ptr, AVPacket *avpkt)
Definition: rv34.c:1599
av_cold int ff_rv34_decode_end(AVCodecContext *avctx)
Definition: rv34.c:1800
#define CODEC_CAP_FRAME_THREADS
Codec supports frame-level multithreading.
Definition: avcodec.h:782
static av_cold void flush(AVCodecContext *avctx)
Flush (reset) the frame ID after seeking.
Definition: alsdec.c:1766
int ff_rv34_decode_update_thread_context(AVCodecContext *dst, const AVCodecContext *src)
Definition: rv34.c:1535
static av_cold int init(AVCodecParserContext *s)
Definition: h264_parser.c:498
decoder context
Definition: rv34.h:84

Definition at line 275 of file rv30.c.