[SCM] libav/experimental: Simplify: do not overuse pointer aritmetic
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Jun 30 16:25:32 UTC 2013
The following commit has been merged in the experimental branch:
commit 96e8987e5bc98e27c8583b4db7e948e9654b2d95
Author: Vitor Sessak <vitor1001 at gmail.com>
Date: Thu Jul 17 23:48:53 2008 +0000
Simplify: do not overuse pointer aritmetic
Originally committed as revision 14271 to svn://svn.ffmpeg.org/ffmpeg/trunk
diff --git a/libavcodec/ra288.c b/libavcodec/ra288.c
index 28dca65..bc7d9a9 100644
--- a/libavcodec/ra288.c
+++ b/libavcodec/ra288.c
@@ -111,19 +111,16 @@ static int pred(const float *in, float *tgt, int n)
in--; // To avoid a -1 subtraction in the inner loop
for (x=1; x <= n; x++) {
- float *p1 = tgt + x - 1;
- float *p2 = tgt;
-
f1 = in[x+1];
for (y=0; y < x - 1; y++)
f1 += in[x-y]*tgt[y];
- *(p1--) = f2 = -f1/f0;
- for (y=x >> 1; y--;) {
- float temp = *p2 + *p1 * f2;
- *(p1--) += *p2 * f2;
- *(p2++) = temp;
+ tgt[x-1] = f2 = -f1/f0;
+ for (y=0; y < x >> 1; y++) {
+ float temp = tgt[y] + tgt[x-y-2]*f2;
+ tgt[x-y-2] += tgt[y]*f2;
+ tgt[y] = temp;
}
if ((f0 += f1*f2) < 0)
return 0;
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list