rv30.c File Reference

RV30 decoder. More...

#include "avcodec.h"
#include "mpegvideo.h"
#include "golomb.h"
#include "rv34.h"
#include "rv30data.h"
Include dependency graph for rv30.c:

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 av_cold int rv30_decode_init ( AVCodecContext avctx)
static

Initialize decoder.

Definition at line 248 of file rv30.c.

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

Decode 4x4 intra types array.

Definition at line 74 of file rv30.c.

Referenced by rv30_decode_init().

static int rv30_decode_mb_info ( RV34DecContext r)
static

Decode macroblock information.

Definition at line 102 of file rv30.c.

Referenced by rv30_decode_init().

static void rv30_loop_filter ( RV34DecContext r,
int  row 
)
static

Definition at line 139 of file rv30.c.

Referenced by rv30_decode_init().

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 void rv30_weak_loop_filter ( uint8_t src,
const int  step,
const int  stride,
const int  lim 
)
inlinestatic

Definition at line 124 of file rv30.c.

Referenced by rv30_loop_filter().

Variable Documentation

AVCodec ff_rv30_decoder
Initial value:
= {
.name = "rv30",
.priv_data_size = sizeof(RV34DecContext),
.capabilities = CODEC_CAP_DR1 | CODEC_CAP_DELAY |
.long_name = NULL_IF_CONFIG_SMALL("RealVideo 3.0"),
.pix_fmts = ff_pixfmt_list_420,
}
static av_cold int init(AVCodecContext *avctx)
Definition: avrndec.c:35
static av_cold int rv30_decode_init(AVCodecContext *avctx)
Initialize decoder.
Definition: rv30.c:248
#define CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
enum AVPixelFormat ff_pixfmt_list_420[]
Definition: mpegvideo.c:127
#define CODEC_CAP_DELAY
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and cor...
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
void ff_mpeg_flush(AVCodecContext *avctx)
Definition: mpegvideo.c:3066
#define ONLY_IF_THREADS_ENABLED(x)
Define a function with only the non-default version specified.
static void flush(AVCodecContext *avctx)
int ff_rv34_decode_init_thread_copy(AVCodecContext *avctx)
Definition: rv34.c:1516
static void close(AVCodecParserContext *s)
Definition: h264_parser.c:375
int ff_rv34_decode_frame(AVCodecContext *avctx, void *data, int *got_picture_ptr, AVPacket *avpkt)
Definition: rv34.c:1610
av_cold int ff_rv34_decode_end(AVCodecContext *avctx)
Definition: rv34.c:1813
#define CODEC_CAP_FRAME_THREADS
Codec supports frame-level multithreading.
int ff_rv34_decode_update_thread_context(AVCodecContext *dst, const AVCodecContext *src)
Definition: rv34.c:1534
static int decode(AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt)
Definition: crystalhd.c:868
struct RV34DecContext RV34DecContext
decoder context

Definition at line 273 of file rv30.c.