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

quarterpel DSP functions More...

#include <stddef.h>
#include <stdint.h>
#include "config.h"
#include "libavutil/attributes.h"
#include "copy_block.h"
#include "qpeldsp.h"
#include "diracdsp.h"
#include "hpel_template.c"
#include "pel_template.c"
#include "qpel_template.c"

Go to the source code of this file.

Macros

#define BIT_DEPTH   8
 
#define QPEL_MC(r, OPNAME, RND, OP)
 
#define op_avg(a, b)   a = (((a) + cm[((b) + 16) >> 5] + 1) >> 1)
 
#define op_put(a, b)   a = cm[((b) + 16) >> 5]
 
#define op_put_no_rnd(a, b)   a = cm[((b) + 15) >> 5]
 
#define put_qpel8_mc00_c   ff_put_pixels8x8_c
 
#define avg_qpel8_mc00_c   ff_avg_pixels8x8_c
 
#define put_qpel16_mc00_c   ff_put_pixels16x16_c
 
#define avg_qpel16_mc00_c   ff_avg_pixels16x16_c
 
#define put_no_rnd_qpel8_mc00_c   ff_put_pixels8x8_c
 
#define put_no_rnd_qpel16_mc00_c   ff_put_pixels16x16_c
 
#define dspfunc(PFX, IDX, NUM)
 

Functions

void ff_put_pixels8x8_c (uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
 
void ff_avg_pixels8x8_c (uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
 
void ff_put_pixels16x16_c (uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
 
void ff_avg_pixels16x16_c (uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
 
void ff_put_pixels8_l2_8 (uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h)
 
av_cold void ff_qpeldsp_init (QpelDSPContext *c)
 

Detailed Description

quarterpel DSP functions

Definition in file qpeldsp.c.

Macro Definition Documentation

#define BIT_DEPTH   8

Definition at line 37 of file qpeldsp.c.

#define QPEL_MC (   r,
  OPNAME,
  RND,
  OP 
)

Definition at line 42 of file qpeldsp.c.

#define op_avg (   a,
  b 
)    a = (((a) + cm[((b) + 16) >> 5] + 1) >> 1)

Definition at line 691 of file qpeldsp.c.

#define op_put (   a,
  b 
)    a = cm[((b) + 16) >> 5]

Definition at line 692 of file qpeldsp.c.

#define op_put_no_rnd (   a,
  b 
)    a = cm[((b) + 15) >> 5]

Definition at line 693 of file qpeldsp.c.

#define put_qpel8_mc00_c   ff_put_pixels8x8_c

Definition at line 723 of file qpeldsp.c.

#define avg_qpel8_mc00_c   ff_avg_pixels8x8_c

Definition at line 724 of file qpeldsp.c.

#define put_qpel16_mc00_c   ff_put_pixels16x16_c

Definition at line 725 of file qpeldsp.c.

#define avg_qpel16_mc00_c   ff_avg_pixels16x16_c

Definition at line 726 of file qpeldsp.c.

#define put_no_rnd_qpel8_mc00_c   ff_put_pixels8x8_c

Definition at line 727 of file qpeldsp.c.

#define put_no_rnd_qpel16_mc00_c   ff_put_pixels16x16_c

Definition at line 728 of file qpeldsp.c.

#define dspfunc (   PFX,
  IDX,
  NUM 
)
Value:
c->PFX ## _pixels_tab[IDX][0] = PFX ## NUM ## _mc00_c; \
c->PFX ## _pixels_tab[IDX][1] = PFX ## NUM ## _mc10_c; \
c->PFX ## _pixels_tab[IDX][2] = PFX ## NUM ## _mc20_c; \
c->PFX ## _pixels_tab[IDX][3] = PFX ## NUM ## _mc30_c; \
c->PFX ## _pixels_tab[IDX][4] = PFX ## NUM ## _mc01_c; \
c->PFX ## _pixels_tab[IDX][5] = PFX ## NUM ## _mc11_c; \
c->PFX ## _pixels_tab[IDX][6] = PFX ## NUM ## _mc21_c; \
c->PFX ## _pixels_tab[IDX][7] = PFX ## NUM ## _mc31_c; \
c->PFX ## _pixels_tab[IDX][8] = PFX ## NUM ## _mc02_c; \
c->PFX ## _pixels_tab[IDX][9] = PFX ## NUM ## _mc12_c; \
c->PFX ## _pixels_tab[IDX][10] = PFX ## NUM ## _mc22_c; \
c->PFX ## _pixels_tab[IDX][11] = PFX ## NUM ## _mc32_c; \
c->PFX ## _pixels_tab[IDX][12] = PFX ## NUM ## _mc03_c; \
c->PFX ## _pixels_tab[IDX][13] = PFX ## NUM ## _mc13_c; \
c->PFX ## _pixels_tab[IDX][14] = PFX ## NUM ## _mc23_c; \
c->PFX ## _pixels_tab[IDX][15] = PFX ## NUM ## _mc33_c
static double c[64]

Referenced by ff_qpeldsp_init().

Function Documentation

void ff_put_pixels8x8_c ( uint8_t dst,
const uint8_t src,
ptrdiff_t  stride 
)

Definition at line 703 of file qpeldsp.c.

Referenced by ff_wmv2dsp_init().

void ff_avg_pixels8x8_c ( uint8_t dst,
const uint8_t src,
ptrdiff_t  stride 
)

Definition at line 708 of file qpeldsp.c.

void ff_put_pixels16x16_c ( uint8_t dst,
const uint8_t src,
ptrdiff_t  stride 
)

Definition at line 713 of file qpeldsp.c.

void ff_avg_pixels16x16_c ( uint8_t dst,
const uint8_t src,
ptrdiff_t  stride 
)

Definition at line 718 of file qpeldsp.c.

void ff_put_pixels8_l2_8 ( uint8_t dst,
const uint8_t src1,
const uint8_t src2,
int  dst_stride,
int  src_stride1,
int  src_stride2,
int  h 
)
av_cold void ff_qpeldsp_init ( QpelDSPContext c)