FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
vp3dsp.c File Reference

Standard C DSP-oriented functions cribbed from the original VP3 source code. More...

#include "libavutil/attributes.h"
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "rnd_avg.h"
#include "vp3dsp.h"

Go to the source code of this file.

Macros

#define IdctAdjustBeforeShift   8
 
#define xC1S7   64277
 
#define xC2S6   60547
 
#define xC3S5   54491
 
#define xC4S4   46341
 
#define xC5S3   36410
 
#define xC6S2   25080
 
#define xC7S1   12785
 
#define M(a, b)   ((int)((SUINT)(a) * (b)) >> 16)
 

Functions

static av_always_inline void idct (uint8_t *dst, ptrdiff_t stride, int16_t *input, int type)
 
static void vp3_idct_put_c (uint8_t *dest, ptrdiff_t stride, int16_t *block)
 
static void vp3_idct_add_c (uint8_t *dest, ptrdiff_t stride, int16_t *block)
 
static void vp3_idct_dc_add_c (uint8_t *dest, ptrdiff_t stride, int16_t *block)
 
static void vp3_v_loop_filter_c (uint8_t *first_pixel, ptrdiff_t stride, int *bounding_values)
 
static void vp3_h_loop_filter_c (uint8_t *first_pixel, ptrdiff_t stride, int *bounding_values)
 
static void put_no_rnd_pixels_l2 (uint8_t *dst, const uint8_t *src1, const uint8_t *src2, ptrdiff_t stride, int h)
 
av_cold void ff_vp3dsp_init (VP3DSPContext *c, int flags)
 

Detailed Description

Standard C DSP-oriented functions cribbed from the original VP3 source code.

Definition in file vp3dsp.c.

Macro Definition Documentation

#define IdctAdjustBeforeShift   8

Definition at line 35 of file vp3dsp.c.

Referenced by idct().

#define xC1S7   64277

Definition at line 36 of file vp3dsp.c.

Referenced by idct().

#define xC2S6   60547

Definition at line 37 of file vp3dsp.c.

Referenced by idct().

#define xC3S5   54491

Definition at line 38 of file vp3dsp.c.

Referenced by idct().

#define xC4S4   46341

Definition at line 39 of file vp3dsp.c.

Referenced by idct().

#define xC5S3   36410

Definition at line 40 of file vp3dsp.c.

Referenced by idct().

#define xC6S2   25080

Definition at line 41 of file vp3dsp.c.

Referenced by idct().

#define xC7S1   12785

Definition at line 42 of file vp3dsp.c.

Referenced by idct().

#define M (   a,
  b 
)    ((int)((SUINT)(a) * (b)) >> 16)

Definition at line 44 of file vp3dsp.c.

Referenced by filter_frame(), generate_window_func(), idct(), scan_int23(), scan_int32(), and search_for_ms().

Function Documentation

static av_always_inline void idct ( uint8_t dst,
ptrdiff_t  stride,
int16_t *  input,
int  type 
)
static

Definition at line 46 of file vp3dsp.c.

Referenced by vp3_idct_add_c(), and vp3_idct_put_c().

static void vp3_idct_put_c ( uint8_t dest,
ptrdiff_t  stride,
int16_t *  block 
)
static

Definition at line 197 of file vp3dsp.c.

Referenced by ff_vp3dsp_init().

static void vp3_idct_add_c ( uint8_t dest,
ptrdiff_t  stride,
int16_t *  block 
)
static

Definition at line 204 of file vp3dsp.c.

Referenced by ff_vp3dsp_init().

static void vp3_idct_dc_add_c ( uint8_t dest,
ptrdiff_t  stride,
int16_t *  block 
)
static

Definition at line 211 of file vp3dsp.c.

Referenced by ff_vp3dsp_init().

static void vp3_v_loop_filter_c ( uint8_t first_pixel,
ptrdiff_t  stride,
int bounding_values 
)
static

Definition at line 230 of file vp3dsp.c.

Referenced by ff_vp3dsp_init().

static void vp3_h_loop_filter_c ( uint8_t first_pixel,
ptrdiff_t  stride,
int bounding_values 
)
static

Definition at line 247 of file vp3dsp.c.

Referenced by ff_vp3dsp_init().

static void put_no_rnd_pixels_l2 ( uint8_t dst,
const uint8_t src1,
const uint8_t src2,
ptrdiff_t  stride,
int  h 
)
static

Definition at line 263 of file vp3dsp.c.

Referenced by ff_vp3dsp_init().

av_cold void ff_vp3dsp_init ( VP3DSPContext c,
int  flags 
)

Definition at line 280 of file vp3dsp.c.

Referenced by ff_vp56_init_context(), and vp3_decode_init().