libavcodec/dct-test.c File Reference

DCT test. More...

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/time.h>
#include <unistd.h>
#include <math.h>
#include "dsputil.h"
#include "simple_idct.h"
#include "faandct.h"

Go to the source code of this file.

Data Structures

struct  algo

Defines

#define MAX(a, b)   (((a) > (b)) ? (a) : (b))
#define FAAN_SCALE   NO_PERM
#define DCT_ERROR(name, is_idct, func, ref, form)   {name,is_idct,func,ref,form}
#define AANSCALE_BITS   12
#define NB_ITS   20000
#define NB_ITS_SPEED   50000

Functions

void * fast_memcpy (void *a, const void *b, size_t c)
void fdct (DCTELEM *block)
void idct (DCTELEM *block)
void ff_idct_xvid_mmx (DCTELEM *block)
void ff_idct_xvid_mmx2 (DCTELEM *block)
void init_fdct ()
void ff_mmx_idct (DCTELEM *data)
void ff_mmxext_idct (DCTELEM *data)
void odivx_idct_c (short *block)
void ff_bfin_idct (DCTELEM *block)
void ff_bfin_fdct (DCTELEM *block)
void fdct_altivec (DCTELEM *block)
int64_t gettime (void)
void idct_mmx_init (void)
void dct_error (const char *name, int is_idct, void(*fdct_func)(DCTELEM *block), void(*fdct_ref)(DCTELEM *block), int form, int test)
void idct248_ref (uint8_t *dest, int linesize, int16_t *block)
void idct248_error (const char *name, void(*idct248_put)(uint8_t *dest, int line_size, int16_t *block))
void help (void)
int main (int argc, char **argv)

Variables

struct algo algos []
static const unsigned short aanscales [64]
uint8_t cropTbl [256+2 *MAX_NEG_CROP]
static short idct_mmx_perm [64]
static short idct_simple_mmx_perm [64]
static DCTELEM block [64]
static DCTELEM block1 [64]
static DCTELEM block_org [64]
static uint8_t img_dest [64]
static uint8_t img_dest1 [64]


Detailed Description

DCT test.

(c) 2001 Fabrice Bellard. Started from sample code by Juan J. Sierralta P.

Definition in file dct-test.c.


Define Documentation

#define AANSCALE_BITS   12

Definition at line 123 of file dct-test.c.

Referenced by dct_error().

#define DCT_ERROR ( name,
is_idct,
func,
ref,
form   )     {name,is_idct,func,ref,form}

Definition at line 84 of file dct-test.c.

#define FAAN_SCALE   NO_PERM

Definition at line 81 of file dct-test.c.

#define MAX ( a,
 )     (((a) > (b)) ? (a) : (b))

Definition at line 41 of file dct-test.c.

Referenced by audioplay_callback(), and dct_error().

#define NB_ITS   20000

Definition at line 145 of file dct-test.c.

Referenced by dct_error(), idct248_error(), and test_motion().

#define NB_ITS_SPEED   50000

Definition at line 146 of file dct-test.c.

Referenced by dct_error(), and idct248_error().


Function Documentation

void dct_error ( const char *  name,
int  is_idct,
void(*)(DCTELEM *block fdct_func,
void(*)(DCTELEM *block fdct_ref,
int  form,
int  test 
)

Definition at line 176 of file dct-test.c.

Referenced by main().

void* fast_memcpy ( void *  a,
const void *  b,
size_t  c 
)

Definition at line 47 of file dct-test.c.

void fdct ( DCTELEM block  ) 

Definition at line 63 of file fdctref.c.

Referenced by dct_error().

void fdct_altivec ( DCTELEM block  ) 

Referenced by dsputil_init_ppc().

void ff_bfin_fdct ( DCTELEM block  ) 

void ff_bfin_idct ( DCTELEM block  ) 

void ff_idct_xvid_mmx ( DCTELEM block  ) 

Definition at line 487 of file idct_mmx_xvid.c.

Referenced by dsputil_init_mmx(), ff_idct_xvid_mmx_add(), and ff_idct_xvid_mmx_put().

void ff_idct_xvid_mmx2 ( DCTELEM block  ) 

Definition at line 510 of file idct_mmx_xvid.c.

Referenced by dsputil_init_mmx(), ff_idct_xvid_mmx2_add(), and ff_idct_xvid_mmx2_put().

void ff_mmx_idct ( DCTELEM data  ) 

Referenced by dsputil_init_mmx().

void ff_mmxext_idct ( DCTELEM data  ) 

Referenced by dsputil_init_mmx().

int64_t gettime ( void   ) 

Definition at line 138 of file dct-test.c.

Referenced by dct_error(), idct248_error(), main(), and test_motion().

void help ( void   ) 

Definition at line 514 of file dct-test.c.

Referenced by main().

void idct ( DCTELEM block  ) 

Definition at line 125 of file fdctref.c.

void idct248_error ( const char *  name,
void(*)(uint8_t *dest, int line_size, int16_t *block idct248_put 
)

Definition at line 438 of file dct-test.c.

Referenced by main().

void idct248_ref ( uint8_t dest,
int  linesize,
int16_t *  block 
)

Definition at line 358 of file dct-test.c.

Referenced by idct248_error().

void idct_mmx_init ( void   ) 

Definition at line 161 of file dct-test.c.

Referenced by main().

void init_fdct ( void   ) 

Definition at line 49 of file fdctref.c.

Referenced by main().

int main ( int  argc,
char **  argv 
)

Definition at line 524 of file dct-test.c.

void odivx_idct_c ( short *  block  ) 


Variable Documentation

const unsigned short aanscales[64] [static]

Initial value:

 {
    
    16384, 22725, 21407, 19266, 16384, 12873,  8867,  4520,
    22725, 31521, 29692, 26722, 22725, 17855, 12299,  6270,
    21407, 29692, 27969, 25172, 21407, 16819, 11585,  5906,
    19266, 26722, 25172, 22654, 19266, 15137, 10426,  5315,
    16384, 22725, 21407, 19266, 16384, 12873,  8867,  4520,
    12873, 17855, 16819, 15137, 12873, 10114,  6967,  3552,
    8867, 12299, 11585, 10426,  8867,  6967,  4799,  2446,
    4520,  6270,  5906,  5315,  4520,  3552,  2446,  1247
}

Definition at line 124 of file dct-test.c.

Referenced by dct_error(), and ff_convert_matrix().

struct algo algos[]

Definition at line 87 of file dct-test.c.

DCTELEM block[64] [static]

DCTELEM block1[64] [static]

DCTELEM block_org[64] [static]

Definition at line 174 of file dct-test.c.

Referenced by dct_error().

uint8_t cropTbl[256+2 *MAX_NEG_CROP]

Definition at line 136 of file dct-test.c.

Referenced by main().

short idct_mmx_perm[64] [static]

Definition at line 148 of file dct-test.c.

Referenced by dct_error(), and idct_mmx_init().

short idct_simple_mmx_perm[64] [static]

Initial value:

{
        0x00, 0x08, 0x04, 0x09, 0x01, 0x0C, 0x05, 0x0D,
        0x10, 0x18, 0x14, 0x19, 0x11, 0x1C, 0x15, 0x1D,
        0x20, 0x28, 0x24, 0x29, 0x21, 0x2C, 0x25, 0x2D,
        0x12, 0x1A, 0x16, 0x1B, 0x13, 0x1E, 0x17, 0x1F,
        0x02, 0x0A, 0x06, 0x0B, 0x03, 0x0E, 0x07, 0x0F,
        0x30, 0x38, 0x34, 0x39, 0x31, 0x3C, 0x35, 0x3D,
        0x22, 0x2A, 0x26, 0x2B, 0x23, 0x2E, 0x27, 0x2F,
        0x32, 0x3A, 0x36, 0x3B, 0x33, 0x3E, 0x37, 0x3F,
}

Definition at line 150 of file dct-test.c.

Referenced by dct_error().

uint8_t img_dest[64] [static]

Definition at line 355 of file dct-test.c.

Referenced by idct248_error().

uint8_t img_dest1[64] [static]

Definition at line 356 of file dct-test.c.

Referenced by idct248_error().


Generated on Thu Apr 2 07:15:41 2009 for ffmpeg by  doxygen 1.5.6