summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorVitor Sessak <vitor1001@gmail.com>2008-05-15 18:36:12 +0000
committerVitor Sessak <vitor1001@gmail.com>2008-05-15 18:36:12 +0000
commit4aa485a3f62c977a85165e429fb57682d69cf7c2 (patch)
tree172e521bc0cb5cf00f6f61d2f4a0a3bdd314d885 /libavcodec
parentbd0d10c2f1e2abe04515c1107ef32f5ba41e7b18 (diff)
Do not copy tables to a context var, use them directly
Originally committed as revision 13164 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/ra144.c23
1 files changed, 8 insertions, 15 deletions
diff --git a/libavcodec/ra144.c b/libavcodec/ra144.c
index 5303abe550..c63a71b870 100644
--- a/libavcodec/ra144.c
+++ b/libavcodec/ra144.c
@@ -48,9 +48,6 @@ typedef struct {
unsigned short int buffer_2[148];
unsigned short *sptr;
-
- signed short wavtable1[2304];
- unsigned short wavtable2[2304];
} Real144_internal;
static int ra144_decode_init(AVCodecContext * avctx)
@@ -62,9 +59,6 @@ static int ra144_decode_init(AVCodecContext * avctx)
glob->swapbuf1alt = glob->swapbuffers[2];
glob->swapbuf2alt = glob->swapbuffers[3];
- memcpy(glob->wavtable1, wavtable1, sizeof(wavtable1));
- memcpy(glob->wavtable2, wavtable2, sizeof(wavtable2));
-
return 0;
}
@@ -183,11 +177,11 @@ static int irms(short *data, int factor)
static void add_wav(Real144_internal *glob, int n, int f, int m1, int m2,
int m3, short *s1, short *s2, short *s3, short *dest)
{
- int a, b, c;
- short *ptr, *ptr2;
+ int a, b, c, i;
+ const short *ptr, *ptr2;
- ptr = glob->wavtable1 + n * 9;
- ptr2 = glob->wavtable2 + n * 9;
+ ptr = wavtable1 + n * 9;
+ ptr2 = wavtable2 + n * 9;
if (f != 0)
a = ((*ptr) * m1) >> ((*ptr2) + 1);
@@ -200,14 +194,13 @@ static void add_wav(Real144_internal *glob, int n, int f, int m1, int m2,
ptr++;
ptr2++;
c = ((*ptr) * m3) >> ((*ptr2) + 1);
- ptr2 = (ptr = dest) + BLOCKSIZE;
if (f != 0)
- while (ptr < ptr2)
- *(ptr++) = ((*(s1++)) * a + (*(s2++)) * b + (*(s3++)) * c) >> 12;
+ for (i=0; i < BLOCKSIZE; i++)
+ dest[i] = ((*(s1++)) * a + (*(s2++)) * b + (*(s3++)) * c) >> 12;
else
- while (ptr < ptr2)
- *(ptr++) = ((*(s2++)) * b + (*(s3++)) * c) >> 12;
+ for (i=0; i < BLOCKSIZE; i++)
+ dest[i] = ((*(s2++)) * b + (*(s3++)) * c) >> 12;
}