comparison dsputil.h @ 7261:032a49f033e8 libavcodec

simplify vorbis windowing
author lorenm
date Sun, 13 Jul 2008 14:56:01 +0000
parents cc55dd004819
children fc843d00867c
comparison
equal deleted inserted replaced
7260:3ec34b551aae 7261:032a49f033e8
61 void ff_h264_lowres_idct_add_c(uint8_t *dst, int stride, DCTELEM *block); 61 void ff_h264_lowres_idct_add_c(uint8_t *dst, int stride, DCTELEM *block);
62 void ff_h264_lowres_idct_put_c(uint8_t *dst, int stride, DCTELEM *block); 62 void ff_h264_lowres_idct_put_c(uint8_t *dst, int stride, DCTELEM *block);
63 63
64 void ff_vector_fmul_add_add_c(float *dst, const float *src0, const float *src1, 64 void ff_vector_fmul_add_add_c(float *dst, const float *src0, const float *src1,
65 const float *src2, int src3, int blocksize, int step); 65 const float *src2, int src3, int blocksize, int step);
66 void ff_vector_fmul_window_c(float *dst, const float *src0, const float *src1,
67 const float *win, float add_bias, int len);
66 void ff_float_to_int16_c(int16_t *dst, const float *src, long len); 68 void ff_float_to_int16_c(int16_t *dst, const float *src, long len);
67 69
68 /* encoding scans */ 70 /* encoding scans */
69 extern const uint8_t ff_alternate_horizontal_scan[64]; 71 extern const uint8_t ff_alternate_horizontal_scan[64];
70 extern const uint8_t ff_alternate_vertical_scan[64]; 72 extern const uint8_t ff_alternate_vertical_scan[64];
362 /* assume len is a multiple of 8, and arrays are 16-byte aligned */ 364 /* assume len is a multiple of 8, and arrays are 16-byte aligned */
363 void (*vector_fmul)(float *dst, const float *src, int len); 365 void (*vector_fmul)(float *dst, const float *src, int len);
364 void (*vector_fmul_reverse)(float *dst, const float *src0, const float *src1, int len); 366 void (*vector_fmul_reverse)(float *dst, const float *src0, const float *src1, int len);
365 /* assume len is a multiple of 8, and src arrays are 16-byte aligned */ 367 /* assume len is a multiple of 8, and src arrays are 16-byte aligned */
366 void (*vector_fmul_add_add)(float *dst, const float *src0, const float *src1, const float *src2, int src3, int len, int step); 368 void (*vector_fmul_add_add)(float *dst, const float *src0, const float *src1, const float *src2, int src3, int len, int step);
369 /* assume len is a multiple of 4, and arrays are 16-byte aligned */
370 void (*vector_fmul_window)(float *dst, const float *src0, const float *src1, const float *win, float add_bias, int len);
367 371
368 /* C version: convert floats from the range [384.0,386.0] to ints in [-32768,32767] 372 /* C version: convert floats from the range [384.0,386.0] to ints in [-32768,32767]
369 * simd versions: convert floats from [-32768.0,32767.0] without rescaling and arrays are 16byte aligned */ 373 * simd versions: convert floats from [-32768.0,32767.0] without rescaling and arrays are 16byte aligned */
370 void (*float_to_int16)(int16_t *dst, const float *src, long len); 374 void (*float_to_int16)(int16_t *dst, const float *src, long len);
375 void (*float_to_int16_interleave)(int16_t *dst, const float *src, long len, int channels);
371 376
372 /* (I)DCT */ 377 /* (I)DCT */
373 void (*fdct)(DCTELEM *block/* align 16*/); 378 void (*fdct)(DCTELEM *block/* align 16*/);
374 void (*fdct248)(DCTELEM *block/* align 16*/); 379 void (*fdct248)(DCTELEM *block/* align 16*/);
375 380