FFmpeg
Loading...
Searching...
No Matches
faanidct.c File Reference
#include "faanidct.h"
#include "libavutil/common.h"
#include "libavutil/emms.h"

Go to the source code of this file.

Macros

#define B0   1.0000000000000000000000
 
#define B1   1.3870398453221474618216
 
#define B2   1.3065629648763765278566
 
#define B3   1.1758756024193587169745
 
#define B4   1.0000000000000000000000
 
#define B5   0.7856949583871021812779
 
#define B6   0.5411961001461969843997
 
#define B7   0.2758993792829430123360
 
#define A4   0.70710678118654752438
 
#define A2   0.92387953251128675613
 

Functions

static void p8idct (int16_t data[64], FLOAT temp[64], uint8_t *dest, ptrdiff_t stride, int x, int y, int type)
 
void ff_faanidct (int16_t block[64])
 
void ff_faanidct_add (uint8_t *dest, ptrdiff_t line_size, int16_t block[64])
 
void ff_faanidct_put (uint8_t *dest, ptrdiff_t line_size, int16_t block[64])
 

Variables

static const FLOAT prescale [64]
 

Macro Definition Documentation

◆ B0

#define B0   1.0000000000000000000000

Definition at line 28 of file faanidct.c.

◆ B1

#define B1   1.3870398453221474618216

Definition at line 29 of file faanidct.c.

◆ B2

#define B2   1.3065629648763765278566

Definition at line 30 of file faanidct.c.

◆ B3

#define B3   1.1758756024193587169745

Definition at line 31 of file faanidct.c.

◆ B4

#define B4   1.0000000000000000000000

Definition at line 32 of file faanidct.c.

◆ B5

#define B5   0.7856949583871021812779

Definition at line 33 of file faanidct.c.

◆ B6

#define B6   0.5411961001461969843997

Definition at line 34 of file faanidct.c.

◆ B7

#define B7   0.2758993792829430123360

Definition at line 35 of file faanidct.c.

◆ A4

#define A4   0.70710678118654752438

Definition at line 37 of file faanidct.c.

◆ A2

#define A2   0.92387953251128675613

Definition at line 38 of file faanidct.c.

Function Documentation

◆ p8idct()

static void p8idct ( int16_t data[64],
FLOAT temp[64],
uint8_t * dest,
ptrdiff_t stride,
int x,
int y,
int type )
inlinestatic

Definition at line 51 of file faanidct.c.

Referenced by ff_faanidct(), ff_faanidct_add(), and ff_faanidct_put().

◆ ff_faanidct()

void ff_faanidct ( int16_t block[64])

Definition at line 128 of file faanidct.c.

Referenced by ff_idctdsp_init().

◆ ff_faanidct_add()

void ff_faanidct_add ( uint8_t * dest,
ptrdiff_t line_size,
int16_t block[64] )

Definition at line 141 of file faanidct.c.

Referenced by ff_idctdsp_init().

◆ ff_faanidct_put()

void ff_faanidct_put ( uint8_t * dest,
ptrdiff_t line_size,
int16_t block[64] )

Definition at line 155 of file faanidct.c.

Referenced by ff_idctdsp_init().

Variable Documentation

◆ prescale

const FLOAT prescale[64]
static
Initial value:
={
B0*B0/8, B0*B1/8, B0*B2/8, B0*B3/8, B0*B4/8, B0*B5/8, B0*B6/8, B0*B7/8,
B1*B0/8, B1*B1/8, B1*B2/8, B1*B3/8, B1*B4/8, B1*B5/8, B1*B6/8, B1*B7/8,
B2*B0/8, B2*B1/8, B2*B2/8, B2*B3/8, B2*B4/8, B2*B5/8, B2*B6/8, B2*B7/8,
B3*B0/8, B3*B1/8, B3*B2/8, B3*B3/8, B3*B4/8, B3*B5/8, B3*B6/8, B3*B7/8,
B4*B0/8, B4*B1/8, B4*B2/8, B4*B3/8, B4*B4/8, B4*B5/8, B4*B6/8, B4*B7/8,
B5*B0/8, B5*B1/8, B5*B2/8, B5*B3/8, B5*B4/8, B5*B5/8, B5*B6/8, B5*B7/8,
B6*B0/8, B6*B1/8, B6*B2/8, B6*B3/8, B6*B4/8, B6*B5/8, B6*B6/8, B6*B7/8,
B7*B0/8, B7*B1/8, B7*B2/8, B7*B3/8, B7*B4/8, B7*B5/8, B7*B6/8, B7*B7/8,
}
#define B4
Definition faandct.c:45
#define B2
Definition faandct.c:43
#define B7
Definition faandct.c:48
#define B1
Definition faandct.c:42
#define B6
Definition faandct.c:47
#define B0
Definition faandct.c:41
#define B5
Definition faandct.c:46
#define B3
Definition faandct.c:44

Definition at line 40 of file faanidct.c.

Referenced by ff_faanidct(), ff_faanidct_add(), and ff_faanidct_put().