Go to the documentation of this file.
27 #define BUF_SIZE (N * STRIDE)
29 #define randomize(buf, len) do { \
31 for (i = 0; i < len; i++) { \
32 const INTFLOAT f = (INTFLOAT)rnd() / UINT_MAX; \
42 for (
i = 0;
i <
len;
i++) {
44 u.i &= (0xffffffff <<
bits);
123 memcpy(out1, out0, 91 * 32 * 2 *
sizeof(
INTFLOAT));
137 if (memcmp(out0, out1, 91 * 32 * 2 *
sizeof(
INTFLOAT)))
143 if (memcmp(out0, out1, 91 * 32 * 2 *
sizeof(
INTFLOAT)))
160 memcpy(out1, out0, 2 * 38 * 64 *
sizeof(
INTFLOAT));
174 if (memcmp(out0, out1, 2 * 38 * 64 *
sizeof(
INTFLOAT)))
180 if (memcmp(out0, out1, 2 * 38 * 64 *
sizeof(
INTFLOAT)))
204 for (
i = 0;
i < 2;
i++) {
246 report(
"mul_pair_single");
250 report(
"hybrid_analysis");
254 report(
"hybrid_analysis_ileave");
258 report(
"hybrid_synthesis_deint");
261 report(
"stereo_interpolate");
static void test_hybrid_analysis(void)
static void test_mul_pair_single(void)
#define u(width, name, range_min, range_max)
int float_near_abs_eps_array(const float *a, const float *b, float eps, unsigned len)
#define randomize(buf, len)
static void test_add_squares(void)
#define check_func(func,...)
void checkasm_check_aacpsdsp(void)
filter_frame For filters that do not use the this method is called when a frame is pushed to the filter s input It can be called at any time except in a reentrant way If the input frame is enough to produce then the filter should push the output frames on the output link immediately As an exception to the previous rule if the input frame is enough to produce several output frames then the filter needs output only at least one per link The additional frames can be left buffered in the filter
void(* add_squares)(INTFLOAT *dst, const INTFLOAT(*src)[2], int n)
static void clear_less_significant_bits(INTFLOAT *buf, int len, int bits)
#define LOCAL_ALIGNED_16(t, v,...)
void(* hybrid_synthesis_deint)(INTFLOAT out[2][38][64], INTFLOAT(*in)[32][2], int i, int len)
void(* mul_pair_single)(INTFLOAT(*dst)[2], INTFLOAT(*src0)[2], INTFLOAT *src1, int n)
void(* hybrid_analysis_ileave)(INTFLOAT(*out)[32][2], INTFLOAT L[2][38][64], int i, int len)
#define i(width, name, range_min, range_max)
static void test_hybrid_analysis_ileave(void)
static void test_hybrid_synthesis_deint(void)
static void test_stereo_interpolate(PSDSPContext *psdsp)
void(* stereo_interpolate[2])(INTFLOAT(*l)[2], INTFLOAT(*r)[2], INTFLOAT h[2][4], INTFLOAT h_step[2][4], int len)
void AAC_RENAME() ff_psdsp_init(PSDSPContext *s)
#define declare_func(ret,...)
void(* hybrid_analysis)(INTFLOAT(*out)[2], INTFLOAT(*in)[2], const INTFLOAT(*filter)[8][2], ptrdiff_t stride, int n)