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

Independent JPEG Group's fast AAN dct. More...

#include <stdlib.h>
#include <stdio.h>
#include "libavutil/common.h"
#include "dct.h"

Go to the source code of this file.

Macros

#define DCTSIZE   8
 
#define GLOBAL(x)   x
 
#define RIGHT_SHIFT(x, n)   ((x) >> (n))
 
#define CONST_BITS   8
 
#define FIX_0_382683433   ((int32_t) 98) /* FIX(0.382683433) */
 
#define FIX_0_541196100   ((int32_t) 139) /* FIX(0.541196100) */
 
#define FIX_0_707106781   ((int32_t) 181) /* FIX(0.707106781) */
 
#define FIX_1_306562965   ((int32_t) 334) /* FIX(1.306562965) */
 
#define DESCALE(x, n)   RIGHT_SHIFT(x, n)
 
#define MULTIPLY(var, const)   ((int16_t) DESCALE((var) * (const), CONST_BITS))
 

Functions

static av_always_inline void row_fdct (int16_t *data)
 
 ff_fdct_ifast (int16_t *data)
 
 ff_fdct_ifast248 (int16_t *data)
 

Detailed Description

Independent JPEG Group's fast AAN dct.

Definition in file jfdctfst.c.

Macro Definition Documentation

#define DCTSIZE   8
#define GLOBAL (   x)    x

Definition at line 75 of file jfdctfst.c.

#define RIGHT_SHIFT (   x,
  n 
)    ((x) >> (n))

Definition at line 76 of file jfdctfst.c.

#define CONST_BITS   8

Definition at line 105 of file jfdctfst.c.

#define FIX_0_382683433   ((int32_t) 98) /* FIX(0.382683433) */

Definition at line 116 of file jfdctfst.c.

Referenced by column_fidct_c(), ff_fdct_ifast(), row_fdct(), and row_fdct_c().

#define FIX_0_541196100   ((int32_t) 139) /* FIX(0.541196100) */

Definition at line 117 of file jfdctfst.c.

Referenced by column_fidct_c(), ff_fdct_ifast(), row_fdct(), and row_fdct_c().

#define FIX_0_707106781   ((int32_t) 181) /* FIX(0.707106781) */

Definition at line 118 of file jfdctfst.c.

Referenced by column_fidct_c(), ff_fdct_ifast(), ff_fdct_ifast248(), row_fdct(), and row_fdct_c().

#define FIX_1_306562965   ((int32_t) 334) /* FIX(1.306562965) */

Definition at line 119 of file jfdctfst.c.

Referenced by column_fidct_c(), ff_fdct_ifast(), row_fdct(), and row_fdct_c().

#define DESCALE (   x,
  n 
)    RIGHT_SHIFT(x, n)

Definition at line 135 of file jfdctfst.c.

Referenced by row_idct_c().

#define MULTIPLY (   var,
  const 
)    ((int16_t) DESCALE((var) * (const), CONST_BITS))

Definition at line 143 of file jfdctfst.c.

Referenced by ff_fdct_ifast(), ff_fdct_ifast248(), and row_fdct().

Function Documentation

static av_always_inline void row_fdct ( int16_t *  data)
static

Definition at line 145 of file jfdctfst.c.

Referenced by ff_fdct_ifast(), and ff_fdct_ifast248().

ff_fdct_ifast ( int16_t *  data)
ff_fdct_ifast248 ( int16_t *  data)

Definition at line 274 of file jfdctfst.c.

Referenced by ff_fdctdsp_init().