Here is the patch suggested by: unkaggregate, users sf net

Main reason is: deltas in interframes need scaling by 3/4 before applying.
Detailed description is at:
http://sourceforge.net/tracker/index.php?func=detail&aid=1222099&group_id=16082&atid=116082
He also mentioned some samples at:
http://www.nerdgrounds.com/indeo21_test/
patch posted to ffmpeg-devel by (Kostya: kostya shishkov, gmail com)

Originally committed as revision 4425 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Michael Niedermayer 20 years ago
parent 002c01a6f3
commit 32fe3ac0f9
  1. 4
      libavcodec/indeo2.c

@ -118,11 +118,11 @@ static int ir2_decode_plane_inter(Ir2Context *ctx, int width, int height, uint8_
c -= 0x7F;
out += c * 2;
} else { /* add two deltas from table */
t = dst[out] + (table[c * 2] - 128);
t = dst[out] + (((table[c * 2] - 128)*3) >> 2);
t= clip_uint8(t);
dst[out] = t;
out++;
t = dst[out] + (table[(c * 2) + 1] - 128);
t = dst[out] + (((table[(c * 2) + 1] - 128)*3) >> 2);
t= clip_uint8(t);
dst[out] = t;
out++;

Loading…
Cancel
Save