#include "dct.h"
#include "idctdsp.h"
#include "simple_idct.h"
+#include "xvididct.h"
#include "aandcttab.h"
#include "faandct.h"
#include "faanidct.h"
int nonspec;
};
-static const struct algo fdct_tab[4] = {
+static const struct algo fdct_tab[] = {
{ "REF-DBL", ff_ref_fdct, FF_IDCT_PERM_NONE },
- { "FAAN", ff_faandct, FF_IDCT_PERM_NONE },
{ "IJG-AAN-INT", ff_fdct_ifast, FF_IDCT_PERM_NONE },
{ "IJG-LLM-INT", ff_jpeg_fdct_islow_8, FF_IDCT_PERM_NONE },
+#if CONFIG_FAANDCT
+ { "FAAN", ff_faandct, FF_IDCT_PERM_NONE },
+#endif /* CONFIG_FAANDCT */
};
-static const struct algo idct_tab[4] = {
- { "FAANI", ff_faanidct, FF_IDCT_PERM_NONE },
+static const struct algo idct_tab[] = {
{ "REF-DBL", ff_ref_idct, FF_IDCT_PERM_NONE },
{ "INT", ff_j_rev_dct, FF_IDCT_PERM_LIBMPEG2 },
{ "SIMPLE-C", ff_simple_idct_8, FF_IDCT_PERM_NONE },
+#if CONFIG_FAANIDCT
+ { "FAANI", ff_faanidct, FF_IDCT_PERM_NONE },
+#endif /* CONFIG_FAANIDCT */
+#if CONFIG_MPEG4_DECODER
+ { "XVID", ff_xvid_idct, FF_IDCT_PERM_NONE, 0, 1 },
+#endif /* CONFIG_MPEG4_DECODER */
};
#if ARCH_ARM
init_block(block, test, is_idct, &prng);
permute(block1, block, dct->perm_type);
- ti = av_gettime();
+ ti = av_gettime_relative();
it1 = 0;
do {
for (it = 0; it < NB_ITS_SPEED; it++) {
dct->func(block);
}
it1 += NB_ITS_SPEED;
- ti1 = av_gettime() - ti;
+ ti1 = av_gettime_relative() - ti;
} while (ti1 < 1000000);
emms_c();
if (!speed)
return;
- ti = av_gettime();
+ ti = av_gettime_relative();
it1 = 0;
do {
for (it = 0; it < NB_ITS_SPEED; it++) {
idct248_put(img_dest, 8, block);
}
it1 += NB_ITS_SPEED;
- ti1 = av_gettime() - ti;
+ ti1 = av_gettime_relative() - ti;
} while (ti1 < 1000000);
emms_c();
for (i = 0; idct_tab_arch[i].name; i++)
if (!(~cpu_flags & idct_tab_arch[i].cpu_flag))
err |= dct_error(&idct_tab_arch[i], test, test_idct, speed);
- } else {
+ }
+#if CONFIG_FDCTDSP
+ else {
for (i = 0; i < FF_ARRAY_ELEMS(fdct_tab); i++)
err |= dct_error(&fdct_tab[i], test, test_idct, speed);
if (!(~cpu_flags & fdct_tab_arch[i].cpu_flag))
err |= dct_error(&fdct_tab_arch[i], test, test_idct, speed);
}
+#endif /* CONFIG_FDCTDSP */
}
if (err)