Mercurial > libavcodec.hg
comparison dsputil.h @ 10104:0fa3d21b317e libavcodec
SSE optimized vector_clipf(). 10% faster TwinVQ decoding.
author | vitor |
---|---|
date | Thu, 27 Aug 2009 14:49:36 +0000 |
parents | 7a116de63777 |
children | 7775f6627612 |
comparison
equal
deleted
inserted
replaced
10103:2066cbe806ef | 10104:0fa3d21b317e |
---|---|
394 void (*vector_fmul_add_add)(float *dst, const float *src0, const float *src1, const float *src2, int src3, int len, int step); | 394 void (*vector_fmul_add_add)(float *dst, const float *src0, const float *src1, const float *src2, int src3, int len, int step); |
395 /* assume len is a multiple of 4, and arrays are 16-byte aligned */ | 395 /* assume len is a multiple of 4, and arrays are 16-byte aligned */ |
396 void (*vector_fmul_window)(float *dst, const float *src0, const float *src1, const float *win, float add_bias, int len); | 396 void (*vector_fmul_window)(float *dst, const float *src0, const float *src1, const float *win, float add_bias, int len); |
397 /* assume len is a multiple of 8, and arrays are 16-byte aligned */ | 397 /* assume len is a multiple of 8, and arrays are 16-byte aligned */ |
398 void (*int32_to_float_fmul_scalar)(float *dst, const int *src, float mul, int len); | 398 void (*int32_to_float_fmul_scalar)(float *dst, const int *src, float mul, int len); |
399 void (*vector_clipf)(float *dst /* align 16 */, float *src /* align 16 */, float min, float max, int len /* align 16 */); | |
399 | 400 |
400 /* C version: convert floats from the range [384.0,386.0] to ints in [-32768,32767] | 401 /* C version: convert floats from the range [384.0,386.0] to ints in [-32768,32767] |
401 * simd versions: convert floats from [-32768.0,32767.0] without rescaling and arrays are 16byte aligned */ | 402 * simd versions: convert floats from [-32768.0,32767.0] without rescaling and arrays are 16byte aligned */ |
402 void (*float_to_int16)(int16_t *dst, const float *src, long len); | 403 void (*float_to_int16)(int16_t *dst, const float *src, long len); |
403 void (*float_to_int16_interleave)(int16_t *dst, const float **src, long len, int channels); | 404 void (*float_to_int16_interleave)(int16_t *dst, const float **src, long len, int channels); |