#include "libavutil/cpu.h"#include "libavutil/x86/asm.h"#include "libavcodec/dsputil.h"#include "libavcodec/mpegaudiodsp.h"Go to the source code of this file.
Defines | |
| #define | DECL_IMDCT_BLOCKS(CPU1, CPU2) |
Functions | |
| void | ff_imdct36_float_sse (float *out, float *buf, float *in, float *win) |
| void | ff_imdct36_float_sse2 (float *out, float *buf, float *in, float *win) |
| void | ff_imdct36_float_sse3 (float *out, float *buf, float *in, float *win) |
| void | ff_imdct36_float_ssse3 (float *out, float *buf, float *in, float *win) |
| void | ff_imdct36_float_avx (float *out, float *buf, float *in, float *win) |
| void | ff_four_imdct36_float_sse (float *out, float *buf, float *in, float *win, float *tmpbuf) |
| void | ff_four_imdct36_float_avx (float *out, float *buf, float *in, float *win, float *tmpbuf) |
| DECLARE_ALIGNED (16, static float, mdct_win_sse)[2][4][4 *40] | |
| void | ff_mpadsp_init_mmx (MPADSPContext *s) |
| #define DECL_IMDCT_BLOCKS | ( | CPU1, | |||
| CPU2 | ) |
Value:
static void imdct36_blocks_ ## CPU1(float *out, float *buf, float *in, \ int count, int switch_point, int block_type) \ { \ int align_end = count - (count & 3); \ int j; \ for (j = 0; j < align_end; j+= 4) { \ LOCAL_ALIGNED_16(float, tmpbuf, [1024]); \ float *win = mdct_win_sse[switch_point && j < 4][block_type]; \ /* apply window & overlap with previous buffer */ \ \ /* select window */ \ ff_four_imdct36_float_ ## CPU2(out, buf, in, win, tmpbuf); \ in += 4*18; \ buf += 4*18; \ out += 4; \ } \ for (; j < count; j++) { \ /* apply window & overlap with previous buffer */ \ \ /* select window */ \ int win_idx = (switch_point && j < 2) ? 0 : block_type; \ float *win = ff_mdct_win_float[win_idx + (4 & -(j & 1))]; \ \ ff_imdct36_float_ ## CPU1(out, buf, in, win); \ \ in += 18; \ buf++; \ out++; \ } \ }
Definition at line 185 of file mpegaudiodec_mmx.c.
| DECLARE_ALIGNED | ( | 16 | , | |
| static | float, | |||
| mdct_win_sse | ||||
| ) |
| void ff_four_imdct36_float_avx | ( | float * | out, | |
| float * | buf, | |||
| float * | in, | |||
| float * | win, | |||
| float * | tmpbuf | |||
| ) |
| void ff_four_imdct36_float_sse | ( | float * | out, | |
| float * | buf, | |||
| float * | in, | |||
| float * | win, | |||
| float * | tmpbuf | |||
| ) |
| void ff_imdct36_float_avx | ( | float * | out, | |
| float * | buf, | |||
| float * | in, | |||
| float * | win | |||
| ) |
| void ff_imdct36_float_sse | ( | float * | out, | |
| float * | buf, | |||
| float * | in, | |||
| float * | win | |||
| ) |
| void ff_imdct36_float_sse2 | ( | float * | out, | |
| float * | buf, | |||
| float * | in, | |||
| float * | win | |||
| ) |
| void ff_imdct36_float_sse3 | ( | float * | out, | |
| float * | buf, | |||
| float * | in, | |||
| float * | win | |||
| ) |
| void ff_imdct36_float_ssse3 | ( | float * | out, | |
| float * | buf, | |||
| float * | in, | |||
| float * | win | |||
| ) |
| void ff_mpadsp_init_mmx | ( | MPADSPContext * | s | ) |
1.5.8