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

Go to the source code of this file.
Defines | |
| #define | MAX(a, b) (((a) > (b)) ? (a) : (b)) |
| #define | AANSCALE_BITS 12 |
| #define | NB_ITS 20000 |
| #define | NB_ITS_SPEED 50000 |
Functions | |
| void | fdct (DCTELEM *block) |
| void | idct (DCTELEM *block) |
| void | init_fdct () |
| void | j_rev_dct (DCTELEM *data) |
| void | ff_mmx_idct (DCTELEM *data) |
| void | ff_mmxext_idct (DCTELEM *data) |
| void | odivx_idct_c (short *block) |
| int64_t | gettime (void) |
| void | idct_mmx_init (void) |
| static DCTELEM block[64] | __attribute__ ((aligned(8))) |
| void | dct_error (const char *name, int is_idct, void(*fdct_func)(DCTELEM *block), void(*fdct_ref)(DCTELEM *block), 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 | |
| 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] |
Definition in file dct-test.c.
| #define AANSCALE_BITS 12 |
| #define NB_ITS 20000 |
Definition at line 56 of file dct-test.c.
Referenced by dct_error(), idct248_error(), and test_motion().
| #define NB_ITS_SPEED 50000 |
| static DCTELEM block [64] __attribute__ | ( | (aligned(8)) | ) | [static] |
| void dct_error | ( | const char * | name, | |
| int | is_idct, | |||
| void(*)(DCTELEM *block) | fdct_func, | |||
| void(*)(DCTELEM *block) | fdct_ref, | |||
| int | test | |||
| ) |
Definition at line 87 of file dct-test.c.
References AANSCALE_BITS, aanscales, ABS, emms, FAAN_POSTSCALE, fdct(), fdct_ifast(), ff_faandct(), ff_mmx_idct(), ff_mmxext_idct(), ff_simple_idct_mmx(), gettime(), idct_mmx_perm, idct_simple_mmx_perm, j_rev_dct(), MAX, NB_ITS, and NB_ITS_SPEED.
Referenced by main().

| void ff_mmx_idct | ( | DCTELEM * | data | ) |
Referenced by dct_error(), dsputil_init_mmx(), ff_libmpeg2mmx_idct_add(), ff_libmpeg2mmx_idct_put(), and main().
| void ff_mmxext_idct | ( | DCTELEM * | data | ) |
Referenced by dct_error(), dsputil_init_mmx(), ff_libmpeg2mmx2_idct_add(), ff_libmpeg2mmx2_idct_put(), and main().
| int64_t gettime | ( | void | ) |
Definition at line 49 of file dct-test.c.
References NULL.
Referenced by dct_error(), idct248_error(), main(), and test_motion().
| void help | ( | void | ) |
| void idct248_error | ( | const char * | name, | |
| void(*)(uint8_t *dest, int line_size, int16_t *block) | idct248_put | |||
| ) |
Definition at line 355 of file dct-test.c.
References emms, gettime(), idct248_ref(), NB_ITS, and NB_ITS_SPEED.
Referenced by main().

| void idct248_ref | ( | uint8_t * | dest, | |
| int | linesize, | |||
| int16_t * | block | |||
| ) |
Definition at line 275 of file dct-test.c.
References c4, init, M_PI, and s.
Referenced by idct248_error().
| void idct_mmx_init | ( | void | ) |
| void j_rev_dct | ( | DCTELEM * | data | ) |
Referenced by dct_error(), dsputil_init(), ff_jref_idct_add(), ff_jref_idct_put(), and main().
| int main | ( | int | argc, | |
| char ** | argv | |||
| ) |
Definition at line 442 of file dct-test.c.
References c, cropTbl, dct_error(), fdct(), fdct_ifast(), ff_faandct(), ff_fdct_mmx(), ff_fdct_mmx2(), ff_jpeg_fdct_islow(), ff_mmx_idct(), ff_mmxext_idct(), ff_simple_idct_mmx(), help(), idct, idct248_error(), idct_mmx_init(), init_fdct(), j_rev_dct(), MAX_NEG_CROP, simple_idct(), and simple_idct248_put().

| void odivx_idct_c | ( | short * | block | ) |
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 35 of file dct-test.c.
Referenced by dct_error().
| uint8_t cropTbl[256+2 *MAX_NEG_CROP] |
Definition at line 47 of file dct-test.c.
Referenced by add_pixels_clamped2_c(), add_pixels_clamped4_c(), add_pixels_clamped_c(), deinterlace_line(), deinterlace_line_inplace(), dsputil_static_init(), dvbsub_init_decoder(), ff_h264_idct8_add_c(), ff_idct_put_mlib(), ff_jref_idct1_add(), ff_jref_idct1_put(), h_block_filter(), idct(), idct4col(), idct4col_add(), idct_add(), idct_internal(), idct_put(), idctSparseColAdd(), idctSparseColPut(), img_convert_init(), main(), pred16x16_plane_compat_c(), pred8x8_plane_c(), put_pixels_clamped2_c(), put_pixels_clamped4_c(), put_pixels_clamped_c(), svq3_add_idct_c(), v_block_filter(), wmv2_mspel8_h_lowpass(), and wmv2_mspel8_v_lowpass().
short idct_mmx_perm[64] [static] |
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 61 of file dct-test.c.
Referenced by dct_error().
1.5.5