SVC2 比 SVC1在压缩效率上有了很大的提升,相比SVC1,SVC2有下列SVC1没有的优点:
1.SVC2支持16bit RGB555和RGB565,而SVC1只支持24bit的RGB bitmap
这样SVC2相比SVC1,数据量减少了1/3
2.SVC2采用了颜色表,颜色表是一个长度是128的颜色数组,Flash decoder里面有对应默认的颜色表,相比SVC1而言,
SVC2只要求传一个byte(8个bit)的index来代表一个颜色,显然数据量减少了一半,而这些128长度的颜色表能够表达大多数颜色,因此命中后的颜色,数据大小将减少一半。
int z[] = {
0, 0x333333, 0x666666, 0x999999, 0xcccccc, 0xffffff, 0x330000, 0x660000, 0x990000, 0xcc0000,
0xff0000, 13056, 26112, 39168, 52224, 65280, 51, 102, 153, 204,
255, 0x333300, 0x666600, 0x999900, 0xcccc00, 0xffff00, 13107, 26214, 39321, 52428,
65535, 0x330033, 0x660066, 0x990099, 0xcc00cc, 0xff00ff, 0xffff33, 0xffff66, 0xffff99, 0xffffcc,
0xff33ff, 0xff66ff, 0xff99ff, 0xffccff, 0x33ffff, 0x66ffff...}
3.SVC2在block变化区域的对比上粒度更细