mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-02-04 13:53:26 +00:00
Simplify co(), use memcpy/memmove and colmult() when useful.
Originally committed as revision 14355 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
a149c1a59f
commit
bf75ac57b8
@ -141,19 +141,15 @@ static void co(int n, int i, int j, const float *in, float *out, float *st1,
|
||||
float *st2, const float *table)
|
||||
{
|
||||
unsigned int x;
|
||||
const float *fp;
|
||||
float buffer1[37];
|
||||
float buffer2[37];
|
||||
float work[111];
|
||||
|
||||
/* rotate and multiply */
|
||||
fp = st1 + i;
|
||||
for (x=0; x < n + i + j; x++) {
|
||||
if (x == n + j)
|
||||
fp=in;
|
||||
st1[x] = *(fp++);
|
||||
work[x] = table[x] * st1[x];
|
||||
}
|
||||
memmove(st1 , st1 + i, (n + j)*sizeof(*st1));
|
||||
memcpy (st1 + n + j, in , i *sizeof(*st1));
|
||||
|
||||
colmult(work, table, st1, n + i + j);
|
||||
|
||||
prodsum(buffer1, work + n , i, n);
|
||||
prodsum(buffer2, work + n + i, j, n);
|
||||
|
Loading…
Reference in New Issue
Block a user