comparison lcldec.c @ 9782:66922728d7f7 libavcodec

mszh decompression: add a special case for an all-0 mask, i.e. 32 uncompressed bytes in a row. About 15% faster mszh_decomp on an Atom N270 for http://samples.mplayerhq.hu/V-codecs/mszh-zlib/avimzsh_sample.avi
author reimar
date Sun, 31 May 2009 18:17:33 +0000
parents 05b6cba2c95b
children 21f3bbb20e42
comparison
equal deleted inserted replaced
9781:05b6cba2c95b 9782:66922728d7f7
100 destptr += cnt; 100 destptr += cnt;
101 } 101 }
102 maskbit >>= 1; 102 maskbit >>= 1;
103 if (!maskbit) { 103 if (!maskbit) {
104 mask = *srcptr++; 104 mask = *srcptr++;
105 while (!mask) {
106 if (destptr_end - destptr < 32 || srcptr_end - srcptr < 32) break;
107 memcpy(destptr, srcptr, 32);
108 destptr += 32;
109 srcptr += 32;
110 mask = *srcptr++;
111 }
105 maskbit = 0x80; 112 maskbit = 0x80;
106 } 113 }
107 } 114 }
108 115
109 return destptr - destptr_bak; 116 return destptr - destptr_bak;