1The Smoke Codec 2--------------- 3 4This is a very simple compression algorithm I was toying with when doing a 5Java based player. Decoding a JPEG in Java has acceptable speed so this codec 6tries to exploit that feature. The algorithm first compares the last and the 7new image and finds all 16x16 blocks that have a squared difference bigger than 8a configurable threshold. Then all these blocks are compressed into an NxM JPEG. 9The quality of the JPEG is inversely proportional to the number of blocks, this 10way, the picture quality degrades with heavy motion scenes but the bitrate stays 11more or less constant. 12Decoding decompresses the JPEG and then updates the old picture with the new 13blocks. 14 15 16TODO: 17---- 18- make format extensible 19- motion vectors 20- do some real bitrate control 21